主动激活木马加密流量分析_第1页
主动激活木马加密流量分析_第2页
主动激活木马加密流量分析_第3页
主动激活木马加密流量分析_第4页
主动激活木马加密流量分析_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一概述在网络攻击中,木马病毒通常会使用监听某个端口的方式,或者直接连接C2地址、域名的方式来建立通信,完成命令与控制。而APT攻击中,攻击者为了更高级的潜伏隐蔽需求,其部署的木马或后门,会采用对网卡流量进行过滤的方式,获得一定的通信信令才会触发执行实际的攻击,这一部分的活动称为流量激活。本文以一个正常的端口敲击应用Knock和ATT&CK中“TrafficSignaling”章节提到的几类家族来了解流量激活的几种常见方式。二正常应用的激活流量Knock是一个用于端口激活的敲门工具。为了保护SSH端口不暴露在攻击者面前,系统管理会使用Knock配合防火墙来执行SSH服务的开放策略。Knock在平常的时候关闭ssh服务和端口,外部无法扫描到端口开放。在运维人员需要访问SSH服务的时候,通过端口敲击序列,Knock在特定时间内,连续收到设置的端口序列流量,则会触发开启SSH服务,从而使得外部可以访问。如下方截图例子中,对TCP和UDP分别发送目的端口7000、8000、9000的敲击流量,目的IP接收到这三个端口序列则会开启SSH服务。这部分的流量就是SSH服务的激活流量。图1knock激活触发

图2TCP的端口激活流量图3UDP的端口激活流量四APT中的流量激活ATT&CK中“TrafficSignaling”章节中提到了提到了8个家族的流量激活,分别是Chaos、Kobalos、Pandora、Penquin、Ryuk、SYNfulKnock、Umbreon、WinntiforLinux。chaos木马

Chaos是一个linux后门木马。木马运行后,会创建一个TCP的Socket,读取过滤网卡数据,校验数据包内容是否与特定字符串一致。一旦传入的数据存在特定字符串,则会向对方的8338端口发起通信请求,进行下一步的密钥协商和执行后续动作。本次样例中的特定字符串值为“j0DtFt1LTvbIU”。可以看到Chaos木马是通过检查TCP的传入数据,是否包含特定字符串完成的流量激活。

图4Chaos木马的激活图5TCP激活Kobalos木马

Kobalos是一个SSH后门。该后门在运行后,开启流量监听,等待来自源端口55201的流量,只有符合源端口为55201的SSH连接才会触发下一阶段建立与C2通信的TCP通道。

图6监听源端口55201图7来自55201端口的激活Panora木马

根据TrendMicro的分析报告,Panora的每个样本都有Token值,并存放到注册表中,样本执行流量捕获,只有当接收到HTTP协议格式的数据,且数据与注册表中Token值一致的时候才会执行命令。该木马在样本中解析HTTP格式使用了开源的HTTP解析组件。

图8Trendmicro报告提供的Token值图9HTTP激活模拟Penquin木马

Penquin,属于Tular组织的木马。在木马启动运行后,开启网卡监听,检查网卡接收到的数据包TCP包头中的ACK编号,或者UDP协议数据包载荷中的第二个字节。如果收到这样的数据包并且匹配成功,则视为成功激活,执行流程将跳转到数据包有效负载内容,执行后续操作。示例如下:Filter=(tcp[8:4]&0xe007ffff=0xe003bebe)or(udp[12:4]&0xe007ffff=0xe003bebe)

图10对TCP协议ACK值的检查图11对UDP协议载荷部分的检查

Ryuk木马

Ryuk,勒索软件家族。该样本具备正规的数字签名,样本运行后为了扩大勒索访问,会访问系统的ARP表。如果ARP表中存在局域网段列表,则Ryuk将向ARP列表中设备的MAC地址发送一个网络唤醒(WoL)数据包以启动设备。此WoL请求以包含“FFFFFFFFFFFFFFFFFF”的特定数据的形式出现。网络唤醒(Wol)是一种系统支持的唤醒功能,属于正常的应用,在此处勒索软件使用了这种唤醒来获得更多的失陷主机,扩大勒索范围。

图12网卡支持唤醒功能图13Wol数据包SYNfulKnock木马

SYNfulKnock是路由器固件木马,木马运行后接收特定的数据完成激活。该数据包为TCPSYN握手包。数据包发送到感染的路由器的端口80上。SYN包需要满足几个条件:序列号和ACK之间的差值必须设置为0xC123D。ACK号不为0。TCP选项:“020405b40101040201030305”紧急指针设置为0x0001。

图14SYN校验Umbreon木马

反向shell连接木马,该木马存在一个同名的开源项目,以该开源项目为例子进行说明。木马接收TCP协议流量,检查流量中的ACK和序列号,是否符合程序中硬编码的值,下图示例代码SEQ=0x00C4、ACK=0xC500。只有满足的情况下,才会开启反向shell连接。这种验证激活与上述提到的SYNfulKnock有点类似,不过显然SYNfulKnock的条件更苛刻,需要进行运算,且有一定变化。图15项目中的MAGIC定义

图16TCP检查WinntiforLinux木马

Winnti木马的激活,国外安全研究员Thyssenkrupp提供了探测脚本,对其进行分析可以看到,初始的请求TCP协议载荷由四个DWORD组成,前三个由Rand()函数生成,第四个是根据第一个和第三个计算的。当受Winnti感染的主机收到时,它将验证接收到的数据包并侦听包含任务的第二个入站请求。第二个请求(获取系统信息请求),该协议使用四字节XOR编码。Winnti将在执行任务之前验证第三个DWORD是否包含特征字0xABC18CBA。

图17国外安全研究员Thyssenkrupp提供的探测包示例四总结从以上几个示例可以看到木马病毒的激活具有多种方式。总结各类激活方式的特点如下:影响多个平台:包含windows、linux及各类路由器操作系统等。激活协议多样:包含TCP、UDP、HTTP等,除了以上举例,在实际的分析中,也有ICMP、伪造TLS协议等。激活位置多变:如协议格式、协议头部、端口、载荷

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论