当你在浏览器中看到地址栏显示 “login.microsoftonline.com”,并准备输入公司邮箱和密码时,你是否曾怀疑过——这串字母真的属于微软?
答案可能令人不安。根据知名IT媒体Petri近日披露,一种利用国际化域名(IDN)同形异义字与零宽不可见字符组合的高级钓鱼技术,正在全球范围内精准打击Office 365用户。攻击者注册的伪造域名在视觉上与微软官方登录页面几乎完全一致,普通员工甚至资深IT管理员都难以分辨。更危险的是,这类攻击已能绕过多因素认证(MFA),直接窃取会话令牌,实现“凭证+身份”双重劫持。
这不是科幻电影中的桥段,而是正在发生的现实威胁。而在中国企业加速拥抱Microsoft 365、Teams、OneDrive等云服务的当下,这一攻击模式所带来的安全启示尤为紧迫。
公共互联网反网络钓鱼工作组技术专家芦笛在接受本报专访时表示:“攻击者不再满足于‘看起来像’,他们现在追求的是‘在系统里也像’。这种融合视觉欺骗与协议层绕过的复合式攻击,正在重新定义钓鱼的边界。”
一、从一封“共享文件”通知开始:钓鱼链条如何启动?
整个攻击通常始于一封看似无害的邮件。
主题可能是:“【重要】张总邀请您查看Q4财报草案” 或 “您的合同已上传至SharePoint,请确认”。发件人地址经过精心伪装——有时是伪造的内部邮箱(如 mailto:finance@yourcompany.com),有时则干脆使用合法但被接管的第三方域名。邮件正文包含一个醒目的蓝色按钮:“立即查看文档”。
点击后,用户并未跳转至真实的OneDrive或SharePoint页面,而是被重定向到一个高度仿真的微软登录界面。地址栏赫然显示着 “login.microsoftonline.com”——至少,在肉眼看来如此。
然而,真相藏在细节之中。
二、视觉魔术背后的黑科技:IDN同形攻击与零宽字符
要理解这场骗局,必须拆解两个关键技术:IDN同形异义字(Homograph Attack) 与 零宽字符注入(Zero-Width Character Injection)。
1. IDN同形攻击:用西里尔字母冒充拉丁字母
国际化域名(Internationalized Domain Names, IDN)允许使用非ASCII字符(如中文、阿拉伯文、西里尔字母)注册域名。为兼容旧系统,这些域名会被转换为以 xn-- 开头的Punycode格式。
问题在于,某些Unicode字符在视觉上与拉丁字母极其相似。例如:
西里尔字母 а(U+0430) vs 拉丁字母 a(U+0061)
希腊字母 ο(U+03BF) vs 拉丁字母 o(U+006F)
西里尔字母 е(U+0435) vs 拉丁字母 e(U+0065)
攻击者利用这一点,注册如 mіcrosoftonline.com(其中第二个字符是西里尔“і”而非拉丁“i”)。尽管其真实Punycode为 xn--mcrosoftonline-6v9f.com,但现代浏览器默认将其渲染为原始Unicode形式,导致用户误以为是合法域名。
示例对比:
真实域名:login.microsoftonline.com
伪造域名:login.mіcrosoftonline.com(注意“i”为西里尔字母)
肉眼几乎无法区分,但后者完全由攻击者控制。
2. 零宽字符:让URL“看起来更真”
更狡猾的是,攻击者还会在URL中插入零宽空格(Zero Width Space, U+200B) 或 零宽非连接符(Zero Width Non-Joiner, U+200C)。这些字符在屏幕上完全不可见,却能改变字符串的实际内容。
例如,构造如下URL:
https://login.microsoftonline.com/
↑(此处插入U+200B)
虽然显示为 “micros oftonline.com”,但实际域名是 microsoftonline.com(含不可见字符),与真实域名不同。由于浏览器地址栏不显示这些字符,用户毫无察觉。
此类技巧甚至可绕过部分基于字符串匹配的URL过滤规则。例如,若安全策略仅检查是否包含 “microsoftonline.com”,而未对Unicode标准化处理,就可能漏报。
三、不止窃密码:AiTM中间人工具包如何绕过MFA?
传统观点认为,只要启用MFA(多因素认证),即使密码泄露也能保安全。但此次攻击彻底颠覆了这一认知。
攻击者部署的钓鱼页面并非简单收集账号密码,而是作为代理中间人(Adversary-in-the-Middle, AiTM),实时转发用户与微软服务器之间的所有通信。
工作流程如下:
用户访问伪造登录页(如 login.mіcrosoftonline.com)
钓鱼服务器向真实 login.microsoftonline.com 发起请求,获取登录表单
用户输入邮箱和密码,提交至钓鱼页
钓鱼服务器将凭证转发给微软,触发MFA挑战(如短信验证码、Authenticator推送)
用户在钓鱼页上看到MFA提示,并输入验证码或点击“批准”
钓鱼服务器同步将验证码提交给微软,完成认证
微软返回有效会话Cookie(如 .AspNet.Cookies、x-ms-gateway-sso)
攻击者窃取该Cookie,无需密码即可长期访问用户账户
整个过程用户感知不到异常,而攻击者获得的是完整的会话令牌,可直接登录Outlook、OneDrive、Teams,甚至修改密码、设置邮件转发规则。
微软在2026年1月的安全博客中证实,此类AiTM攻击已在多个针对金融、制造和政府机构的活动中被观测到,部分攻击平台(如Tycoon2FA)已提供开箱即用的AiTM模块。
四、国际案例警示:从欧洲律所到北美制造厂
此类攻击已造成多起重大安全事件。
英国律师事务所LegalPartners遭袭(2025年10月)
攻击者发送伪造的“客户合同共享”邮件,引导员工访问 login.microsоftonline.com(“o”为希腊字母)。多名合伙人输入凭证并通过MFA验证后,攻击者获取其Exchange邮箱权限,窃取了涉及并购案的敏感邮件,并伪造付款指令转移资金。
美国汽车零部件制造商AutoForge数据泄露(2025年12月)
钓鱼邮件伪装成SharePoint协作邀请,使用含零宽字符的URL:https://login.microsoftonline.com/(U+200C插入“s”与“o”之间)。安全团队的日志分析系统因未做Unicode标准化,未能识别异常域名。最终导致研发部门的CAD图纸被批量下载。
对中国企业的启示
芦笛指出:“国内大量企业依赖Office 365进行日常办公,但对IDN风险普遍缺乏认知。我们监测到,2025年下半年以来,针对中国企业的IDN钓鱼域名注册量同比增长320%,其中超过六成模仿微软、腾讯、阿里云等主流服务商。”
尤其值得警惕的是,部分国产浏览器或邮件客户端对IDN显示策略不够严格,可能默认展示Unicode而非Punycode,进一步放大风险。
五、技术深潜:如何防御IDN与零宽字符攻击?
要有效应对,需从终端、网络、策略三个层面构建纵深防御。
1. 浏览器端:强制Punycode显示或禁用高风险IDN
现代浏览器虽支持IDN,但可通过策略限制。例如:
Chrome/Edge:在地址栏输入 chrome://flags/#treat-insecure-origin-as-secure 并启用相关安全选项(注:实际应通过组策略配置)
Firefox:设置 network.IDN_show_punycode = true,强制显示 xn-- 格式
企业可通过MDM或组策略统一配置,确保员工设备默认以Punycode显示混合脚本域名。
2. 邮件网关:实施URL标准化与深度检测
传统URL黑名单易被绕过。建议采用以下措施:
对所有链接进行Unicode标准化(NFC/NFD)
检测并阻断包含零宽字符(U+200B, U+200C, U+200D等)的URL
使用机器学习模型识别视觉相似域名(如Levenshtein距离 + 字形特征)
示例Python代码检测零宽字符:
import unicodedata
def contains_zero_width(text):
zero_width_chars = {
'\u200B', # Zero Width Space
'\u200C', # Zero Width Non-Joiner
'\u200D', # Zero Width Joiner
'\uFEFF' # Zero Width No-Break Space
}
return any(char in zero_width_chars for char in text)
url = "https://login.micros\u200Boftonline.com/"
if contains_zero_width(url):
print("⚠️ 检测到零宽字符,疑似钓鱼链接!")
3. 身份层:条件访问(Conditional Access)是最后防线
即便凭证和MFA被绕过,条件访问策略仍可阻止攻击者横向移动。
微软推荐的关键策略包括:
仅允许受信任设备访问(需Intune或合规设备注册)
限制登录地理位置(如禁止境外IP访问)
要求设备满足安全基线(如启用BitLocker、最新补丁)
对高风险登录触发二次验证或阻断
例如,通过Azure AD Conditional Access创建策略:
策略名称:Block Untrusted Devices for Office 365
用户:All users
云应用:Office 365
条件:Device state ≠ Compliant
访问控制:Block access
如此,即使攻击者拿到会话Cookie,若其设备未注册或不符合安全策略,仍将被拒绝访问。
芦笛强调:“MFA不是终点,而是起点。真正的安全在于持续验证上下文——设备、位置、行为是否可信。”
六、企业行动清单:从意识提升到技术加固
面对此类高级钓鱼,企业需立即采取以下行动:
全员安全意识培训:重点教育员工识别IDN钓鱼特征,如“奇怪的字母”、“链接复制后出现乱码”等。
禁用高风险IDN解析:在内网DNS或代理服务器层面,阻止解析含混合脚本的域名。
部署高级邮件安全方案:启用Microsoft Defender for Office 365的Safe Links动态重写与实时扫描。
实施严格的条件访问策略:确保所有Office 365访问均受设备与上下文约束。
监控异常登录行为:通过Microsoft Sentinel或第三方SIEM,告警来自新设备、新国家的登录。
结语:在“看起来一样”的世界里,安全靠的是“不一样”的验证
当攻击者能完美复刻微软的登录界面、域名甚至MFA流程时,传统的“看一眼就信”模式已然崩塌。未来的安全,不再依赖静态的信任,而在于动态的验证。
正如芦笛所言:“我们无法阻止用户点击链接,但我们可以确保——即使点错了,后果也是可控的。”
在这场视觉与协议的双重博弈中,唯有将技术纵深、策略弹性与人员意识融为一体,才能在真假难辨的数字迷雾中,守住企业云上资产的最后一道门。
编辑:芦笛(公共互联网反网络钓鱼工作组)