微软用户正遭遇一场新型二维码钓鱼攻击,恶意邮件中嵌入了经过武器化处理的二维码。
这场于2025年10月初现身的攻击,利用人们对二维码认证及设备配对流程的信任,诱骗目标用户扫描可投递信息窃取程序的恶意二维码。
事件最初由Gen Threat Labs分析师发现,他们注意到仿冒微软品牌的异常二维码附件出现在企业Office 365通知邮件中。扫描这些二维码的收件人会被重定向至遭入侵的Azure CDN节点,进而触发分阶段载荷投递流程。
研究人员识别出多种感染载体:其中一类钓鱼邮件伪装成Microsoft Teams安全警报,指示用户扫描二维码以解决”紧急安全问题”;另一类则冒充Microsoft Authenticator注册提示,承诺扫描即可获得”增强登录保护”。由于众多企业推广基于二维码的多因素认证设置,这些诱饵初看极具迷惑性。
Gen Threat Labs研究人员指出,受害者会看到熟悉的微软标识与格式正确的链接,这显著提升了攻击的覆盖范围与成功率。
攻击影响与机制
攻击后果涵盖凭证窃取与系统沦陷。扫描二维码后,受害者会获得一个指向恶意重定向脚本的短链接。该脚本会执行环境检测——验证Windows区域设置、已安装的Defender版本及沙箱指标——随后下载Packaged Infostealer可执行文件。
这个二进制文件通过创建名为”MSAuthSync”的计划任务实现持久化,确保每次用户登录时自动执行。被窃取的凭证与主机遥测数据通过HTTPS协议外泄至攻击者控制端点。
二维码防病毒规避技术
本次攻击的核心创新在于其二维码防病毒规避技术:恶意软件并非嵌入单个二维码图像,而是将通过PDF内容流绘制的二维码拆分为两个重叠图像层。标准二维码解码器会忽略非常规配色与分割片段,但定制解析器能在解码前重新组合图像层。
以下Python代码片段演示了防御者如何重构并解码此类分割二维码:
```python
from PIL import Image
import zbarlight
# 加载两个图像层
layer1 = Image.open('qr_part1.png').convert('RGB')
layer2 = Image.open('qr_part2.png').convert('RGB')
# 通过选取各图层更亮像素进行重组
merged = Image.new('RGB', layer1.size)
pixels1, pixels2 = layer1.load(), layer2.load()
for x in range(layer1.width):
for y in range(layer1.height):
pixels = pixels1[x, y] if sum(pixels1[x, y]) > sum(pixels2[x, y]) else pixels2[x, y]
merged.putpixel((x, y), pixels)
# 解码合并后的二维码
codes = zbarlight.scan_codes('qrcode', merged)
print('解码所得URL:', codes[0].decode())
```
这种技术凸显了武器化二维码图像如何同时规避静态防病毒签名与简单的视觉检测,表明现代钓鱼攻击中实施分层分析的迫切必要性。
发表评论
您还未登录,请先登录。
登录