内网出口刺探

华盟原创文章投稿奖励计划

内网出口刺探

0x01 前言

在实际渗透过程中,我们可能经常会遇到这样的情况,当前已拿下的这台机器确实在目标内网[且只有一个内网ip],但通过初步尝试发现它似乎无法正常访问外网,对于这样的机器,我们一般会把它称作目标内网"脱网机"或者"断网机",当然,这里所说的"断网"并非指真正意义上的物理断网,而是由于目标防火墙或者其它的某些防护原因,导致我们的流量没法从目标内网中正常的进出,而这样所带来的直接后果就是,你的常规shell可能此时已无法正常反弹,常规的反向socks,反向端口转发就更不用说了,不过,也并非所有的防火墙都过滤的非常森严[这篇文章的主要目的还是想让大家先形成最基础的认识,对于某些极端环境,我们暂不多做考虑],正是由于此,我们还是有机会对目标内网进行一些常规的出网刺探动作的,主要也是想借助此刺探过程,来大致看看到底还有哪些流量是可以正常进出目标内网的,ok,废话就不多说了,我们直接来简单看下具体怎么搞

0x02 首先,先简单探测下常规的icmp流量能不能正常出网

最简单的方式,就是直接在当前已控的机器上ping下公网的任意一个能直接ping通 [已在事先确认过确实能ping通] 的域名,主要是想看看当前机器对这个域名的解析和icmp的连通情况,如果你发现icmp没有通[可能会报目的地不可达之类的错误],而域名却被解析了,则说明dns[udp 53端口]能正常出去的,而icmp可能就出不去了,当然啦,icmp数据自身也有几种不同的request类型,不妨尝试换换请求类型,看能不能通,万一能通,说明icmp还是有希望的,那后面的渗透动作,尽量就靠icmp来完成即可,就不多说了

内网出口刺探

其次,再来探测下普通的tcp流量能否正常出网

因为win7+以后系统默认就已不再启用telnet客户端[对于03/xp以下的系统直接用telnet即可],所以我们需要用powershell来弹端口[先尝试tcp端口],如下可以看到,此处是直接在目标机器上起个powershell搞,实际上,我们也可以直接在CobaltStrike中用加载本地ps脚本到远程目标机器上的方式来搞

内网出口刺探

在这之前,肯定是要先到自己的vps上去做好监听才行,当你发现确实接收到了对应端口的数据,则说明,当前这个tcp端口是可通的,那以后反弹shell,socks什么的就尽量从这个端口走就行

内网出口刺探

针对上面tcp 端口出网刺探的一点补充

退一步来讲,假设你事先就已经有了当前机器的管理权限,也就不需要上面那么麻烦了,不妨直接把目标系统的telnet客户端功能启用下即可[不用的时候再顺手禁用掉就行],不过需要注意的是,telnet默认只能探测tcp端口,至于linux下的tcp/udp端口出网刺探就更简单了,通常情况下,绝大部分linux发行版,默认都会自带nc[不过这个nc很显然是没有-e选项的,不能用来弹shell],直接用nc往自己的vps上打下对应的tcp/udp端口就行,比较简单,此处就不再具体演示了

内网出口刺探

0x03 接着,再来尝试看下常规的 udp 端口数据能否正常出网

上面都是弹tcp端口,这里我们就来尝试弹下对应的udp端口,看看能不能正常出

内网出口刺探

注意,此时自己vps上的nc要改成udp的监听模式,如上可以看到,虽然显示未连接[udp特性所致],但我们这边确实已经接到数据了[这个"Hi"可以自行到那个ps脚本中去改成任意字符串],就说明当前的这个udp端口也是通的,那后续的事情,你也应该明白了

内网出口刺探

0x04 而后,就是针对特定的dns 记录,看它能不能正常出网[此处暂以txt类型为例]

首先,你得先去注册个域名,并在这个域名里添加一条txt记录,在这个txt记录随便添加些字符,注意不能太多,有长度限制,就是为了等会儿给我回显用的,也不用太多

内网出口刺探

而后只需到目标内网机器上执行一次对你域名的txt查询,看看到底能不能解析到记录里的数据,如果能,则说明txt类型是能正常出网反之则不能,具体如下

内网出口刺探

0x05 最后,则是针对目标内网机器出口ip的简单定位

其实也很简单,随便tracert一个公网的域名跟踪下路由即可知,具体如下,至于linux机器下的刺探也基本都是一模一样的,换汤不换药,最多可能就是工具用法稍稍不同仅此而已

内网出口刺探

一点小结

特别注意,文章的最终目的,旨在为一般情况提供一些最常规的内网出口刺探思路,尤其在某些防护不是非常严[其实,部分内网压根就用不着刺探,完全随便自由进出]的目标网络中,可以通过暂且通过这些方式,来发现某些暂时可用的网络出口,再次重申,这里并非大家所认为的是对防火墙的穿透或者绕过,至于更深层的真正的防火墙穿透或者绕过手法,可能还需要根据具体的产品来研究,其实,我们在实战中,也并不是说一定非得反弹出来才行,利用端口复用[当然,这个具体实现肯定会比较复杂,正常]以正向的形式进去也不是不可以,关于文中的不足或者大家有其它更多更好的思路,也非常欢迎来公众号或小密圈一起交流讨论,祝大家好运 ^_^

本文来源红队攻防揭秘,经授权后由congtou发布,观点不代表华盟网的立场,转载请联系原作者。

发表评论