内网渗透-通信技术
背景
当拿到某网络主机的权限,发现无法将流量或者权限发送出来,对渗透造成了很大的影响,所以内网渗透必须需要了解到两种主要的通信技术–代理与隧道(端口转发)技术。
代理技术解决的问题:代理简单来讲解决网络之间的通信问题,如内网与外网之间或者两者自己之间的通信,两个不同内网的通信就必须借助到代理,否则无法通讯。
隧道技术解决的问题:简单来讲就是解决流量无法发送,隧道技术多用来绕过一些安全设备的监控,如防火墙过滤问题,网络连接通讯问题,数据回链封装问题,对我们发送的流量进行了拦截,这个时候需要接触隧道技术绕过拦截,隧道技术就是使用不同的协议把走不通的路走通。走不同的协议技术建立通讯,可以说是其中也包括了一些代理的技术
隧道(端口转发)
一般情况,在渗透测试后获取主机权限后下一步就是内网渗透,内网中的其他机器是不允许外网机器访问的。这时候,我们可以通过 隧道(端口转发) 或将这台外网服务器设置成为 代理,使得我们自己的攻击机可以直接访问与操作内网中的其他机器。实现这一过程的手段就叫做端口转发。
隧道技术使用在不同的OSI层进行,大体总结了以下三种: 网络层:IPV6隧道,ICMP隧道 传输层:TCP隧道,UDP隧道,常规的端口转发 应用层:SSH隧道,HTTP/S隧道,DNS隧道
需要注意的是,使用某种隧道之前,需要检查环境本身是否支持这种协议的使用,才能去使用响应的隧道传输。
常用工具
内网渗透中常用的代理工具有很多,例如lcx,nps,frp,venom,proxifier/proxychains+reGeorg等等。这里我就不全部讲解了。
1.LCX(Windows)/Portmap(Linux)
很有名的一款工具,杀软直接秒杀,上传到目标机器前要提前做好免杀。下载地址:https://github.com/AA8j/SecTools/tree/main/lcx
下面介绍一下使用该工具的两种场景。
(1)假如此时已经拿到了边界服务器的权限,但是由于防火墙限制,进网端口被限制,但可以出网,此时就可以将边界服务器的端口转发到攻击机上,然后访问攻击机的端口。
边界服务器为Windows:
|
|
边界服务器为Linux:
(2)假如此时已经拿到了边界服务器的权限,但是由于防火墙策略限制导致3389端口无法出网,此时可以将此端口映射到可以出网的端口。
边界服务器为Windows:
此时远程桌面连接192.168.8.56的53端口即可。
边界服务器为Linux:
推荐使用ssh隧道。
可能有师傅会问,既然已经把远程端口转发到本地了,为什么还要在本地再转发一次呢?这是因为-slave
参数和-listen
参数必须成对出现,否则连接远程桌面会一直连不上。
2.netsh
Windows自带的一款工具,不需要上传到目标机器。值得注意的是,它不能把本地端口转发到其它机器上。
3.reGeorg
reGeorg是一款把内网服务器端口的数据通过http/https隧道转发到本机,实现基于HTTP通信的工具。使用时需要配合webshell建立一个socks5代理来进行内网穿透,支持多种类型的webshell。因为使用频繁,所以较多的杀软都会拦截,需要做免杀处理。
免杀版本下载: GitHub - L-codes/Neo-reGeorg: Neo-reGeorg is a project that seeks to aggressively refactor reGeorg
在边界服务器上传webshell后,浏览器访问边界服务器webshell所在地址,如果出现提示:Georg says,'All seems fine'
,则说明连接建立成功。
不过这款工具一般搭配proxifier或者proxychains使用。启用上面的脚本后,命令行会显示转发到本地的端口,这时再搭配proxifier或者proxychains使用就可以了。
4.netcat(nc)
这款工具太有名了,被称为“网络界的瑞士军刀”。除了用来端口转发以外,还能用来传输文件、端口扫描,不过这里我们不作讲解,有兴趣的自行研究进阶用法。
常用命令行参数:
一般用作反弹shell,正向连接很少用。在公网vps上监听:
目标机则可以利用各种方式进行主动连接,例如bash反弹一句话、Python、PHP等。推荐给大家一个谷歌浏览器插件–Hack-Tools,里面可以生成各种正向连接命令,再也不用担心命令记不住了!
5.venom
参考文章: Venom工具的使用(内网渗透 多级代理)_rang#的博客-CSDN博客_venom工具
6.nps、frp
nps是一款轻量级、高性能、功能强大的内网穿透代理服务器。目前支持tcp、udp流量转发,可支持任何tcp、udp上层协议(访问内网网站、本地支付接口调试、ssh访问、远程桌面,内网dns解析等等……),此外还支持内网http代理、内网socks5代理、p2p等,并带有功能强大的web管理端。
frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议,且支持 P2P 通信。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。
由于官方文档很详细,所以这里不再讲解。
还有一些极端情况,比如目标内网防火墙禁用了http协议,那么只能采用dns隧道、icmp隧道、ssh隧道了。