程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> 如何修改SQL SERVER內置存儲過程

如何修改SQL SERVER內置存儲過程

編輯:關於SqlServer

       SQLSERVER估計是為了安裝或者其它方面,它內置了一批危險的存儲過程。能讀到注冊表信息,能寫入注冊表信息,能讀磁盤共享信息等等……各位看到這兒,心裡可能會在想,我的網站中有其它的代碼,又不像查詢分析器那樣能直接將結果輸出。給你這個權限,也不能怎麼樣,還是看不到信息。如果各位這樣想就大錯特錯了。提示一下,如果攻擊者有CREATE TABLE的權限,那麼創建一個臨時表,然後將信息INSERT到表中,然SELECT出來,接著跟數字進行比較,讓SQL SERVER報錯,那麼結果就全出來了……所以我們要報著寧錯殺,不放過的態度進行修補。

      先來列出危險的內置存儲過程:

      xp_cmdshell

      xp_regaddmultistring

      xp_regdeletekey

      xp_regdeletevalue

      xp_regenumkeys

      xp_regenumvalues

      xp_regread

      xp_regremovemultistring

      xp_regwrite

      ActiveX自動腳本:

      sp_OACreate

      sp_OADestroy

      sp_OAMethod

      sp_OAGetProperty

      sp_OASetProperty

      sp_OAGetErrorInfo

      sp_OAStop

      以上各項全在我們封殺之列,例如xp_cmdshell屏蔽的方法為:

      sp_dropextendedproc 'xp_cmdshell'

      如果需要的話,再用

      sp_addextendedproc 'xp_cmdshell', 'xpsql70.dll'

      進行恢復。如果你不知道xp_cmdshell使用的是哪個.dll文件的話,可以使用

      sp_helpextendedproc xp_cmdshel

      來查看xp_cmdshell使用的是哪個動態聯接庫。另外,將xp_cmdshell屏蔽後,我們還需要做的步驟是將xpsql70.dll文件進行改名,以防止獲得SA的攻擊者將它進行恢復。

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved