当前位置: 首页 > news >正文

第六章 流量特征分析-钓鱼邮件

一、钓鱼邮件的核心特征

  1. 发件人信息异常
    • 伪造发件人地址:攻击者常伪装成可信来源(如公司高管、合作机构)。
    • 域名伪装:使用相似域名(如 g00gle.com 代替 google.com)或子域名混淆。
    • 发件人频繁变更:同一钓鱼活动中可能使用多个发件人邮箱。
  2. 邮件头分析
    • SPF/DKIM/DMARC验证失败:检查邮件头中 Received-SPF、DKIM-Signature 等字段,验证发件域名的合法性。
    • 跳板服务器:邮件可能通过多个代理服务器转发,IP地址归属地与发件人声称的位置不符。
  3. 邮件内容特征
    • 诱导性语言:包含紧急操作要求(如“账户将被冻结”“立即验证身份”)。
    • 虚假链接(URL)
      • 短链接(如 bit.ly)隐藏真实地址。
      • 域名伪装(如 www.apple-pay.com 伪装苹果官网)。
      • HTTP协议滥用:钓鱼链接可能使用HTTP而非HTTPS,或HTTPS证书无效。
    • 附件风险
      • 恶意文件类型(如 .exe, .js, .docm 含宏病毒)。
      • 文件名诱导(如“Invoice_2023.pdf.exe”)。
  4. 网络流量特征
    • 异常SMTP流量:发送大量相似邮件至内部员工,触发邮件服务器流量激增。
    • DNS请求异常:解析可疑域名(如新注册或短生命周期的域名)。
    • 外联行为:用户点击链接后,设备可能向C&C服务器发送请求(可通过防火墙日志检测)。

二、流量分析技术手段

  1. 邮件头解析工具
    • 使用在线工具(如 MXToolbox、Email Header Analyzer)解析邮件头,追踪真实来源IP和路由路径。
  2. URL检测
    • 静态分析:检查链接域名是否在已知黑名单(如VirusTotal、Google Safe Browsing)。
    • 动态沙箱检测:通过沙箱环境(如Any.Run、Cuckoo Sandbox)模拟点击链接,观察是否触发恶意行为。
  3. 附件分析
    • 使用杀毒引擎(ClamAV、VirusTotal)扫描附件。
    • 分析文件哈希值(MD5/SHA-1)是否匹配已知恶意样本。
  4. 网络流量抓包
    • Wireshark抓包:分析SMTP协议交互、DNS请求、HTTP/HTTPS外联流量。
    • 日志分析:结合防火墙、邮件网关日志,识别异常IP或域名访问记录。

三、钓鱼邮件防御策略

  1. 技术防御
    • 部署邮件网关(如Proofpoint、Mimecast)进行SPF/DKIM/DMARC验证。
    • 启用URL重写(Link Rewriting)技术,阻断恶意链接。
    • 限制可执行附件(如.exe)的接收。
  2. 员工意识培训
    • 模拟钓鱼演练,提高员工识别钓鱼邮件的能力。
    • 教育员工勿轻信紧急请求,需通过官方渠道二次确认。
  3. 事件响应
    • 隔离受感染设备,阻断与C&C服务器的通信。
    • 分析钓鱼邮件的IOC(Indicators of Compromise),更新防火墙和邮件过滤规则。

四、案例分析(小王公司场景)

  1. 攻击链还原
    • 员工收到伪装成财务部的邮件,要求“紧急更新工资账户信息”。
    • 邮件内含短链接 bit.ly/xxxxx,点击后跳转至钓鱼页面(模仿公司OA系统)。
    • 页面诱导输入账号密码,攻击者窃取凭据后横向渗透内网。
  2. 流量分析步骤
    • 步骤1:提取邮件头,发现SPF验证失败,发件IP归属地异常。
    • 步骤2:短链接解析后指向境外服务器,HTTPS证书为自签名。
    • 步骤3:防火墙日志显示多个设备访问该IP,触发告警。

