1. 初识挑战:当大流量遇上钓鱼邮件
大家好,我是老张,一个在安全圈摸爬滚打了十多年的老兵。今天咱们不聊那些高深莫测的零日漏洞,也不讲复杂的逆向工程,就来聊聊CTF竞赛里一个非常经典,也极其贴近实战的场景——从海量网络流量中,揪出那封该死的钓鱼邮件。
你可能会想,这不就是找个邮箱地址吗,有什么难的?嘿,可别小看它。在实际的企业攻防演练或者真实的应急响应中,攻击者绝不会只发一封邮件。他们往往会在短时间内,通过控制的多个傀儡机,向目标公司员工批量发送成千上万封钓鱼邮件,试图“广撒网,多捞鱼”。这就导致安全人员抓取到的流量包(pcap文件)体积巨大,动辄几个GB,里面混杂着正常的业务流量、员工上网流量、以及攻击流量。我们的任务,就是在这片数据的“汪洋大海”里,精准地钓出攻击者的“鱼饵”——那封恶意邮件的源头邮箱。
这次我们以BUUCTF平台上的“大流量分析(二)”这道题为例。场景很明确:A公司遭受攻击,我们拿到了一时间段内的网络流量包,需要回答一个核心问题:黑客使用了哪个邮箱给员工发送了钓鱼邮件? 答案需要以 flag{邮箱地址} 的形式提交。这完全模拟了真实调查中“溯源取证”的第一步:定位攻击入口。
面对几十甚至上百个pcap文件,新手很容易头晕。我的经验是,别慌,抓住核心协议——SMTP。简单邮件传输协议,这是邮件发送的“高速公路”。无论邮件内容如何伪装,只要它是通过邮件客户端或服务器发送的,在网络上通常就会留下SMTP协议的痕迹。我们的追踪之路,就从这里开始。
2. 核心思路:在协议层锁定目标
2.1 为什么是SMTP?
在展开具体操作前,我们得先理清思路。邮件相关的协议主要有三个:SMTP、POP3 和 IMAP。
- SMTP:负责“发送”邮件。就像邮局的寄件服务,黑客用来发出钓鱼邮件的动作,必然经过SMTP协议。
- POP3/IMAP:负责“接收”邮件。这是员工从邮件服务器下载邮件到本地客户端时使用的协议。
所以,我们的排查重点非常清晰:在流量中寻找 SMTP流量。钓鱼邮件通常在攻击的早期阶段发出,因此我们可以从最早的流量包文件开始分析。
2.2 实战第一步:过滤与初筛
拿到流量包附件(通常是一个压缩包,里面包含多个 .pcap 或 .pcapng 文件)后,我习惯使用 Wireshark 这款神器。打开第一个,也是时间上最早的流量包文件。
面对满屏滚动的数据包列表,直接看是看不出所以然的。我们需要使用Wireshark的显示过滤器。在过滤器栏中输入:
smtp
或者,为了更精确地捕捉邮件发送的建立过程,可以使用:
tcp.port == 25
因为SMTP服务默认使用25端口(当然,加密的SMTPS使用465端口,但在此类CTF题或早期攻击中,明文传输的25端口更常见)。
应用过滤器后,流量列表会瞬间清爽很多,只剩下SMTP


365

被折叠的 条评论
为什么被折叠?



