SQL Server服務(wù)器出現(xiàn)漏洞如何應(yīng)對?
以下的文章主要描述的是SQL Server服務(wù)器中***漏洞正確解決方案,漏洞擴展,xp_dirtree儲存過程事前,發(fā)現(xiàn)漏洞是由于sql服務(wù)器造成的,于是就用阿d的sql注入工具對自己SQL Server服務(wù)器的網(wǎng)站進行注入。
偶然發(fā)現(xiàn)了使用mssql的網(wǎng)站浸染可以利用sql注入的形式得到整個服務(wù)漏洞擴展:xp_dirtree儲存過程。
事前:最近發(fā)現(xiàn)一個漏洞是sql服務(wù)器造成的,前幾天正好沒有什么事情,就用阿d的sql注入工具對自己服務(wù)器的網(wǎng)站進行注入,偶然發(fā)現(xiàn)了使用mssql的網(wǎng)站浸染可以利用sql注入的形式得到整個服務(wù)器上所有目錄(我的服務(wù)器作了安全設(shè)置的)依然可以看見。
然后在服務(wù)器上安裝了一個抓包工具對sql server進行抓包發(fā)現(xiàn),使用工具連接sql漏洞xp_dirtree讀取目錄,可獲得整個SQL Server服務(wù)器目錄,如列出c盤目錄他會把你c盤下的所有目錄列出來,這樣是很不安全的,目前是只可以查處目錄上穿東西,大家可以設(shè)想一下,如果我隨意修改一個boot.ini覆蓋了c盤的boot.ini是一個什么概念,呵呵首先可以導(dǎo)致服務(wù)其癱瘓,無法讀取系統(tǒng)。
解決方案:刪除xp_dirtree,命令是sp_dropextendedproc 'xp_dirtree' 刪除了以上的那個組建您在使用阿d或者任何的sql注入工具都是白搭,在這里也給大家提供一些其他sql危險的儲存過程,建議刪除。[注意:所有刪除sql儲存過程的操作必須在mssql查詢分析器里操作,下面哪些前面的是儲存過程的名字后面是刪除儲存過程的命令]
先來列出危險的內(nèi)置存儲過程:
- xp_cmdshell sp_dropextendedproc 'xp_cmdshell'
- xp_regaddmultistring sp_dropextendedproc 'xp_regaddmultistring'
- xp_regdeletekey sp_dropextendedproc 'xp_regdeletekey'
- xp_regdeletevalue sp_dropextendedproc 'xp_regdeletevalue'
- xp_regenumkeys sp_dropextendedproc 'xp_regenumkeys'
- xp_regenumvalues sp_dropextendedproc 'xp_regenumvalues'
- xp_regread sp_dropextendedproc 'xp_regread'
- xp_regremovemultistring sp_dropextendedproc 'xp_regremovemultistring'
- xp_regwrite sp_dropextendedproc 'xp_regwrite'
ActiveX腳本:
- sp_OACreate sp_dropextendedproc 'sp_OACreate'
- sp_OADestroy sp_dropextendedproc 'sp_OADestroy'
- sp_OAMethod sp_dropextendedproc 'sp_OAMethod'
- sp_OAGetProperty sp_dropextendedproc 'sp_OAGetProperty'
- sp_OAGetErrorInfo sp_dropextendedproc 'sp_OAGetErrorInfo'
- sp_OAStop sp_dropextendedproc 'sp_OAStop'
特別注意:刪除某些存儲過程可能會導(dǎo)致網(wǎng)站的某些功能不能用,因此,建議先在master數(shù)據(jù)庫的擴展存儲過程中把Public組的EXEC權(quán)限去掉,這樣比較保險,如果沒問題再刪除,有問題則改需要改回去。 以上的相關(guān)內(nèi)容就是對SQL Server服務(wù)器***漏洞解決方法的介紹,望你能有所收獲。
【編輯推薦】
- SQL Server 2005中synonyms的正確用法
- SQL Server快照功能以及其查詢操作
- SQL Server獲取表的容量很簡單!
- SQL Server排序遇到NULL,不怕不帕!
- SQL Server 2005兩種快照隔離機制的不同之處