我是如何从3亿IP中找到CISCO后门路由器的

接到某单位通知让查找中国具有SYNful Knock后门的CISCO路由器,按照曼迪安特分析的报告称中国已经发现3台具有SYNful Knock后门的路由器,如何快速从全国3亿IP地址中快速查找出3个IP地址难度还是十分的大啊,而我经过查找发现中国已经有4个IP被植入了后门,现将检测过程分享给大家。

一、获取IP地址

为保证中国IP的全面性,从apnic重新获取亚洲区域所分配到的IP,过滤出CN的IP,结果如下。apnic文件中每行为一个IP地址段,以"|"作为分隔,第四个字段为IP起始地址,第五个字段为IP地址数量。


二、IP地址格式调整

将IP地址格式调整成zmap的CIDR格式,如下:


三、使用zmap检测80端口开放ip

命令:zmap -w china_ip_cidr.txt -p 80 -o 80.txt


检测出5184575个开放80端口的IP地址。


四、POC制作思路

互联网搜索发现还没有此后门的POC(现在CISCO已经发布自己的POC,后期我的POC也参考CISCO的POC做了适当调整),没办法自给自足仔细研读了曼迪安特的报告,经过多次改版最终POC思路如下:


(一)伪造SYN报文,使seq和ack_seq之间的差为0xC123D大批量发送给目标主机。


(二)单独监听收到的网络报文,将seq和ack_seq之间的差为0xC123E、urgent flag未设置、urgent pointer=0x0001、hard-coded TCP options=“02 04 05 b4 01 01 04 02 01 03 03 05”的网络报文过滤出来保存。

五、POC分析如下:

(一)SYN报文部分




修改SYN seq和ack_seq差值,使其差值为0xC123D,并直接发送SYN,不等待接收SYN ACK报文,由网络监听部分进行SYN ACK报文的拦截,由于不接收SYN ACK报文,发送速度提升了N倍。考虑到发送完关闭过快在每个报文发送完毕后增加了0.1秒的等待。


(二)网络监听部分


此部分借鉴了CISCO发布的检测脚本,但是CISCO检测脚本检测性能较差,我将检测POC分成了2部分,将SYN报文发送部分POC放入检测框架批量执行,网络监听部分单独执行分析SYN ACK的报文特征符合性,代码如下:





五、批量执行

(一)将待检测IP入库,祭出我编写的神器pwscan大规模检测框架,设定进程数1000,启动检测框架如下:


框架启动了1000个扫描引擎。



奔跑吧小驴子,很快检测完成,如下:


六、检测结果

对全网检测5遍后结果如下不好意思IP要隐藏:) 


七、漏洞验证

单独进行漏洞验证如下:


(一)脚本验证



(二)登陆验证


弱口令成功登陆,看到了曼迪安特说的"#"号



执行show platform查看文件被修改情况,找到曼迪安特说的RW标致


八、结论

成功找到4个中国具有SYNful Knock后门的CISCO路由器。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值