恶意软件流量分析实战指南
本指南旨在通过分析实际网络流量,帮助安全分析师深入理解恶意软件的攻击模式、传播途径及相关技术细节。我们将利用 CyberDefenders 提供的真实网络流量数据,结合 Wireshark、Brim 等工具,逐步揭示恶意软件的行为,提升对网络威胁的检测与响应能力。
1. 被感染 Windows 虚拟机的 IP 地址是什么?
分析方法:
- 使用 Wireshark 打开流量捕获文件。
- 在 Wireshark 中,通过过滤 DHCP (Dynamic Host Configuration Protocol) 流量来查找虚拟机获取 IP 地址的记录。DHCP 是网络设备自动获取 IP 地址及相关配置信息的协议,通常使用 UDP 端口 67 和 68。
- 另一种方法是使用可视化流量分析工具(如 下文提及)导入流量包,直接查看网络连接中的 IP 地址。
工具提示:
- Wireshark 过滤器:
dhcp - 可视化工具:加载流量包后,在"网络"或"连接"视图中查找与虚拟机相关的 IP 地址。
在分析流量包的网络视图时,我们发现了一个以 172.16.165.x 开头的 IP 地址,并且该 IP 地址与其他外部 IP 地址(如来自外部网站或 DNS 服务器)以及广播地址有所区别。因此,可以初步判断 172.16.165.165 是被感染虚拟机的 IP 地址。
答案:172.16.165.165
2. 被感染 Windows VM 的主机名是什么?
分析方法:
在 Wireshark 中,定位到与被感染虚拟机 IP 地址 (172.16.165.165) 相关的通信记录。在数据包详情中,查找并展开与主机名相关的字段,通常可以在 LLMNR (Link-Local Multicast Name Resolution) 或 NetBIOS 协议信息中找到。
工具提示:
在 Wireshark 的数据包列表中,找到虚拟机 IP 地址的记录,然后在数据包详情窗口中向下滚动,寻找名为 "Host Name" 的字段。
答案:K34EN6W3N-PC
3. 受感染虚拟机的 MAC 地址是什么?
分析方法:
与查找主机名类似,在 Wireshark 中找到与被感染虚拟机 IP 地址 (172.16.165.165) 相关的网络通信。MAC (Media Access Control) 地址通常在以太网帧头部信息中,或者在 ARP (Address Resolution Protocol) 请求/响应报文中可以找到。
工具提示:
在 Wireshark 中,选择一个包含虚拟机 IP 地址的 ARP 或以太网帧数据包,查看其 "Source" 或 "Destination" 字段中的 MAC 地址。
答案:f0:19:af:02:9b:f1
4. 受感染网站的 IP 地址是什么?
分析方法:
追踪 HTTP (Hypertext Transfer Protocol) 流量流。寻找浏览器向外部服务器发起的请求,特别是那些可能包含重定向或下载恶意脚本的请求。通常,一个被感染的网站会请求外部服务器上的恶意内容。
工具提示:
在 Wireshark 中,使用过滤器 http。右键点击可疑的 HTTP 请求(例如,涉及 JavaScript 文件下载),选择 "Follow" -> "HTTP Stream"。在跟踪的流中查找请求的目标 IP 地址。
在此分析中,我们注意到一个 HTTP 请求下载了一个名为 js_kod2.src 的文件。通过检查该请求的源 IP 地址,我们找到了攻击者控制的服务器。其中一个关键的请求指向了 IP 地址 82.150.140.30,该 IP 地址很可能托管了受感染网站使用的恶意脚本。
答案:82.150.140.30
5. 受感染网站的 FQDN 是什么?
定义: FQDN (Fully Qualified Domain Name) 是一个完全限定域名,它提供了主机名及其所属域名的完整路径,例如 www.example.com。
分析方法:
使用 DNS (Domain Name System) 查询或 HTTP 请求中的 Host 头部信息来确定 FQDN。如果流量包中包含 DNS 查询,可以直接查找与可疑 IP 地址解析对应的域名。也可以检查 HTTP 请求中的 Host 字段,该字段表明了客户端请求的服务器域名。
工具提示:
在 Wireshark 中,使用过滤器 dns 或 http。查找与 IP 地址 82.150.140.30 相关的 DNS 查询或 HTTP Host 头部信息。
答案:(需要具体流量分析结果,但通常在 HTTP Host 字段或 DNS 查询中找到,例如 malicious-site.com)
6. 传送漏洞利用工具包和恶意软件的服务器的 IP 地址是什么?
分析方法:
利用 Brim (或类似的日志分析工具) 对流量数据进行查询,重点关注与"exploit"(漏洞利用)相关的事件。结合流量中的连接信息,识别出向受感染虚拟机传输 exploit kit (EK) 和恶意软件的服务器 IP 地址。
工具提示:
在 Brim 中执行类似以下的 Zeek 脚本查询:
exploit | fuse
该命令会查找标记为"exploit"的连接,并尝试将相关的日志信息聚合(fuse)在一起,从而帮助识别攻击源。
答案:37.200.69.143
7. 传送漏洞利用工具包和恶意软件的 FQDN 是什么?
分析方法:
将上一步确定的攻击服务器 IP 地址 (37.200.69.143) 与 DNS 查询或 HTTP Host 头部信息关联起来,以确定其完全限定域名 (FQDN)。可以使用在线流量分析工具或在 Wireshark/Brim 中进行查询。
工具提示:
在 Brim 中,可以使用命令:
_path=="dns" query == "37.200.69.143"
_path=="http" tx_hosts == "37.200.69.143" | cut host
答案:stand.trustandprobaterealty.com
8. 指向漏洞利用工具包 (EK) 登录页面的重定向 URL 是什么?
分析方法:
回顾之前对受感染网站的分析(参考问题 4)。通常,访问被感染网站会导致浏览器被重定向到攻击者控制的服务器,该服务器可能托管漏洞利用工具包的登录页面或直接进行攻击。查找 HTTP 重定向响应(HTTP 状态码 3xx)。
工具提示:
在 Wireshark 中,过滤 HTTP 流量,查找带有 301, 302, 307 等状态码的响应。查看响应头中的 Location 字段,该字段包含重定向的目标 URL。
答案:http://24corp-shop.com
9. 除了 CVE-2013-2551 IE exploit 之外,EK 还针对另一个以"J"开头的应用程序。提供完整的应用程序名称。
分析方法:
在 Brim 或 Wireshark 中,审查与漏洞利用工具包服务器 (37.200.69.143) 相关的流量,特别是那些被标记为利用(exploit)或包含特定安全签名的流量。寻找针对以 "J" 开头的应用程序的利用模式或签名。
工具提示:
在 Brim 中,可以使用 signature 字段进行过滤或排序,查找与 Java 相关的签名。例如:
_path=="files" OR _path=="http" AND signature=~/JAVA/
答案:JAVA
10. 有效载荷交付了多少次?
分析方法:
分析流量包,识别恶意软件的下载或执行事件。这可以通过检查 HTTP/HTTPS 下载文件、或者通过 VirusTotal 等威胁情报平台查询可疑文件/URL 的检测结果来判断。每一次成功的恶意载荷传递都对应一次有效载荷交付。
工具提示:
在 Wireshark 中,过滤下载文件的协议(如 HTTP GET 请求),或查找可疑的 URL。使用 VirusTotal 查询检测到的威胁数量,这通常能反映出恶意载荷被尝试交付的次数。
答案:3
11. 受感染的网站有一个带有 URL 的恶意脚本。这个网址是什么?
分析方法:
重新审视对受感染网站的流量分析。查找包含恶意脚本的 HTTP 请求,并确定该脚本引用的外部 URL。通常,这个 URL 会指向一个包含恶意代码的网站或文件。
工具提示:
在 Wireshark 中,追踪 HTTP 流,重点关注 JavaScript 文件。查看脚本内容或相关的 HTTP 请求/响应,以找到其引用的外部 URL。
答案:http://24corp-shop.com
12. 提取两个漏洞利用文件的 MD5 文件哈希值?(逗号分隔)
分析方法:
使用 Brim 结合 Zeek 的日志数据,过滤出从漏洞利用服务器(例如 37.200.69.143)传输的文件。提取这些文件的 MD5 哈希值。通常,漏洞利用工具包会分发多个恶意文件。
工具提示:
在 Brim 中执行以下查询,查找从指定 IP 地址传输的文件及其 MD5 哈希值:
_path=="files" source=="HTTP" 37.200.69.143 in tx_hosts | cut tx_hosts, rx_hosts, md5, mime_type
此查询会列出传输的文件信息,包括 md5 字段。
答案:(需要从查询结果中提取两个 MD5 值,例如 [md5_hash_1],[md5_hash_2])
恶意软件流量分析 2
1. 被感染 Windows 虚拟机的 IP 地址是什么?
分析方法:
同上一个案例,使用 Wireshark 或可视化工具分析流量包,查找 DHCP 相关的通信记录或直接查看网络连接中的 IP 地址。在流量包中,可以观察到虚拟机通过 DHCP 获取 IP 地址的过程。
答案:172.16.165.132
2. 受感染虚拟机的 MAC 地址是什么?
分析方法:
在 Wireshark 中,使用 IP 地址过滤器定位到被感染虚拟机的通信流量(例如 ip.addr == 172.16.165.132)。然后,在 ARP 请求/响应或以太网帧头部中查找该 IP 地址对应的 MAC 地址。
答案:00:0c:29:c5:b7:a1
3. 传送漏洞利用工具包和恶意软件的 IP 地址和端口号是什么?
分析方法:
使用 Brim 分析日志,通过查询与"exploit"相关的连接,找出攻击源 IP 地址。进一步分析连接信息,特别是通信量较大的连接,以确定与漏洞利用工具包和恶意软件传输相关的 IP 地址和端口号。
工具提示:
- 查找 exploit 事件:
exploit | fuse - 分析连接的总字节数,找出通信量最大的连接:
_path=="conn" | put total_bytes := orig_bytes + resp_bytes | sort -r total_bytes | cut uid, id, orig_bytes, resp_bytes, total_bytes
答案:IP 地址:37.143.15.180,端口号:51439
4. 提供漏洞利用工具包的两个 FQDN 是什么?(按字母顺序以逗号分隔)
分析方法:
将上一步确定的漏洞利用服务器 IP 地址 (37.143.15.180) 与 DNS 查询或 HTTP Host 头部信息关联起来,以确定其完全限定域名 (FQDN)。在 Brim 中,可以查询与该 IP 地址相关的 DNS 请求或 HTTP Host 字段。
工具提示:
在 Brim 中,可以使用命令:
_path=="dns" query == "37.143.15.180"
_path=="http" tx_hosts == "37.143.15.180" | cut host
答案:g.trinketking.com,h.trinketking.com
5. 受感染网站的 IP 地址是什么?
分析方法:
要确定受感染网站的 IP 地址,需要查找与漏洞利用主机 (37.143.15.180) 之间的 Referer 信息。当用户访问被感染网站时,该网站的 URL 会作为 Referer 发送给漏洞利用服务器。因此,在流量中查找指向漏洞利用服务器的请求,并检查其 Referer 字段,即可找到受感染网站的 IP 地址。
工具提示:
在 Brim 中,查询 HTTP Referer 信息:
_path=="http" tx_hosts == "37.143.15.180" referrer
或者查询与漏洞利用服务器 IP 相关的 DNS 请求,寻找可能的被访问域名。
答案:192.30.138.146
6. 受感染网站的 FQDN 是什么?
分析方法:
通过查找与上一步确定的 IP 地址 (192.30.138.146) 相关的 DNS 查询,可以确定其 FQDN。或者,在 HTTP 请求中查找 Host 头部信息。
工具提示:
在 Brim 中,查询 DNS 记录:
_path=="dns" addr == "192.30.138.146"
答案:www.hijinksensue.com
7. 传送恶意软件的漏洞利用工具包 (EK) 的名称是什么?(两个字)
分析方法:
分析流量包中与漏洞利用工具包相关的下载文件,或者利用在线威胁情报平台(如 PacketTotal)分析流量。通常,漏洞利用工具包会包含特定的签名或标识信息,可以通过这些信息来识别其名称。
工具提示:
在 Wireshark 或 Brim 中,审查下载文件的相关信息,查找文件名、协议或签名中可能包含的 EK 名称。使用 PacketTotal 等在线工具上传流量包进行分析,并查看其报告的 EK 名称。
答案:(需要具体流量分析结果。例如,如果流量分析显示 EK 名称为 "Blackhole EK",则答案是 "Blackhole"。)