Luke a Pro

Luke Sun

Developer & Marketer

🇺🇦
EN||

钓鱼攻击

| , 2 minutes reading.

1. 定义

钓鱼 (Phishing) 是一种社会工程攻击,攻击者伪装成可信任的实体,欺骗受害者泄露敏感信息(凭据、财务数据、个人信息)或执行有害操作(点击恶意链接、下载恶意软件)。

与针对软件漏洞的技术性攻击不同,钓鱼攻击针对的是人的因素——利用信任、紧迫感、恐惧或好奇心。

2. 技术原理

钓鱼攻击通常涉及多个技术组件:

常见钓鱼途径:

  1. 邮件钓鱼: 冒充银行、科技公司或雇主发送大量邮件。
  2. 鱼叉式钓鱼: 使用关于特定受害者的个人信息进行针对性攻击。
  3. 鲸钓: 针对高价值个人(高管、名人)的鱼叉式钓鱼。
  4. 短信钓鱼 (Smishing): 通过短信进行钓鱼。
  5. 语音钓鱼 (Vishing): 通过语音电话进行钓鱼。

技术欺骗方法:

  • 域名欺骗: 使用相似域名(g00gle.commicrosoft-security.com)。
  • 邮件头篡改: 伪造「发件人」地址使其看起来合法。
  • 同形字攻击: 使用看起来像 ASCII 的 Unicode 字符(使用西里尔字母 ‘а’ 的 аpple.com)。
  • URL 混淆: 使用短链接服务或误导性锚文本隐藏恶意 URL。
  • 凭据收集页面: 在攻击者控制的域上托管的合法登录页面的像素级克隆。

3. 攻击流程

sequenceDiagram
    participant Attacker as 攻击者
    participant Victim as 受害者
    participant FakeSite as 伪造登录页面
    participant RealSite as 真实服务

    Attacker->>Victim: 发送钓鱼邮件<br/>您的账号将被暂停

    Note over Victim: 邮件看起来来自<br/>合法服务

    Victim->>FakeSite: 点击链接并输入凭据

    FakeSite->>Attacker: 捕获用户名和密码

    FakeSite-->>Victim: 重定向到真实网站<br/>受害者未察觉被盗

    Attacker->>RealSite: 使用窃取的凭据登录

    RealSite-->>Attacker: 授权访问受害者账号

4. 真实案例:Google Docs 钓鱼 (2017)

目标: 全球 Gmail 用户。 漏洞类别: OAuth 令牌钓鱼 / 第三方应用滥用。

攻击过程: 2017 年 5 月,一场高度复杂的钓鱼攻击在 Gmail 中迅速传播。与传统钓鱼不同:

  1. 受害者收到一封看起来像是来自已知联系人的 Google Docs 共享邀请邮件。
  2. 点击「在 Docs 中打开」会重定向到合法的 Google OAuth 页面
  3. OAuth 提示要求用户向一个名为「Google Docs」的应用(实为伪造的第三方应用)授予权限。
  4. 一旦授权,恶意应用就获得了对受害者邮件和联系人的访问权限。
  5. 它立即向所有联系人发送相同的钓鱼邮件,形成病毒式传播。

为何如此有效:

  • 使用合法的 Google 基础设施(OAuth)。
  • 恶意应用被命名为「Google Docs」以显得官方。
  • 来自已知联系人(已被攻陷的账号)。
  • 没有传统的「伪造登录页面」可供检测。

影响: 在 Google 禁用恶意应用之前的一小时内,数百万用户成为攻击目标。这迫使 Google 实施更严格的 OAuth 应用验证政策。

5. 深度防御策略

A. 邮件认证 (SPF、DKIM、DMARC)

在协议层面防止邮件欺骗。

  • SPF(发件人策略框架): 指定哪些服务器可以代表您的域发送邮件。
  • DKIM(域密钥识别邮件): 对邮件进行加密签名以验证真实性。
  • DMARC(基于域的邮件认证): 告诉接收服务器如何处理未通过 SPF/DKIM 的邮件。
# 示例 DNS 记录
example.com. TXT "v=spf1 include:_spf.google.com -all"
example.com. TXT "v=DMARC1; p=reject; rua=mailto:[email protected]"

B. 多因素认证 (MFA)

即使凭据被钓鱼,攻击者也无法在没有第二因素的情况下访问账号。

  • 硬件密钥 (FIDO2/WebAuthn): 具有抗钓鱼能力,因为它们会验证源域。
  • TOTP 应用: 比短信更好,但仍容易受到实时钓鱼代理的攻击。
  • 推送通知: 可能被「MFA 疲劳」攻击绕过,但仍增加了阻力。

C. 安全意识培训

技术控制无法阻止用户主动输入凭据。

  • 模拟钓鱼: 定期进行假钓鱼活动以测试和教育员工。
  • 报告机制: 邮件客户端中易于使用的一键「报告钓鱼」按钮。
  • 即时培训: 当用户未能识别模拟攻击时立即进行教育。

D. 邮件过滤和链接保护

  • URL 重写: 通过安全扫描器代理所有被点击的链接。
  • 附件沙箱: 在隔离环境中引爆可疑文件。
  • 冒充检测: 基于 AI 的检测,识别冒充高管的邮件。

E. 浏览器和 DNS 保护

  • 安全浏览 API: 浏览器会警告用户已知的钓鱼网站(Google Safe Browsing)。
  • DNS 过滤: 在网络层面阻止对已知恶意域的访问。
  • 密码管理器: 仅在合法域上自动填充,帮助用户检测伪造网站。

6. 参考资料