一封看似来自老板的邮件,语气、签名、连常用的催促方式都一模一样,要求紧急转账到一个新账户。另一封伪装成快递通知,附一个运单查询链接,点进去的页面和官方站几乎没有区别。
这类邮件通常不是攻破了哪一道关卡,而是从几道关卡的作用域缝隙里穿过去的。 每一关都有明确的边界,攻击者要做的只是选一条不落在任何边界之内的路径。所以「怎么防钓鱼」这个问法不好用,好用的问法是:这一封,本该由哪一关挡住?
- 一共四道关卡:身份验证(协议层)、内容与附件检测(网关层)、账号安全(源头层)、人与流程(最后一层)。
- 第一关挡伪造,挡不住合法域名:SPF、DKIM、DMARC 校验的是「这封信是否真的来自它声称的域名」。相似域名是攻击者自己注册的合法域名,三项校验会全部通过 [4]。
- 第三关是唯一能挡住账号劫持的一关:账号被盗后发出的邮件走的是合法服务器、合法域名,三项校验全部通过 —— 前两关在原理上就无法识别。官方给的对策是让账密失窃也发不出信 [2]。
- 第四关不靠记住,靠流程:官方明确写着,任何技术手段都无法 100% 杜绝钓鱼邮件 [1]。但这一层的可靠性最低,所以要把判断固化成动作(第二渠道核实、转账双人复核),而不是指望每个人每次都警觉。
- 拿到一封可疑邮件,按三问定位:域名是不是你熟的那个 → 域名对但内容不像这个人 → 域名与账号都正常但要你做敏感动作。三问分别指向第一、第三、第四关(见 1.1)。
一、先看全景:四道关卡各管一段
先把四道关卡和它们各自的作用域摊开。看这张表的方式是:每一关的「挡不住」,都要在后面某一关找到承接者
|
关卡
|
位置
|
挡得住
|
挡不住
|
这一格由哪一关承接
|
|
一 · 身份验证
|
协议层,收信服务器校验
|
用未配置记录的域名直接伪造发件地址,或者被盗的合法账号 [4]
|
攻击者自己注册的相似域名 [4]
|
第三关和第四关 —— 让账密失窃也发不出信,核对完整地址,并按核实流程处置
|
|
二 · 内容与附件
|
网关层,收信时扫描
|
已知特征的垃圾与钓鱼内容、已知病毒附件 [2]
|
高仿真话术;未收录的新附件样本 [1]
|
第四关 —— 按「要求你做什么」触发核实,不做内容判断
|
|
三 · 账号安全
|
源头层,登录与发信授权
|
账密泄露后被用来发信 [2]
|
员工自己被骗,主动做出转账或提交动作
|
第四关
|
|
四 · 人与流程
|
最后一层
|
前三关放过来的、需要人做判断的那部分
|
没有流程约束时,任何一次判断失误
|
无 —— 这就是前三关不能省的原因
|
这张表连起来读,就是一封钓鱼邮件能到达收件箱的完整解释:它选的路径依次落在了各关的「挡不住」那一格里。
最后一行值得单独看一眼:第四关没有承接者。四道关卡不是冗余堆叠,而是互相兜底 —— 前三关每少一关,落到人身上的判断量就多一层,而人这一层没有下一关可以接。 反过来,补防线的顺序也从这张表读得出来:先看自己缺的是哪一格,而不是笼统地「加强邮件安全」。
1.1 拿到一封可疑邮件,三问定位到哪一关
上面那张表是静态的作用域说明。真正收到一封可疑邮件时,按下面三问走一遍就能定位到该由哪一关处置。顺序不能反 —— 先看域名,再看账号,最后看它要你做什么。
|
顺序
|
问什么
|
答案指向哪一关
|
|
1
|
发件域名是你熟悉的那一个吗? 点开发件人详情看完整地址,不看显示名
|
不是 → 相似域名,落在第一关的盲区,按第四关处置(核对 + 核实流程)[1]
|
|
2
|
域名对得上,但内容或时机不像这个人?
|
可能是账号被盗,属第三关;同时通知对方本人与管理员 [2]
|
|
3
|
域名对、账号也正常,但要求你做敏感动作?
|
属第四关,走核实流程,不对内容真伪做判断
|
三问都过了,也不代表这封邮件一定安全 —— 只代表它没有落在前三关的已知盲区里。
二、第一关:身份验证,挡伪造挡不住合法域名
2.1 这一关到底在验什么
SPF、DKIM、DMARC 三项要回答的是同一个问题:这封信是否真的来自它声称的那个域名。
|
协议
|
验的是什么
|
在钓鱼防护里的作用
|
|
SPF
|
发信服务器的 IP 是否在该域名授权的范围内 [4]
|
让未授权的服务器无法用你的域名发信
|
|
DKIM
|
邮件是否带有该域名私钥的有效签名 [4]
|
让签名域可被收件方独立验证
|
|
DMARC
|
前两项的结果是否与收件人看到的 From 域对齐,以及不对齐时怎么处理 [4]
|
把两份证据绑到用户实际看到的那个域名上
|
DMARC 那一行的「对齐」是关键,也最容易被漏掉。 SPF 校验的是信封发件人域,DKIM 校验的是签名域,这两个域都可能与收件人在客户端看到的 From 域不同 [4]。只有要求它们与 From 域对齐,校验结果才对收件人有意义。三项记录具体怎么写、怎么排障,另有专篇,这里只讲作用域。
2.2 为什么相似域名能全部通过校验
这是这一关最重要的边界,也是最常被误解的地方。
官方文档给的示例很直观:客户的邮箱是 hellenliu@ali****.com,而伪装的发件人是 helleneliu@all****.com [1]。链接同理 —— 可信站点是 taobao.com,邮件里实际是 taoboa.com [1]。
关键在于:这个相似域名是攻击者自己注册的,他当然可以给它配上完整正确的 SPF 与 DKIM。 这封信确实来自它声称的那个域名,只不过那个域名不是你的。
|
攻击方式
|
三项校验的结果
|
原因
|
|
用未配置记录的域名冒充
|
失败,可被拒收
|
发信 IP 不在授权范围内 [4]
|
|
直接冒用你的域名
|
失败,可被拒收
|
同上
|
|
注册相似域名
|
全部通过
|
域名是攻击者的,记录由他自己配 [4]
|
|
使用被盗的合法账号
|
全部通过
|
发信主体本就是该域名的合法用户
|
所以有一个结论值得记住:协议验证只防伪造,不防劫持,也不防「换一个域名」。 后两类要靠第三关和第四关。
三、第二关:内容与附件,挡已知挡不住高仿真
3.1 这一关实际做了哪几件事
反垃圾网关不是单一规则,而是多层组合。按官方文档的分类,这一关的手段大致分四组 [2]:
|
分组
|
具体手段 [2]
|
|
攻击防护与异常检测
|
多重频率保护、动态灰名单、黑白名单检查、引入多个反垃圾联盟组织的 RBL 结果
|
|
身份识别
|
多种发信方域名验证,用于拦截伪造发件人的钓鱼与欺诈邮件
|
|
行为与内容检测
|
发信行为检查、邮件指纹识别、坏词检查、数百条垃圾场景规则
|
|
钓鱼与病毒专项
|
依托阿里巴巴安全团队维护的钓鱼库做专项检测;病毒使用神灯云查杀引擎,支持每天上千万文件检测
|
还有一项与误判直接相关的机制值得单独提:智能纠偏 —— 基于用户历史发信行为建立信誉体系,配合系统设定的数百个正常邮件场景,在多层过滤的基础上做信誉纠偏,以减少误判 [2]。整套系统的定位是面向亿级用户量,采用人工智能机器识别加多重组合推理规则 [2]。
这里有一处重叠要交代清楚:表格第二行的「身份识别」,做的正是第一关那件事 —— 发信方域名验证。官方把它列在反垃圾系统里,说明这两关在产品实现上往往是同一个网关的不同检查环节,而不是两个独立组件 [2]。这里按作用域把它们拆成两关,是为了讲清各自的边界;实际在后台,你可能只看到一处开关。
3.2 厂商自己写明的漏网
官方在讲附件诱骗时明确写道:虽然邮箱系统已经提供了附件病毒扫描功能,但仍难免有漏网之鱼,因此仍请不要随意点击下载附件 [1]。
这句话来自厂商自己的安全指南,比任何第三方评测都更有说服力 —— 它划出了这一关的真实边界。三类内容最容易落在边界之外:
- 高仿真话术。 官方列举的骗术里,有「盗用官网图片、伪造知名域名或公司域名,甚至完全盗用官网或用户常用联系人的特定信息」这一类 [1]。当邮件在语气、上下文和内部术语上都与正常商务往来一致时,基于内容特征的判别可用的信号就很少了。
- 中间跳转。 邮件里的链接先指向一个本身信誉正常的地址,再跳到最终页面。扫描时看到的域名与用户最终到达的页面不是一回事。
- 未收录的附件样本。 官方给的对策不是「扫描会拦住」,而是「不要随意点击下载」[1]。这个措辞本身就说明了它的把握程度。
官方还给了两个几乎零成本的人工判别点:诈骗邮件常把收件人称作「尊敬的客户」「尊敬的用户」而不是真实姓名;以及正文里用「图片无法显示」的伪装诱使点击 [1]。
四、第三关:账号,唯一能挡住劫持的一关
4.1 为什么前两关在原理上就挡不住
当一个真实的企业邮箱账号被攻击者控制后,从它发出的每一封邮件都走合法服务器、用合法域名、通过合法的三项校验。第一关无从判断,第二关面对的是一封由真实同事账号发出、内容也贴合上下文的邮件。
官方对这条路径写得很直接:通过外域发到用户邮箱的垃圾或钓鱼邮件基本都能被网关挡掉,但账户和密码被盗后,不法分子通过被盗账户发送钓鱼邮件,会造成更严重的信息泄露和财产损失 [2]。
官方也点明了入口:主要是撞库破解密码和弱密码猜测,拿到账密后利用 SMTP 协议发信 [2]。
4.2 官方给的是预防,不是检测
这一点值得强调,因为它与常见思路不同。面对账号被盗,容易想到的是「监控异常登录并告警」—— 那是检测,事后发现。官方给的方向是预防:让账密即使泄露也发不出信。
目标写得很明确:通过这些能力,就算用户的账户和密码被盗,不法分子也无法进行垃圾邮件的发送 [2]。
|
作用(概括说明,非官方原文表述)
|
|
|
双重认证
|
仅有密码不足以完成登录
|
|
专属密码认证(第三方客户端安全密码)
|
客户端不再直接使用主密码
|
|
访问策略
|
限定可访问的来源与方式
|
|
定期修改密码提醒
|
压缩已泄露凭据的有效窗口
|
阿里邮箱西南服务中心-大成云另给了几条与账号直接相关的建议:任何索要账号密码的邮件立即举报删除;要核实真实性就手动输入公司网址,而不是点邮件里的链接;不同网络服务不要用同一套密码;公共场所不让电脑保存账密;即便是个人电脑也要定期在已登录站点手动强制注销 [1]。
4.3 已经被盗之后,必须查一件事
除了强制下线和重置密码,还有一项容易被漏掉:检查该账号有没有被设置恶意转发规则。
攻击者控制账号后常做的一件事,是加一条自动转发规则,把该账号的邮件静默转发出去。这条规则的生效不依赖密码 —— 即使随后改了密码,转发规则仍可能继续起作用。 处置时如果只改密码不查规则,账号看起来恢复了,邮件其实还在往外走。
五、第四关:人,不靠记住靠流程
5.1 为什么必须有这一层
官方安全指南把这件事写在了防护建议的最后一条:任何技术手段都无法 100% 杜绝钓鱼邮件的产生,因此建议开展组织内用户的岗前和定期培训,以及垃圾邮件发送演练 [1]。
厂商自己承认技术有上限,这就是第四关存在的依据 —— 不是因为员工不够小心,而是因为前三关有明确的作用域,总会有内容落在它们之外。
5.2 但这一层的可靠性最低,所以要落在流程上
这一关和前三关有本质差别:前三关是机器执行,稳定;这一关是人在有时间压力的情况下做判断,不稳定。所以正确的做法不是要求每个人每次都警觉,而是把判断动作固化成流程,让它不依赖当时的注意力。
|
场景
|
固化成什么动作
|
|
收到涉及转账、变更收款账号的邮件
|
一律走第二渠道核实(电话、当面、内部即时通讯),不在邮件里确认;金额超过内部阈值的加双人复核
|
|
收到索要账号密码、要求登录的邮件
|
一律举报并删除,不点链接;要核实就手动输入公司网址 [1]
|
|
收到要求下载附件的邮件
|
与发件人另行确认后再打开,官方建议不要随意点击下载 [1]
|
|
收到绕过正常审批流程的紧急要求
|
「紧急」本身即为核实触发条件,流程不因催促而简化
|
这四条的共同点是:判断标准与邮件内容无关,只与「这封邮件要求你做什么」有关。 这样即使话术做得再逼真,触发的仍是同一套核实动作。
演练的意义也在这里 —— 不是统计谁上当,而是让「停一下、走第二渠道」这个动作被反复执行到成为默认反应。样本要贴近真实攻击手法,明显粗劣的测试邮件起不到这个作用。
六、按规模的最低配置组合
配置顺序的依据是第一节那张表:先补作用域最广、成本最低的那一格。
|
企业规模
|
最低组合
|
为什么是这个顺序
|
|
5 人以下
|
三项记录配齐 + 启用基础反垃圾过滤
|
只需在 DNS 加几条记录,就堵住了「本域名被直接伪造」这一整类 [4]
|
|
50 人以下
|
人数上来后账密泄露的面变大,而这一层是唯一能挡劫持的
|
|
|
100 人以上
|
四关配齐:协议 + 网关检测 + 账号策略 + 转账核实流程 + 定期演练 [1]
|
攻击面足够大时,任何一格空缺都会被选中
|
需要说明的是,这三档的划分是按作用域覆盖顺序给出的建议,不是任何标准或法规的要求。企业实际的取舍还要看行业属性与资金往来的频次 —— 财务往来密集的小团队,转账核实流程应当提前到第一档。
七、常见问题(FAQ)
Q: 配了 SPF、DKIM、DMARC,为什么还会收到钓鱼邮件?
因为这三项验的是「这封信是否真的来自它声称的域名」,不是「这封信是否可信」。攻击者注册一个与你相似的域名,再给这个域名配上完整正确的记录,三项校验就会全部通过 —— 信确实来自它声称的域名,只不过那个域名不是你的。同理,被盗的合法账号发出的邮件也会全部通过,因为发信主体本就是该域名的合法用户。这两类要靠账号层的防护和人工核实流程来处理。
Q: 相似域名的钓鱼邮件,到底靠什么防?
不能靠协议校验,它在原理上就会通过。可用的手段有三层:一是收件人核对完整邮箱地址而不只看显示名,官方给的示例是把 hellenliu@ali****.com 换成 helleneliu@all****.com 这类一字之差;二是把涉及转账与账号变更的邮件统一纳入第二渠道核实流程,让判断不依赖于是否看出了拼写差异;三是对本企业的常用域名做注册监控,尽早发现被抢注的近似写法。
Q: 反垃圾系统的拦截率能到多少?
厂商公开文档一般只给定性表述与机制描述,不承诺具体拦截率数值,所以流传的精确百分比大多没有可核验的出处。更值得看的是厂商自己划出的边界:阿里邮箱的官方安全指南写明,虽然系统已提供附件病毒扫描功能,但仍难免有漏网之鱼,因此建议不要随意点击下载附件。这句话比任何百分比都更能说明这一关的把握程度。
Q: 账号被盗后发出的钓鱼邮件,为什么网关拦不住?
因为这封邮件在技术层面没有任何异常。它从合法的邮件服务器发出,使用合法的发件域名,SPF、DKIM、DMARC 三项校验全部通过,内容还贴合真实的往来上下文。官方文档明确指出,外域发来的钓鱼邮件基本都能被网关挡掉,但账密被盗后由被盗账户发出的钓鱼邮件,会造成更严重的信息泄露和财产损失。这一类只能在源头拦 —— 让账密即使泄露也无法用于发信。
Q: 员工误点了钓鱼链接,应该做哪几件事?
先断开该设备的网络连接,再修改邮箱密码并通知管理员。管理员侧有三项必查:一是该账号有没有被设置自动转发规则,二是最近的登录记录有没有异常来源,三是该账号已发送的邮件里有没有向外发出的钓鱼邮件。第一项最容易被漏掉 —— 转发规则的生效不依赖密码,只改密码不删规则,邮件仍会继续往外走。
Q: 账号被盗的入口通常是什么?
官方文档点明的主要方式是撞库破解密码和弱密码猜测,拿到账号密码后利用 SMTP 协议发送邮件。这也解释了为什么官方给的对策集中在认证环节而不是监控环节:启用双重认证、为第三方客户端使用专属密码、配置访问策略、开启定期修改密码提醒,目标是让账密即使泄露也无法完成登录或发信。
Q: 怎么快速判断一封邮件可疑?
有几个与内容无关的信号可用。官方列出的两条最省力:称呼是「尊敬的客户」「尊敬的用户」而不是你的真实姓名;正文用「图片无法显示」之类的伪装诱使点击。除此之外,更可靠的判断依据不是邮件长什么样,而是它要求你做什么 —— 凡是要求转账、变更收款账号、提交账号密码、或绕过正常审批的,一律触发核实动作,不管邮件看起来多正常。
Q: 小企业没有专职安全人员,最优先做哪一件?
先把三项记录配齐。这是成本最低、覆盖面最广的一项 —— 只需在域名 DNS 里加几条记录,就堵住了「本域名被直接伪造发件地址」这一整类攻击。第二件是启用双重认证,因为账号层是唯一能挡住劫持型攻击的一关。如果企业有较频繁的资金往来,转账的第二渠道核实流程应当与前两件并列,而不是往后排 —— 它不需要任何技术投入。
Q: 钓鱼演练是必要的吗?
官方安全指南把培训与演练列为建议措施,理由是任何技术手段都无法 100% 杜绝钓鱼邮件。但演练的目标要设对:不是统计谁上当然后通报,而是让「停一下、走第二渠道核实」这个动作被反复执行到成为默认反应。演练样本要贴近真实攻击手法,明显粗劣的测试邮件起不到训练作用。同时要清楚这一层的可靠性最低,所以它应当以流程约束为主、以个人警觉为辅。
结语
关于钓鱼邮件防护,最值得带走的是三句话。
第一,先问「这封该由哪一关挡住」,再决定补什么。 四道关卡各有明确作用域,笼统地「加强邮件安全」通常补不到缺的那一格。
第二,协议验证只防伪造,不防劫持,也不防换一个域名。 相似域名和被盗账号都会让三项校验全部通过,这不是配置没做好,是这一关的边界所在。
第三,人这一关要落在流程上,不要落在警觉上。 判断标准与邮件内容无关,只与它要求你做什么有关 —— 涉及转账、账号变更、绕过审批的,一律走第二渠道。
对缺少专职安全与运维的企业,DNS 记录配置、账号安全策略初始化与上线后的核对也可以交由本地服务商协助推进。以官方授权的阿里邮箱西南服务中心-大成云为例,其服务范围包含邮箱配置与相关的安全策略对接支持 [5]。具体企业的暴露面与优先级,仍应结合实际业务与资产状况判断。
References
- 阿里邮箱账号安全相关官方配置文档(四篇) —— 什么是双重认证、访问策略、配置第三方客户端访问控制与安全策略、如何设置定期修改密码提醒
阿里邮箱西南服务中心