您的位置:首页 > 其它

分析攻击流量样本

2016-12-01 00:05 295 查看
此次分析样本是.pcap格式,共348帧。主要利用的分析工具是wireshark以及它的命令行版本tshark。

前期分析

首先通过观察,发现只涉及到两个ip,在本文中称98.114.205.102为主机A,192.150.11.111为主机B。

如下图,A主动向B请求TCP连接,并完成了三次握手。



虽然不能断定,但很有可能A为攻击者,B为受害者,A攻击的是B的主机系统。

理论上说这种类型的攻击一定利用了已知系统漏洞或者0day,所以接下来的目标是找到A究竟利用了什么漏洞对B实施了攻击。

于是观察有没有能够暴露更多信息的数据帧。如下图,可以看到在第33帧有一个函数被调用。这非常可疑。网上搜一下这个API,很快发现它曾经曝出过问题,编号CVE-2003-0533,winodws上大名鼎鼎的“冲击波”利用的就是这个漏洞,微软给的编号是MS04-011。



该漏洞是一个远程缓冲区溢出,DCE/RPC请求可以从远程主机发送到本地机的LSASS.EXE进程(Microsoft Windows LSA是本地安全授权服务(LSASRV.DLL))。LSASS DCE/RPC末端导出的Microsoft活动目录服务存在一个缓冲区溢出,远程攻击者可以利用这个漏洞以SYSTEM权限在系统上执行任意指令。攻击LSASS的漏洞的基本办法,就是构造长参数DomainName,通过DsRoleUpgradeDownlevelServer()这个API,最终造成溢出和返回shell。

流程分析

已知B被利用的是哪个漏洞,再分析整个流程就简单了。

整个攻击过程中包含5个TCP会话,按会话顺序描述流量样本的攻击流程。

(1)首先,A扫描B 445/tcp端口,确认该端口是否开放。(tcp.stream eq 0)



(2)建立SMB会话,连接到B的\192.150.11.111\ipc$,并请求/lsarpc。(tcp.stream eq 1)



如图,在帧33的位置,通过构造恶意参数,调用存在漏洞的函数DsRoleUpgradeDownlevelServer(),

造成缓冲区溢出,并将shell绑定到1957端口。



A连接到B 1957端口上的shell,即可在B上执行指令。(tcp.stream eq 2)



查看追踪流,可知为了在B上植入恶意软件(蠕虫),A向B发送了如下命令,强制B连接ftp并下载ssms.exe。



B执行(3)中命令,尝试建立FTP连接,请求下载ssms.exe。(tcp.stream eq 3)



如下图:



B通过ftp接收文件ssms.exe(恶意样本)。



追踪流,可见开头MZ、PE字符,显然,正在传输的是windows可执行程序。(tcp.stream eq 4)



接下来A再次连接到shell,强制B执行恶意文件ssms.exe即可。

疑点分析和结论

(1)攻击实施时间非常短,全过程仅花费16秒;另外,在这五次TCP会话中,出现了会话间间隔小于1秒的情况。人工输入命令的速度不可能这么快,所以说这次攻击肯定是自动化的。

另外,恶意文件ssms.exe被mcfee引擎识别为W32/Sdbot.worm.gen.x,是蠕虫。

(2)攻击者A在发送如下指令时出现了错误:

echo open 0.0.0.0 8884 > o

使用了无效的ip,0.0.0.0,该处ip值本应为98.114.205.102。这一错误一方面再次证明此次攻击不是人工实施,人工不会出现这样的错误;另一方面,为何在出错的情况下B仍然执行命令下载了恶意文件ssms.exe?这说明受害者B也是有问题的。

(3)windows xp系统的ttl值应当为128,而这个受害主机B的ttl值为64。进一步证明B实际上是一个蜜罐,伪装成了存在漏洞的windows系统,吸引网络上被感染的发起自动扫描的僵尸机上钩。

综上所述,攻击者A很可能是被蠕虫感染的主机,遭到感染后,利用端口扫描找到受害者B(蜜罐),并向其发起针对MS04-011漏洞的后续攻击行为。整个攻击过程都是自动发起和实施的。

来源和参考:
http://www.honeynet.org/node/504
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息