數(shù)據(jù)庫(kù)安全之MSSQL數(shù)據(jù)庫(kù)防注入
MSSQL作為應(yīng)用最廣泛的網(wǎng)站數(shù)據(jù)庫(kù),其安全防護(hù)也是至關(guān)重要的。MSSQL數(shù)據(jù)庫(kù)最大的威脅就來(lái)源于注入攻擊,MSSQL數(shù)據(jù)庫(kù)防注入成為了網(wǎng)站安全管理員應(yīng)該注意的問(wèn)題,本篇文章就將介紹MSSQL數(shù)據(jù)庫(kù)防注入的幾個(gè)技巧。
MSSQL數(shù)據(jù)庫(kù)防注入之慎重選擇建站系統(tǒng)
通過(guò)站點(diǎn)系統(tǒng)建立一個(gè)Web站點(diǎn)是非常容易的,但是某些站點(diǎn)系統(tǒng)代碼編寫(xiě)不夠嚴(yán)謹(jǐn),考慮不周,變量過(guò)濾不嚴(yán)等使得可被攻擊者利用。因此,選擇一款安全的站點(diǎn)系統(tǒng)是至關(guān)重要的。當(dāng)然,沒(méi)有百分之百安全的站點(diǎn)系統(tǒng)。管理員如果懂代碼的話(huà)可以進(jìn)行檢測(cè)分析,看看是否有漏洞。另外,可以扮演入侵者進(jìn)行入侵檢測(cè)。最后,及時(shí)打補(bǔ)丁也是非常重要的。
MSSQL數(shù)據(jù)庫(kù)防注入之最小權(quán)限連接數(shù)據(jù)庫(kù)
Web站點(diǎn)連接數(shù)據(jù)庫(kù)都是通過(guò)相應(yīng)的帳戶(hù)進(jìn)行連接,在這些帳戶(hù)中SA是權(quán)限最大的也是最危險(xiǎn)的。數(shù)據(jù)庫(kù)不要用SA帳戶(hù),使用SA帳戶(hù)連接數(shù)據(jù)庫(kù)對(duì)服務(wù)器來(lái)說(shuō)就是一場(chǎng)災(zāi)難。一般來(lái)說(shuō)可以使用DB_OWNER權(quán)限帳戶(hù)連接數(shù)據(jù)庫(kù),如果可以正常運(yùn)行,使用public用戶(hù)最安全的。設(shè)置成dbo權(quán)限連接數(shù)據(jù)庫(kù)之后,入侵者基本就只能通過(guò)猜解用戶(hù)名和密碼或者是差異備份來(lái)獲得webshell了,對(duì)于前者,我們可以通過(guò)加密和修改管理后臺(tái)的默認(rèn)登陸地址來(lái)防御。對(duì)于差異備份,我們知道它的條件是有備份的權(quán)限,并且要知道web的目錄。這樣被攻擊的可能性大大地降低。
MSSQL數(shù)據(jù)庫(kù)防注入之刪除危險(xiǎn)的存儲(chǔ)過(guò)程
MSSQL數(shù)據(jù)庫(kù)系統(tǒng)集成了較多的存儲(chǔ)過(guò)程,這些命令集方便了我們的操作當(dāng)然也為攻擊者入侵Web提供了便利。因此我們要根據(jù)需要?jiǎng)h除某些在Web中用不到的,并且可被攻擊者利用才存儲(chǔ)過(guò)程。比如xp_regread和xp_dirtree這兩個(gè)存儲(chǔ)過(guò)程可被攻擊者用來(lái)讀取注冊(cè)表信息和列目錄,我們可以刪除。另外,xp_cmdshell可被用來(lái)執(zhí)行DOS命令比如建立系統(tǒng)帳戶(hù)等等,是非常危險(xiǎn)的。sp_makwebtask過(guò)程,可以讀取SQL SELECT命令所得到的結(jié)果到表格形式的HTML文件中。這些比較危險(xiǎn)可被攻擊者利用的存儲(chǔ)過(guò)程我們可以刪除。比如刪除xp_cmdshell可以執(zhí)行“exec master..sp_dropextendedproc xp_cmdshell”,其它的類(lèi)似。
MSSQL數(shù)據(jù)庫(kù)防注入之修改錯(cuò)誤頁(yè),誤導(dǎo)攻擊者
SQL注入入侵是根據(jù)IIS給出的ASP錯(cuò)誤提示信息來(lái)入侵的,如果我們把IIS設(shè)置成不管出什么樣的ASP錯(cuò)誤,只給出一種錯(cuò)誤提示信息,即http 500錯(cuò)誤,那么攻擊者就無(wú)法獲得敏感信息實(shí)施入侵了。打開(kāi)IIS管理器選擇相應(yīng)的Web站點(diǎn)打開(kāi)其站點(diǎn)屬性窗口,在“自定義錯(cuò)誤”選項(xiàng)卡下選擇“500:100”點(diǎn)擊“編輯”打開(kāi)“編輯自定義錯(cuò)誤屬性”窗口,消息類(lèi)型選擇“文件”,然后通過(guò)瀏覽定位到自己構(gòu)造的錯(cuò)誤頁(yè),比如“c:\test.htm”,然后確定即可。
【編輯推薦】