portmap 埠轉發

語言: CN / TW / HK

前面我們已經學習了ssh埠轉發、防火牆埠轉發、 rinetd 埠轉發、nc埠轉發、socat埠轉發,今天我們來學習portmap 埠轉發,portmap 是Linux下的LCX,那麼自然先來回顧一下windows下的LCX:「 ailx10:Lcx埠轉發初探 」,這個實驗當初真的耗費很大心血,真的不容易,現在複習一遍,感覺非常簡單,恐怕這就叫成長吧,文章末尾有彩蛋~

實驗環境:

  • macos:192.168.199.206
  • kali:192.168.199.247
  • centos:192.168.199.236
  • win7:192.168.199.233

實驗一:假借跳板機kali,訪問內網centos的22埠

在kali上執行,將kali的7777埠指向centos的22埠

./portmap -m 1 -p1 7777 -h2 192.168.199.236 -p2 22

在macos上執行,訪問跳板機kali的7777埠,就是訪問內網centos的22埠

ssh 192.168.199.247 -p 7777

非常簡單,實驗2和實驗3其實和實驗1目的一樣的,是為了驗證portmap 幫助文件中的3種模式,可以不用看

Socket data transport tool

by Sofia(www.vuln.cn)
Usage:./portmap -m method [-h1 host1] -p1 port1 [-h2 host2] -p2 port2 [-v] [-log filename]
 -v: version
 -h1: host1
 -h2: host2
 -p1: port1
 -p2: port2
 -log: log the data
 -m: the action method for this tool
 1: listen on PORT1 and connect to HOST2:PORT2
 2: listen on PORT1 and PORT2
 3: connect to HOST1:PORT1 and HOST2:PORT2
Let me exit...all overd

實驗二:假借跳板centos,訪問內網kali的22埠

在centos上執行命令,開啟6666埠和7777埠,6666埠是與內網kali通訊,7777埠是與黑客macos通訊

./portmap -m 2 -p1 6666 -h2 192.168.199.236 -p2 7777

在kali上執行命令,將內網kali的22埠和跳板機centos的6666埠進行捆綁

./portmap -m 3 -h1 127.0.0.1 -p1 22 -h2 192.168.199.236 -p2 6666

在macos上執行命令,連線跳板機centos的7777埠,就會經過跳板機centos的6666埠,流入內網kali的22埠

ssh 192.168.199.236 -p 7777

實驗三:假借跳板centos、win7的3389埠,訪問內網kali的22埠

在centos上執行命令,6666埠要和kali通訊,3389埠要和macos通訊

./portmap -m 2 -p1 6666 -h2 192.168.199.233 -p2 3389

在kali上執行命令

./portmap -m 3 -h1 127.0.0.1 -p1 22 -h2 192.168.199.236 -p2 6666

在macos上執行命令

ssh 192.168.199.236 -p 3389

最後莫名其妙的也成功了

抓包發現,macos和win7沒有任何通訊

而我們設定的win7的3389埠,在這裡變成了源埠,是macos和centos之間的通訊,非常神奇

網路安全任重道遠,洗洗睡吧~

彩蛋:LCX實驗回顧

切記:步驟1、2順序不能反,否則實驗不成功

1、在內網主機上執行,將跳板機4444埠和內網3389埠繫結到一起

Lcx.exe -slave 192.168.160.139 4444 127.0.0.1 3389

2、在跳板機(192.168.160.139)上執行,4444埠和內網通訊,5555埠和黑客通訊

Lcx.exe -listen 4444 5555

3、在攻擊機上執行,感謝@whywelive 在2021年7月的提醒

Lcx.exe -tran 6666 192.168.160.139 5555

4、攻擊者訪問自己的6666埠,就能訪問內網的3389埠

實際上,步驟3可以忽略,直接進入步驟4,訪問跳板機的5555埠,就能訪問內網的3389埠