當(dāng)前位置:首頁 >  站長 >  建站經(jīng)驗(yàn) >  正文

滲透測試攻與防之sql延伸注入

 2020-11-25 10:16  來源: A5用戶投稿   我來投稿 撤稿糾錯

  域名預(yù)訂/競價(jià),好“米”不錯過

幾年前,SQL注入在世界范圍內(nèi)很流行,但現(xiàn)在,SQL注入仍然是最流行的攻擊方法之一,開發(fā)人員為此頭疼。當(dāng)然主要是因?yàn)樽⑷牍舻撵`活性,一個(gè)目的,多條語句,多種編寫方法。SQL注入可以分為工具和手工兩種。由于自動化,工具通常比手動注入效率高得多,但與手動注入相比,它們受到限制,因?yàn)樗鼈儧]有針對性。

所有的輸入都可能是有害的,有參數(shù)的地方都可能存在SQL注入。但是由于瀏覽器的限制,http頭中的一些隱藏鏈接、API調(diào)用和參數(shù)往往被忽略。那么如何進(jìn)行全面的SQL注入挖掘呢?在滲透測試中,無論注入工具多么強(qiáng)大,都會有局限性,手動注入可以解決這個(gè)弱點(diǎn)。當(dāng)然,手動注入需要滲透者對數(shù)據(jù)庫的語法有一定的了解。但是由于SQL注入的靈活性和多樣性,如果詳細(xì)討論的話,恐怕可以寫成單本書了。在這里,作者將選擇最具代表性的例子進(jìn)行論證。

注入遇到的一個(gè)常見情況是注入得到的加密密文無法求解。為了解決這個(gè)問題,這里解釋幾種可行的方法。(1)使用國外的搜索引擎,往往會有意想不到的收獲,最常見的是Google。(2)用Whois查出管理員郵箱,然后發(fā)郵件通知管理員更改密碼。郵件內(nèi)容無非是“我們是XXX檢測中心,你的網(wǎng)站有風(fēng)險(xiǎn)。請立即更改管理員密碼……”。(3)分析Cookie。有時(shí)加密的密文會出現(xiàn)在cookies中。這種情況下,cookies中的密文可以直接被管理員的密文替換。(4)在特定的注入環(huán)境中,原始密文有時(shí)可以被新密文替換。當(dāng)然這種方法的執(zhí)行條件比較苛刻,實(shí)踐中很少遇到。(5)使用密碼檢索功能。使用秘密安全問題來檢索密碼是很常見的。在這種情況下,可以注入秘密安全問題的答案,然后使用密碼檢索功能成功登錄目標(biāo)帳戶。(6)邏輯缺陷。比如一些登錄功能、修改功能、密碼檢索功能等都是以密文的形式直接在數(shù)據(jù)包中傳輸?shù)摹_@時(shí)可以用密文代替,這樣就可以登錄并更改密碼了。

如何防護(hù)SQL注入攻擊呢?

1.對代碼進(jìn)行過濾非法符號如之類的,對一些腳本標(biāo)簽scrpt以及img或frame都進(jìn)行過濾和替換。

2.對一些函數(shù)變量直接進(jìn)行強(qiáng)制定義,比如金額函數(shù)這里直接限定只能寫入正整數(shù)類型的數(shù)值,那么其他的參數(shù)像姓名的話可以直接限定到只允許寫入中文和英文的數(shù)值,其他的以此類推。

3.對一些帶入數(shù)據(jù)庫查詢和更新的語句,一定要看看get或post過來的數(shù)據(jù)參數(shù)是否是直接把參數(shù)類型鎖定好了的,防止被注入惡意語句導(dǎo)致被攻擊。

4.如果對著代碼方面的問題不懂得話可以到網(wǎng)站安全公司去尋求幫助,國內(nèi)如SINESAFE,鷹盾安全,綠盟,啟明星辰等等。

申請創(chuàng)業(yè)報(bào)道,分享創(chuàng)業(yè)好點(diǎn)子。點(diǎn)擊此處,共同探討創(chuàng)業(yè)新機(jī)遇!

相關(guān)標(biāo)簽
滲透測試
網(wǎng)站漏洞

相關(guān)文章

熱門排行

信息推薦