<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    內網滲透 | 利用 RDP 協議搭建 Socks5 代理隧道

    VSole2021-08-26 03:03:38

    前言

    如今,在很多組織機構內部,針對 DMZ 或隔離網絡區域內的計算機設備,為了限制其它接入端口風險,通常只允許這些設備開啟 3389 端口,使用遠程桌面來進行管理維護。那么我們能不能利用這個 3389 端口的 RDP 服務建立起一條通向內網的代理隧道呢?當然可以,下面就引出我們今天的主角 —— SocksOverRDP。

    SocksOverRDP

    ?項目地址:https://github.com/nccgroup/SocksOverRDP

    SocksOverRDP 可以將 SOCKS 代理的功能添加到遠程桌面服務,它使用動態虛擬通道,使我們能夠通過開放的 RDP 連接進行通信,而無需在防火墻上打開新的套接字、連接或端口。此工具在 RDP 協議的基礎上實現了 SOCKS 代理功能,就像 SSH 的 -D 參數一樣,在建立遠程連接后,即可利用 RDP 協議實現代理功能。

    該工具可以分為兩個部分:

    image-20210805164336410

    ?第一部分是一個 .dll 文件,需要在 RDP 連接的客戶端上進行注冊,并在每次運行時將其加載到遠程桌面客戶端 mstsc 的上下文運行環境中。

    ?第二部分是一個 .exe 可執行文件,它是服務端組件,需要上傳到 RDP 連接的服務器并執行。

    以下是該工具的運作原理:

    If the DLL is properly registered, it will be loaded by the mstsc.exe (Remote Desktop Client) or Citrix Receiver every time it is started. When the server executable runs on the server side, it connects back to the DLL on a dynamic virtual channel, which is a feature of the Remote Desktop Protocol. After the channel is set up, a SOCKS Proxy will spin up on the client computer, by default on 127.0.0.1:1080. This service can be used as a SOCKS5 Proxy from any browser or tool.

    大致原理是,當 SocksOverRDP-Plugin.dll 在 RDP 客戶端上被正確注冊后,每次啟動遠程桌面時都會由 mstsc 加載。接著,當 SocksOverRDP-Server.exe 被上傳到 RDP 服務端上傳并執行后 ,SocksOverRDP-Server.exe 會在動態虛擬通道上回連 SocksOverRDP-Plugin.dll,這是遠程桌面協議的一個功能。虛擬通道設置完成后,SOCKS 代理將在 RDP 客戶端計算機上啟動,默認為 127.0.0.1:1080。此服務可用作任何瀏覽器或工具的 SOCKS5 代理。并且服務器上的程序不需要服務器端的任何特殊特權,還允許低特權用戶打開虛擬通道并通過連接進行代理。

    通過 SocksOverRDP 搭建 SOCKS5 代理

    測試環境如下:

    image-20210805190918631

    右側為一個內網環境,其中 Windows Server 2012 是一個 Web 服務器,有兩個網卡,分別連通內外網。假設此時攻擊者已經通過滲透手段拿下了這臺 Web 服務器,需要設置代理進入內網繼續對內網進行橫向滲透。但是由于防火墻的規則等原因,只允許 TCP/UDP 3389 端口可以進行通信,所以我們只能嘗試利用用 RDP 協議來建立通訊隧道。

    攻擊端

    在攻擊機上需要安裝注冊 SocksOverRDP-Plugin.dll。首先我們將 SocksOverRDP-Plugin.dll 放置到攻擊機的任何目錄中,但是為了方便我們可以將其放置到 %SYSROOT%\system32\ 或 %SYSROOT%\SysWoW64\ 目錄下。

    然后使用以下命令對 SocksOverRDP-Plugin.dll 進行安裝注冊:

    regsvr32.exe SocksOverRDP-Plugin.dll    # 注冊
    # regsvr32.exe /u SocksOverRDP-Plugin.dll    取消注冊
    

    image-20210805171250365

    如上圖所示,注冊成功。但是由于 SocksOverRDP 建立的 SOCKS5 代理是默認監聽在 127.0.0.1:1080 上的,所以只能從攻擊機本地使用,為了讓攻擊者的 Kali 也能使用搭建在攻擊機 Windows 10 上的 SOCKS5 代理,我們需要修改其注冊表,將 IP 從 127.0.0.1 改為 0.0.0.0。注冊表的位置為:

    HKEY_CURRENT_USER\SOFTWARE\Microsoft\Terminal Server Client\Default\AddIns\SocksOverRDP-Plugin
    

    image-20210805183835850

    然后啟動遠程桌面客戶端 mstsc.exe 連接目標 Web 服務器 Windows Server 2012:

    image-20210805184009799

    如上圖所示,彈出了一個提示說 SocksOverRDP 成功啟動,當服務端的可執行文件運行后即可在攻擊機的 1080 端口上啟動 SOCKS5 代理服務。

    服務端

    遠程桌面連接成功后,將服務端組件 SocksOverRDP-Server.exe 上傳到 Windows Server 2012 上:

    image-20210805172727184

    直接運行 SocksOverRDP-Server.exe 即可:

    image-20210805172901544

    此時便成功搭建了一個 SOCKS5 代理隧道,查看攻擊機 Windows 10 的端口連接狀態發現已經建立連接:

    image-20210805173743464

    然后在攻擊機 Kali 上配置好 proxychains:

    image-20210805184447817

    此時便可以通過代理訪問到內網的主機 DC 了。如下所示,成功打開了 DC 的遠程桌面:

    proxychains4 rdesktop 192.168.93.30
    

    image-20210805184342519

    探測內網主機 DC 的端口開放情況:

    proxychains4 nmap -sT -Pn 192.168.93.30 -p 445
    

    image-20210805185347989

    先該主機開啟了 445 端口,我們可以直接用 smbexec.py 連接:

    proxychains4 python3 smbexec.py whoamianony/administrator:Whoami2021@192.168.93.30
    

    image-20210805190126459

    如上圖所示,成功拿下內網主機 DC。

    socks5socks5代理
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    云函數簡介 云函數是騰訊云為企業和開發者們提供的無服務器執行環境,可以無需購買和管理服務器的情況下運行代碼。只需使用平臺支持的語言編寫核心代碼并設置代碼運行的條件,即可在騰訊云基礎設施上彈性、安全地運行代碼。SCF是實時文件處理和數據處理等場景下理想的計算平臺。服務端配置云函數基礎配置選擇自定義創建,地域自選,部署模式,代碼部署,運行環境Python3.6,其余默認即可。
    在內網橫向過程中,經常會用frp、狗洞、nps等工具,在內網環境中搭建一個反向socks5代理,方便紅隊人員開展內網滲透工作。socksProxyVersion版本號是5或者是4,默認是5版本,也就是Socks5代理,這里也可以指定。
    以上兩種代理方式雖均能實現內網穿透的目的,但是代理質量相對來說并不穩定,難以滿足內網滲透的需求。FRP反向代理 FRP 的 中文官方文檔 可了解其作用和用法。
    防火墻出網探測工具
    2022-01-28 06:27:16
    TFirewall是測試已控主機哪些端口可以出網及建立內網socks5代理的工具.工具主體使用golang開發,工具包含客戶端及服務端,適用于windows,linux,x64,x86.
    如今,在很多組織機構內部,針對 DMZ 或隔離網絡區域內的計算機設備,為了限制其它接入端口風險,通常只允許這些設備開啟 3389 端口,使用遠程桌面來進行管理維護。那么我們能不能利用這個 3389 端口的 RDP 服務建立起一條通向內網的代理隧道呢?當然可以,下面就引出我們今天的主角 —— SocksOverRDP。
    如今,在很多組織機構內部,針對 DMZ 或隔離網絡區域內的計算機設備,為了限制其它接入端口風險,通常只允許這些設備開啟 3389 端口,使用遠程桌面來進行管理維護。
    SSH代理轉發
    2022-03-04 22:03:04
    瀏覽器開啟代理SOCK5可以看到IP發生變化四、SSH本地轉發網絡拓撲圖1.kali能與邊界服務器互通。這里用ubuntu作為邊界服務器sudo apt-get install openssh-server //安裝SSH服務
    此工具是因為看到了Dliv3師傅的Venom工具后,想著自己也寫一個屬于自己的多級代理工具,故而利用閑暇時間編寫的(是的,我又在重復造輪子), 在此感謝Dliv3師傅 XD。 廢話不多說,我把我的README先搬過來給大家瞅瞅 Stowaway是一個利用go語言編寫的多級代理工具用戶可使用此程序將外部流量通過多個節點代理至內網,并實現管理功能 此工具僅限于安全研究和教學,用戶承擔因使用此
    nps是一款輕量級、高性能、功能強大的內網穿透反向代理服務器。目前支持tcp、udp流量轉發,可支持任何tcp、udp上層協議(訪問內網網站、本地支付接口調試、ssh訪問、遠程桌面,內網dns解析等等……),此外還支持內網http代理、內網socks5代理、p2p等,并帶有功能強大的web管理端。
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类