关于钓鱼邮件的学习笔记
字数 1747 2025-08-18 11:39:30

钓鱼邮件攻防技术详解

一、钓鱼邮件攻击概述

钓鱼邮件攻击是网络安全中常见的攻击手段,主要分为两种方式:

  1. 构造钓鱼页面引诱受害者点击,获取目标账号密码或利用浏览器漏洞获取权限
  2. 发送带有恶意附件的邮件,引诱受害者运行

二、攻击准备工作

1. 基础设施准备

  • VPS:用于托管钓鱼网站和接收shell
  • 域名:用于伪装,增强可信度
  • 邮件服务器:用于SMTP Relay发送伪造邮件
  • 恶意样本:需要做免杀处理以提高成功率

2. 钓鱼网站开发

  • 制作高仿真的目标网站页面
  • 开发接收账号密码的后端功能
  • 实现自动登录目标并截图的功能(针对token时效性)
  • 搭建远控服务端(MSF、CS、Empire等工具)

3. 信息收集

  • 收集目标公司近期活动信息
  • 分析HR常用邮件模板和发件习惯
  • 了解目标公司常用域名和邮件格式

三、邮件伪造技术

1. SMTP协议基础

SMTP邮件传输主要分为三步:

  1. 建立连接(TCP三次握手)
  2. 传输数据
  3. 断开连接

2. 常用SMTP命令

  • HELO/EHLO:向服务器标识用户身份
  • MAIL FROM:指定发件人
  • RCPT TO:指定收件人
  • DATA:开始传输邮件内容
  • QUIT:结束会话

3. 伪造原理

利用SMTP服务器在进行邮件中转时不需要认证的特点,可以任意输入发件人信息,实现邮件伪造。

4. 伪造工具

  • 在线工具:https://emkei.cz/
  • 开源工具:https://github.com/Macr0phag3/email_hack

四、防护技术

1. SPF(Sender Policy Framework)

  • 原理:通过DNS的TXT记录指定允许发送邮件的IP地址
  • 查询方法
    dig -t txt example.com  # Linux
    nslookup -type=txt example.com  # Windows
    
  • 策略结尾
    • -all:硬拒绝,不在列表中的IP直接拒绝
    • ~all:软拒绝,不在列表中的IP可能被标记为垃圾邮件

2. DKIM(DomainKeys Identified Mail)

  • 原理:在邮件中嵌入数字签名,接收方通过DNS查询公钥验证
  • 密钥获取
    1. 从邮件头获取selector值(s字段)
    2. 查询DNS记录:selector._domainkey.example.com

3. DMARC(Domain-based Message Authentication)

  • 原理:基于SPF和DKIM的可扩展协议,定义未通过验证时的处理策略
  • 策略参数
    • p=none:不采取特定措施
    • p=quarantine:标记为可疑
    • p=reject:直接拒绝
    • pct:应用策略的邮件百分比
    • rua:反馈接收邮箱

五、邮件网关检测原理

1. 规则库

  • 将已知垃圾邮件特征加入规则库进行匹配

2. 邮件头检测

  • 检查mail from和from字段一致性
  • 验证SPF、DKIM、DMARC记录

3. 防病毒

  • 解码BASE64编码的附件
  • 使用防病毒引擎或沙箱技术检测恶意行为

4. 黑白名单

  • 基于发件箱、源IP、域名的快速过滤机制

5. 频率检测

  • 对短时间内大量发送的邮件进行拦截

6. 超链接检测

  • 检查邮件中文本链接与实际超链接是否一致
  • 匹配恶意链接规则库

7. 机器学习

  • 识别与真实域名相似的伪造域名(如tools.com vs t00ls.com)

六、绕过防护技术

1. 绕过SPF和DKIM

  • 选择没有或使用~all策略的小众域名
  • 删除邮件中的DKIM头信息
  • 使用swaks等工具发送伪造邮件

2. 绕过超链接检测

  • 保持文本链接与超链接一致
  • 不加超链接,利用邮件客户端自动添加链接功能

3. 绕过域名检测

  • 收集目标公司未设置SPF记录的子域名
  • 尝试匹配白名单正则策略(如itit@example.com)

4. 另类绕过方法

  • 攻击SPF记录中的IP,获取白名单IP控制权
  • 利用开放的25端口SMTP服务器转发邮件

七、实战注意事项

  1. 基础设施准备需要大量时间和资源
  2. 信息收集的质量直接影响钓鱼成功率
  3. 绕过技术需要根据目标防护特点灵活调整
  4. 注意避免过早暴露攻击行为
  5. 云服务可能因举报被封,需准备备用方案