五、关键工具推荐

  • 邮件分析:EmailAnalyzer、MailTracker
  • 流量分析:Wireshark、Suricata(IDS)
  • 威胁情报:VirusTotal、Cisco Talos

第六章 流量特征分析-小王公司收到的钓鱼邮件

来自 <https://xj.edisec.net/challenges/58>

任务环境说明
注:样本请勿在本地运行!!!样本请勿在本地运行!!!样本请勿在本地运行!!!

应急响应工程师小王在 WAF 上发现了一段恶意流量,请分析流量且提交对应 FLAG

题目描述:

1,下载数据包文件 hacker1.pacapng,分析恶意程序访问了内嵌 URL 获取了 zip 压缩包,该 URL 是什么将该 URL作为 FLAG 提交 FLAG(形式:flag{xxxx.co.xxxx/w0ks//?YO=xxxxxxx}) (无需 http、https);

2,下载数据包文件 hacker1.pacapng,分析获取到的 zip 压缩包的 MD5 是什么 作为 FLAG 提交 FLAG(形式:flag{md5});

3,下载数据包文件 hacker1.pacapng,分析 zip 压缩包通过加载其中的 javascript 文件到另一个域名下载后续恶意程序, 该域名是什么?提交答案:flag{域名}(无需 http、https)

1,题目提到了受害者点击恶意邮件导致访问内嵌URL获取了zip压缩包,那么这个过程肯定涉及http协议,并且一般下载文件所以的是GET请求

http.request.method==GET

追踪查看NO.7的http流

<div id="url" data-url="/w0ks//?YO=1702920835">Loading...</div>
<script>
  function red(){ window.location.href = document.getElementById("url").getAttribute("data-url"); }
  setTimeout(red, 3000);
</script>
延迟重定向:页面加载3秒后自动跳转至 /w0ks//?YO=1702920835,可能是为了逃避静态URL检测或增加用户信任感(伪装成“加载中”页面)。

  • 参数 YO=1702920835:疑似Unix时间戳,转换为UTC时间为 2023-12-18 17:33:55,与请求时间 Date: Mon, 18 Dec 2023 17:33:55 GMT 完全一致,可能用于会话校验或动态生成钓鱼页面。

服务器信息

  • Server: nginx + x-powered-by: PHP/7.4.33 + x-turbo-charged-by: LiteSpeed
    • 混合使用Nginx和LiteSpeed服务器,PHP版本较旧(7.4.33已停止官方支持),需警惕漏洞利用。

可以看到出现了gzip的字眼,那么就可以确定记录访问内嵌URL的流量就在这,将URL拼接在一起得到flag:

flag{tsdandassociates.co.sz/w0ks//?YO=1702920835}

2,问压缩包的md5值,将压缩包先分离再说。

过滤http协议之后直接查看协议分级即可,看看文件的位置然后导出

作为过滤器应用然后选中。查看到data协议,然后选择No.111流量导出分组字节流

导出来之后文件大小约为84KB

直接计算MD5值,得到flag{f17dc5b1c30c512137e62993d1df9b2f}

3,解压导下来的压缩包,其中有一个Nuj.js,这是一段javascript代码

简单分析

这段代码包含了一些注释以及一个对 o457607380 变量的操作。

注释部分

注释部分包含一些看似随机的拉丁文句子,它们并不影响代码的执行,只是对代码进行了说明或者掩盖了代码的实际意图。

这些注释通常用于混淆代码,使得代码阅读和分析变得更加困难。

代码执行部分

o457607380 += 'h';

o457607380 += 't';

这两行代码对变量 o457607380 进行了字符串追加操作。

详细分析,字符串操作

o457607380 += 'h'; 将字符串 ‘h’ 追加到 o457607380 变量的当前值之后。

o457607380 += 't'; 将字符串 ‘t’ 追加到 o457607380 变量的当前值之后。

变量 o457607380 的用途

从代码来看,o457607380 变量被用来存储字符串,这些字符串通过逐步追加的方式构建。具体用途可以是任何需要动态构建字符串的场景,比如生成特定的标识符、构建 URL 或路径等。

混淆技术

使用大量的注释和无关的文字是一种常见的代码混淆技术,目的是使恶意行为不那么显而易见。

这类混淆技术常用于恶意软件中,以绕过简单的静态分析工具和提高分析难度。

总结

这段代码通过逐步向变量 o457607380 追加字符串的方式构建一个新的字符串值。同时,代码中插入了大量无关的注释,可能是为了混淆和掩盖其实际目的。这种技术在恶意软件中比较常见,目的是增加逆向工程和分析的难度。

o457607380 = ‘’;

o457607380+=‘h’;

o457607380+=‘t’;

o457607380+=‘t’;

o457607380+=‘p’;

o457607380+=‘s’;

o457607380+=‘:’;

o457607380+=‘/’;

o457607380+=‘/’;

o457607380+=‘s’;

o457607380+=‘h’;

o457607380+=‘a’;

o457607380+=‘k’;

o457607380+=‘y’;

o457607380+=‘a’;

o457607380+=‘s’;

o457607380+=‘t’;

o457607380+=‘a’;

o457607380+=‘t’;

o457607380+=‘u’;

o457607380+=‘e’;

o457607380+=‘s’;

o457607380+=‘t’;

o457607380+=‘r’;

o457607380+=‘a’;

o457607380+=‘d’;

o457607380+=‘e’;

o457607380+=‘.’;

o457607380+=‘c’;

o457607380+=‘o’;

o457607380+=‘m’;

o457607380+=‘/’;

o457607380+=‘A’;

o457607380+=‘6’;

o457607380+=‘F’;

o457607380+=‘/’;

o457607380+=‘6’;

o457607380+=‘1’;

o457607380+=‘6’;

o457607380+=‘2’;

o457607380+=‘3’;

o457607380+=‘1’;

o457607380+=‘6’;

o457607380+=‘0’;

o457607380+=‘3’;

l988241708 = ‘’;

l988241708+=‘q’;

l988241708+=‘u’;

l988241708+=‘i’;

l988241708+=‘.’;

l988241708+=‘q’;

console.log(o457607380, l988241708);

flag{shakyastatuestrade.com}

相关文章:

  • RT-thread的MultiButton按键库的使用
  • Windows 系统下 Android 开发常用快捷键‌的整理
  • CentOS 7.9 上安装 Docker Compose
  • cmake、CMakeLists.txt、make、ninja
  • 【Flink银行反欺诈系统设计方案】5.反欺诈系统全生命周期设计
  • 深入浅出:UniApp 从入门到精通全指南
  • nacos和Eureka的学习
  • python量化交易——金融数据管理最佳实践——使用qteasy大批量自动拉取金融数据
  • 《谈判力》核心原则解读
  • “RStudio UI“快速指南
  • MiniMind用极低的成本训练属于自己的大模型
  • 前后分离文件上传案例,前端HTML,后端Net6开发的webapi(完整源代码)下载
  • 【 <一> 炼丹初探:JavaWeb 的起源与基础】之 Servlet 与 JSP 的协作:MVC 模式的雏形
  • 《ARM64体系结构编程与实践》学习笔记(五)
  • 电脑的系统版本是windows7的,下载pycharm的哪个版本比较好呢?
  • 组合逻辑和时序逻辑
  • 每日一题----------匿名内部类的注意事项
  • SpringCloud注册中心-eureka
  • 【深度学习CV】【图像分类】从CNN(卷积神经网络)、ResNet迁移学习到GPU高效训练优化【案例代码】详解
  • YOLOv8 自定义目标检测
  • 大风+暴雨,中央气象台双预警齐发
  • 广西壮族自治区党委副书记、自治区政府主席蓝天立接受审查调查
  • 俄乌官员即将在土耳其会谈,外交部:支持俄乌开启直接对话
  • 银行积分大幅贬值遭质疑,涉及工行、中行、农行等
  • 缅甸内观冥想的历史漂流:从“人民鸦片”到东方灵修
  • 香港特区立法会通过条例草案便利外地公司迁册来港