1.通過互聯(lián)網(wǎng)直接連接
這些連接可以用來攻擊沒有防火墻保護(hù)、全世界都可以看到和訪問的SQL服務(wù)器。DShield公司的端口報告顯示了有多少系統(tǒng)在那里等待遭受攻擊。我不理解允許從互聯(lián)網(wǎng)直接訪問這種重要的服務(wù)器的理由是什么。但是,我在我的評估中仍發(fā)現(xiàn)了這種安全漏洞。我們都記得SQL Slammer蠕蟲對那樣多的有漏洞的SQL服務(wù)器系統(tǒng)造成的影響。而且,這些直接的攻擊能夠?qū)е戮芙^服務(wù)攻擊、緩存溢出和其它攻擊。
2.安全漏洞掃描
安全漏洞掃描通常可以基本的操作系統(tǒng)、網(wǎng)絡(luò)應(yīng)用程序或者數(shù)據(jù)庫系統(tǒng)本身的弱點(diǎn)。從沒有使用SQL安全補(bǔ)丁、互聯(lián)網(wǎng)信息服務(wù)(IIS)設(shè)置弱點(diǎn)到SNMP(簡單網(wǎng)絡(luò)管理協(xié)議)漏洞等任何事情都能夠被攻擊者發(fā)現(xiàn),并且導(dǎo)致數(shù)據(jù)庫被攻破。這些壞蛋也需使用開源軟件、自己制作的工具軟件或者商業(yè)性工具軟件。有些技術(shù)高手甚至能夠在命令提示符下實(shí)施手工黑客攻擊。為了節(jié)省時間,我建議使用商業(yè)性的安全漏洞評估工具,如Qualys公司的QualysGuard(用于普通掃描)、SPI Dynamics公司的WebInspect(用于網(wǎng)絡(luò)應(yīng)用程序掃描)和下一代安全軟件公司的“NGSSquirrel for SQL Server”(用于數(shù)據(jù)庫掃描)。這些工具軟件很容易使用,提供了最廣泛的評估,并且可以提供最佳的結(jié)果。圖1顯示了你可能發(fā)現(xiàn)的一些SQL注入安全漏洞。

圖1:使用WebInspect發(fā)現(xiàn)的普通SQL注入安全漏洞。
3.列舉SQL服務(wù)器解析服務(wù)
在UDP端口1434上運(yùn)行,這能讓你發(fā)現(xiàn)隱蔽的數(shù)據(jù)庫實(shí)例和更深入地探查這個系統(tǒng)。Chip Andrews的“SQLPing v 2.5”是一個極好的工具,可用來查看SQL服務(wù)器系統(tǒng)并且確定版本編號。你的數(shù)據(jù)庫實(shí)例即使不監(jiān)聽這個默認(rèn)的端口,這個工具軟件也能發(fā)揮作用。此外,當(dāng)過分長的SQL服務(wù)器請求發(fā)送到UDP端口1434的廣播地址的時候,會出現(xiàn)緩存溢出問題。
4.破解SA口令
攻擊者還可以通過破解SA口令的方法進(jìn)入SQL服務(wù)器數(shù)據(jù)庫。遺憾的是,在許多情況下不需要破解口令,因?yàn)闆]有分配口令。因此,可以使用上面提到的一種小工具SQLPing。Application安全公司的AppDetective和NGS軟件公司的NGSSQLCrack等商業(yè)性工具軟件也有這種功能。
5.直接利用安全漏洞攻擊
使用圖1顯示的Metasploit等工具軟件可以直接實(shí)施攻擊。這種軟件的商業(yè)性軟件“CANVAS”和“CORE IMPACT”等能夠利用在正常的安全漏洞掃描過程中發(fā)現(xiàn)的安全漏洞實(shí)施攻擊。這是非常有效的攻擊手段,攻擊者可利用這種手段突破系統(tǒng)、從事代碼注入或者取得非經(jīng)授權(quán)的命令行訪問權(quán)限。

6.SQL注入
SQL注入攻擊可以通過沒有正確驗(yàn)證用戶輸入的前端網(wǎng)絡(luò)應(yīng)用程序?qū)嵤0⊿QL指令在內(nèi)的異常的SQL查詢可以直接注入到網(wǎng)絡(luò)URL(統(tǒng)一資源定位符)中,并且返回一些錯誤通知,執(zhí)行一些指令等等。如果你有時間的話,這些攻擊可以手工實(shí)施。我一旦發(fā)現(xiàn)一個服務(wù)器有一個潛在的SQL注入安全漏洞,我喜歡使用一種自動的工具深入研究這個漏洞。這些工具包括圖3顯示的SPI Dynamics公司的SQL注入器等。

圖3:SPI Dynamics公司的SQL注入器自動實(shí)施SQL注入過程。
7.SQL盲注攻擊
?
?
這些攻擊以標(biāo)準(zhǔn)的SQL注入攻擊相同的基本方式利用網(wǎng)絡(luò)應(yīng)用程序和后端SQL服務(wù)器的安全漏洞。最大的區(qū)別是攻擊者收不到以錯誤通知形式從網(wǎng)絡(luò)服務(wù)器發(fā)回的信息。
|
圖4:Absinthe工具在實(shí)施SQL盲注攻擊測試。
8.對系統(tǒng)實(shí)施逆向工程
逆向工程的方法可以查找軟件的安全漏洞和內(nèi)存損壞弱點(diǎn)等漏洞。在利用軟件安全漏洞方面,可以參考Greg Hoglund和Gary McGraw合著的“如何破解代碼”一書,你可以發(fā)現(xiàn)有關(guān)逆向工程方法的一些討論。
9.Google hacks
Google hacks利用Google搜索引擎不同尋常的力量搜出可公開訪問的系統(tǒng)泄漏出來的SQL服務(wù)器的錯誤,如“Incorrect syntax near”(附近語法錯誤)。Johnny Long編寫的“Google Hacking Database” 數(shù)據(jù)庫 中一些Google的查詢項(xiàng)目。(查看錯誤信息和包含口令的文件部分)。黑客能夠使用Google找到口令、網(wǎng)絡(luò)服務(wù)器中的安全漏洞、基本的 操作系統(tǒng) 、公開提供的程序以及其它能夠用來攻破SQL服務(wù)器系統(tǒng)的東西。通過Google網(wǎng)站的“site:”操作符把這些查詢結(jié)合在一起同場可以發(fā)現(xiàn)你想不到能夠找到的東西。
10.熟讀網(wǎng)站源代碼
源代碼還能夠暴露可能導(dǎo)致SQL服務(wù)器被攻破的信息。特別是開發(fā)人員為了簡化身份識別過程把SQL服務(wù)器身份識別信息存儲在ASP腳本中的情況下更是如此。手工評估或者Google能夠在一瞬間就發(fā)現(xiàn)這個信息。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