八、总结

钓鱼邮件攻防是网络安全中持续对抗的领域,攻击者不断开发新的绕过技术,防御方则持续完善检测机制。了解双方的技术原理和实现方式,有助于构建更全面的安全防护体系。

钓鱼邮件攻防技术详解 一、钓鱼邮件攻击概述 钓鱼邮件攻击是网络安全中常见的攻击手段,主要分为两种方式: 构造钓鱼页面引诱受害者点击,获取目标账号密码或利用浏览器漏洞获取权限 发送带有恶意附件的邮件,引诱受害者运行 二、攻击准备工作 1. 基础设施准备 VPS :用于托管钓鱼网站和接收shell 域名 :用于伪装,增强可信度 邮件服务器 :用于SMTP Relay发送伪造邮件 恶意样本 :需要做免杀处理以提高成功率 2. 钓鱼网站开发 制作高仿真的目标网站页面 开发接收账号密码的后端功能 实现自动登录目标并截图的功能(针对token时效性) 搭建远控服务端(MSF、CS、Empire等工具) 3. 信息收集 收集目标公司近期活动信息 分析HR常用邮件模板和发件习惯 了解目标公司常用域名和邮件格式 三、邮件伪造技术 1. SMTP协议基础 SMTP邮件传输主要分为三步: 建立连接(TCP三次握手) 传输数据 断开连接 2. 常用SMTP命令 HELO/EHLO:向服务器标识用户身份 MAIL FROM:指定发件人 RCPT TO:指定收件人 DATA:开始传输邮件内容 QUIT:结束会话 3. 伪造原理 利用SMTP服务器在进行邮件中转时不需要认证的特点,可以任意输入发件人信息,实现邮件伪造。 4. 伪造工具 在线工具:https://emkei.cz/ 开源工具:https://github.com/Macr0phag3/email_ hack 四、防护技术 1. SPF(Sender Policy Framework) 原理 :通过DNS的TXT记录指定允许发送邮件的IP地址 查询方法 : 策略结尾 : -all :硬拒绝,不在列表中的IP直接拒绝 ~all :软拒绝,不在列表中的IP可能被标记为垃圾邮件 2. DKIM(DomainKeys Identified Mail) 原理 :在邮件中嵌入数字签名,接收方通过DNS查询公钥验证 密钥获取 : 从邮件头获取selector值(s字段) 查询DNS记录: selector._domainkey.example.com 3. DMARC(Domain-based Message Authentication) 原理 :基于SPF和DKIM的可扩展协议,定义未通过验证时的处理策略 策略参数 : p=none :不采取特定措施 p=quarantine :标记为可疑 p=reject :直接拒绝 pct :应用策略的邮件百分比 rua :反馈接收邮箱 五、邮件网关检测原理 1. 规则库 将已知垃圾邮件特征加入规则库进行匹配 2. 邮件头检测 检查mail from和from字段一致性 验证SPF、DKIM、DMARC记录 3. 防病毒 解码BASE64编码的附件 使用防病毒引擎或沙箱技术检测恶意行为 4. 黑白名单 基于发件箱、源IP、域名的快速过滤机制 5. 频率检测 对短时间内大量发送的邮件进行拦截 6. 超链接检测 检查邮件中文本链接与实际超链接是否一致 匹配恶意链接规则库 7. 机器学习 识别与真实域名相似的伪造域名(如tools.com vs t00ls.com) 六、绕过防护技术 1. 绕过SPF和DKIM 选择没有或使用 ~all 策略的小众域名 删除邮件中的DKIM头信息 使用swaks等工具发送伪造邮件 2. 绕过超链接检测 保持文本链接与超链接一致 不加超链接,利用邮件客户端自动添加链接功能 3. 绕过域名检测 收集目标公司未设置SPF记录的子域名 尝试匹配白名单正则策略(如itit@example.com) 4. 另类绕过方法 攻击SPF记录中的IP,获取白名单IP控制权 利用开放的25端口SMTP服务器转发邮件 七、实战注意事项 基础设施准备需要大量时间和资源 信息收集的质量直接影响钓鱼成功率 绕过技术需要根据目标防护特点灵活调整 注意避免过早暴露攻击行为 云服务可能因举报被封,需准备备用方案 八、总结 钓鱼邮件攻防是网络安全中持续对抗的领域,攻击者不断开发新的绕过技术,防御方则持续完善检测机制。了解双方的技术原理和实现方式,有助于构建更全面的安全防护体系。