CVE-2026-68820 深度分析:Lazarus 利用 WinSock afd.sys 零日完成内核提权
概述
2026 年 8 月 11 日,微软发布 8 月 Patch Tuesday 更新,修复了 421 个 CVE(62 个 Critical),其中 CVE-2026-68820 是唯一确认在野利用的零日漏洞。该漏洞位于 Windows Ancillary Function Driver for WinSock(afd.sys)中,属于 use-after-free 竞争条件,CVSS 评分 7.0(Important)。
朝鲜 Lazarus 组织在 Operation Dream Job 攻击行动中利用此漏洞长达至少 5 周(编译产物时间戳为 2026 年 7 月 7 日),针对欧洲和印度的国防、航空航天企业,部署新版 FudModule 内核 rootkit 实现完整系统控制。
CISA 在补丁发布当天(8 月 11 日)即将其加入 KEV 目录,联邦机构修复截止日期为 8 月 25 日。
核心数据:421 CVE / 62 Critical / 3 zero-day / 1 在野利用 / 5 周攻击窗口 / afd.sys 第 4 次被 Lazarus 利用
漏洞技术分析
1.1 afd.sys:WinSock 的内核桥梁
afd.sys(Ancillary Function Driver)是 Windows 网络套接字栈的核心内核驱动,负责将用户态 WinSock API 调用(socket()、bind()、listen()、accept() 等)转换为内核态的 TDI(Transport Driver Interface)或 WFP(Windows Filtering Platform)操作。
┌─────────────────────────────────────────────────┐
│ 用户态应用程序 │
│ socket() / bind() / listen() / accept() │
└──────────────────┬──────────────────────────────┘
│ WinSock API (ws2_32.dll)
▼
┌─────────────────────────────────────────────────┐
│ AFD.sys (内核驱动) │
│ ┌─────────────────────────────────────────┐ │
│ │ socket state 管理结构 │ │
│ │ ┌─────────┐ ┌─────────┐ ┌────────┐ │ │
│ │ │ Socket A │ │ Socket B │ │ Socket C│ │ │
│ │ └────┬────┘ └─────────┘ └────────┘ │ │
│ │ │ │ │
│ │ ◆ UAF 触发点: 竞争条件下 │ │
│ │ 已释放的 socket state 被再次访问 │ │
│ └─────────────────────────────────────────┘ │
└──────────────────┬──────────────────────────────┘
│ TDI / WFP
▼
┌─────────────────────────────────────────────────┐
│ TCP/IP 协议栈 (tcpip.sys) │
└─────────────────────────────────────────────────┘1.2 Use-After-Free 竞争条件
漏洞本质是 afd.sys 在处理网络套接字状态时缺乏线程同步。当两个线程竞争访问同一个 socket state 对象时:
- 线程 A 发起关闭操作,释放 socket state 内存
- 线程 B 在释放后仍尝试访问该 socket state
- 攻击者通过精确控制时序,让线程 B 访问被释放的内存区域
- 通过堆喷射(heap spray)在释放的内存位置放置恶意数据
- 线程 B 将恶意数据当作合法 socket state 使用,产生内核读写原语
// 简化的漏洞触发逻辑(概念演示)
// 线程 A:关闭 socket 触发释放
DWORD WINAPI CloseSocketThread(LPVOID param) {
SOCKET s = *(SOCKET*)param;
closesocket(s); // afd.sys 释放 socket state
return 0;
}
// 线程 B:并发操作触发 UAF
DWORD WINAPI RaceThread(LPVOID param) {
SOCKET s = *(SOCKET*)param;
// 在 socket state 被释放后仍然尝试操作
// 此时 afd.sys 访问已释放的内存
DWORD bytesReturned;
WSAIoctl(s, SIO_GET_EXTENSION_FUNCTION_POINTER,
NULL, 0, NULL, 0,
&bytesReturned, NULL, NULL);
return 0;
}
// 攻击者需要在释放和访问之间插入堆喷射
// 将恶意对象放置在被释放的内存位置
void HeapSpray() {
// 使用 NtAllocateVirtualName 在内核池中
// 分配恶意对象覆盖被释放的 socket state
// 使线程 B 的访问读取到攻击者控制的数据
}1.3 CVSS 7.0 的欺骗性
CVSS 7.0 的评分低估了实际风险:
| 维度 | 值 | 分析 |
|---|---|---|
| Attack Vector | Local | 需要本地代码执行权限 |
| Attack Complexity | Low | 竞争条件可控 |
| Privileges Required | Low | 普通用户权限即可 |
| User Interaction | None | 无需用户交互 |
| Scope | Unchanged | 影响范围限于当前系统 |
| Impact (C/I/A) | High/H/High | 完全控制 |
虽然需要本地代码执行作为前提,但 Lazarus 的攻击链通过社会工程学(虚假招聘)实现初始访问,使这一前提条件变得轻而易举。
Lazarus 攻击链全貌
2.1 Operation Dream Job 回归
Operation Dream Job 是 Lazarus 自 2020 年以来持续运行的社会工程学攻击行动,2026 年的最新一波针对欧洲(法国、德国)和印度的国防、航空航天、航空业。
┌─────────────────────────────────────────────────────────────────┐
│ Operation Dream Job 攻击链 │
├─────────────────────────────────────────────────────────────────┤
│ │
│ 阶段 1: 社会工程学 │
│ ┌─────────────────────────────────────────┐ │
│ │ LinkedIn 虚假招聘消息 │ │
│ │ (伪装 Lockheed Martin / 防务承包商招聘) │ │
│ └──────────────────┬──────────────────────┘ │
│ │ │
│ 阶段 2: 初始访问(双链并行) │
│ ┌──────────────────┴──────────────────────┐ │
│ │ │ │
│ ▼ Chain 1: DLL 侧加载 ▼ Chain 2: 木马化应用 │
│ ┌──────────────────────┐ ┌──────────────────────┐ │
│ │ 加密 ZIP 包: │ │ SecurityPDF: │ │
│ │ - PDFViewer.exe │ │ (木马化 MuPDF) │ │
│ │ - libmupdf.dll (恶意) │ │ 伪装 Enveil 公司 │ │
│ │ - payload.pdf │ │ SEO 操纵搜索排名 │ │
│ └──────────┬───────────┘ └──────────┬───────────┘ │
│ │ │ │
│ 阶段 3: 恶意载荷执行 │
│ ▼ ▼ │
│ ┌──────────────────────┐ ┌──────────────────────┐ │
│ │ MISTPEN 下载器 │ │ Troy 后门 │ │
│ │ C2: Microsoft OneDrive│ │ 通过 Microsoft Graph │ │
│ │ (Microsoft Graph API) │ │ API 通信 │ │
│ └──────────┬───────────┘ └──────────┬───────────┘ │
│ │ │ │
│ 阶段 4: 内核提权 │
│ ▼ ▼ │
│ ┌──────────────────────────────────────────────────┐ │
│ │ CVE-2026-68820 exploit │ │
│ │ afd.sys use-after-free → SYSTEM │ │
│ └──────────────────────┬───────────────────────────┘ │
│ │ │
│ 阶段 5: 持久化 │
│ ▼ │
│ ┌──────────────────────────────────────────────────┐ │
│ │ FudModule Rootkit (新版) │ │
│ │ - 篡改 Smart App Control │ │
│ │ - 通用安全产品抑制引擎 │ │
│ │ - 内核级持久化 │ │
│ └──────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────┘2.2 感染链 1:DLL 侧加载 + OneDrive C2
Chain 1 使用经典的 DLL 侧加载技术:
受害者收到加密 ZIP 包,包含三个文件:
- 合法的数字签名 PDF 查看器(
PDFViewer.exe) - 恶意
libmupdf.dll(替换合法 MuPDF 库) - 加密载荷(
.pdf扩展名)
- 合法的数字签名 PDF 查看器(
当受害者启动查看器时,Windows 加载恶意的
libmupdf.dll恶意 DLL 解密并显示一个逼真的 Lockheed Martin 招聘文档(提供合理开壳理由)
同时在内存中解密并执行 MISTPEN 下载器
MISTPEN 的 C2 通信不使用传统 C2 服务器,而是通过 Microsoft OneDrive 和 Microsoft Graph API 路由——使所有命令流量与正常企业 OneDrive 流量混为一体
2.3 感染链 2:SecurityPDF 木马化应用
Chain 2 在 2026 年 7 月被发现:
- 攻击者创建了伪装成隐私技术公司 Enveil 的钓鱼网站
- 钓鱼网站通过 SEO 操纵获得搜索排名首位
- 受害者下载并安装 SecurityPDF(木马化的开源 MuPDF 查看器)
- 当受害者打开攻击者构造的 PDF 时,触发隐藏标记检查
- 执行 Troy 后门
2.4 FudModule Rootkit 新版特征
FudModule 是 Lazarus 的标志性内核 rootkit,此次发现的版本有以下升级:
| 特征 | 旧版本 | 2026 新版本 |
|---|---|---|
| 部署方式 | CVE-2024-21338 等旧漏洞 | CVE-2026-68820 (afd.sys UAF) |
| 安全产品绕过 | Defender / AhnLab 专用绕过 | 通用安全产品抑制引擎 |
| Smart App Control | 不涉及 | 重置 reputable-policy 状态 |
| 目标系统 | Windows 10/11 | Windows 11 build 26100/26200 |
| C2 通道 | 专用 C2 服务器 | Microsoft OneDrive + Graph API |
2.5 afd.sys:Lazarus 的老朋友
afd.sys 已成为 Lazarus 的反复目标。自 2022 年以来,该驱动已被确认在野利用 4 次,其中本漏洞为第 4 次:
2024-08: CVE-2024-38193 afd.sys UAF → FudModule v3.0(Lazarus 确认)
2025-02: CVE-2025-21418 afd.sys UAF(确认在野,归因未明)
2025-05: CVE-2025-32709 afd.sys UAF(确认在野,归因未明)
2026-08: CVE-2026-68820 afd.sys UAF → FudModule v3.1(Lazarus 确认,本文)afd.sys 之所以成为重复目标,是因为它:
- 在所有 Windows 系统上默认加载
- 从低权限代码可达
- 处理复杂的网络状态管理(易于引入竞争条件)
- 与用户态网络 API 有大量交互面
发现时间线
2026-07-07 FudModule rootkit 编译时间戳(最早攻击证据)
│
│ ← Lazarus 在野利用窗口(≥5 周)→
│
2026-07-28 Check Point Research 向微软报告漏洞
│
2026-07-31 微软确认漏洞
│
2026-08-05 微软分配 CVE-2026-68820 编号
│
2026-08-11 补丁发布(Patch Tuesday)
│
2026-08-11 CISA 加入 KEV 目录
│
2026-08-25 联邦机构修复截止日期Check Point 安全研究员 Moshe Marelus 和 David Driker 获得漏洞发现致谢。
8 月 Patch Tuesday 全景
| 维度 | 数据 |
|---|---|
| CVE 总数 | 421(Rapid7 统计)/ 398(ZDI 统计) |
| Critical | 62 |
| 零日漏洞 | 3(1 个在野利用 + 2 个公开披露) |
| CVSS 9.8 RCE | 4 个(DNS / WDS / QUIC / HPC Pack) |
三个零日漏洞
| CVE | 组件 | 类型 | CVSS | 状态 |
|---|---|---|---|---|
| CVE-2026-68820 | afd.sys | UAF 提权 | 7.0 | 在野利用 |
| CVE-2026-62832 | User Profile Service | 链接解析提权 | 7.8 | 公开披露 |
| CVE-2026-72971 | unionfs.sys | 篡改 | - | 公开披露 |
4 个 CVSS 9.8 未认证 RCE
| CVE | 组件 | 特征 |
|---|---|---|
| CVE-2026-62878 | Windows DNS Server | 堆栈缓冲区溢出,ZDI 评估可蠕虫化 |
| CVE-2026-62893 | Windows Deployment Services | TFTP 未认证触发 |
| CVE-2026-62815 | Microsoft QUIC | 传输层协议实现 |
| CVE-2026-59124 | HPC Pack | 非默认安装,但利用可能性较高 |
企业应急响应方案
5.1 修补优先级排序
优先级 1 (立即): CVE-2026-68820
- 已被 Lazarus 在野利用
- 联邦 KEV 截止 8/25
- 所有 Windows 系统优先部署
优先级 2 (24h): CVE-2026-62878 DNS Server
- CVSS 9.8 可蠕虫化 RCE
- 暴露 DNS 服务器的组织优先
优先级 3 (72h): CVE-2026-62832 + CVE-2026-72971
- 公开披露的提权漏洞
- 细节已流通,武器化窗口短
优先级 4 (本周): 4 个 CVSS 9.8 RCE
- 确认环境中是否存在对应服务
- HPC Pack 非默认安装可延后5.2 检测与狩猎
如果环境中存在 Windows 终端且可能被 Lazarus 攻击面覆盖,应执行以下狩猎操作:
# 检查 afd.sys 版本是否已修补
Get-Item "C:\Windows\System32\drivers\afd.sys" |
Select-Object Name, VersionInfo, LastWriteTime
# 检查 FudModule rootkit 指标
# 1. Smart App Control 状态是否被篡改
Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\CI\Policy" -ErrorAction SilentlyContinue
# 2. 检查可疑的内核驱动加载
Get-WinEvent -FilterHashtable @{
LogName='Microsoft-Windows-CodeIntegrity/Operational'
ID=3002,3003,3004,3010,3023
} -MaxEvents 50 |
Where-Object { $_.Message -match "FudModule|afd|unsigned" }
# 3. 检查 MISTPEN C2 通道 (OneDrive 异常)
# 查看 wsaipcmd.exe 或类似进程的异常网络连接
Get-NetTCPConnection |
Where-Object {
$_.RemotePort -in @(443,80) -and
$_.RemoteAddress -notin @("127.0.0.1","::1")
} |
Where-Object {
(Get-Process -Id $_.OwningProcess -ErrorAction SilentlyContinue).ProcessName -match
"pdfviewer|securitypdf|mupdf"
}5.3 网络层检测
MISTPEN 通过 OneDrive/Graph API 通信,使得网络层检测极具挑战性。推荐检测策略:
# 检测异常的 Microsoft Graph API 使用模式
# 正常用户: 工作时间, 少量文件操作
# MISTPEN: 可能在非工作时间, 频繁小文件操作
import re
from datetime import datetime
# Sigma 规则: 检测异常 OneDrive C2 模式
sigma_rule = {
"title": "Potential MISTPEN OneDrive C2 Activity",
"status": "experimental",
"description": "Detects potential MISTPEN C2 via Microsoft Graph API",
"logsource": {
"product": "windows",
"service": "sysmon"
},
"detection": {
"selection": {
"EventID": 3, # Network connection
"DestinationHostname|contains":
["graph.microsoft.com", "onedrive.live.com"]
},
"filter": {
"Image|endswith":
["\\onedrive.exe", "\\Excel.exe", "\\Word.exe",
"\\PowerPoint.exe", "\\Teams.exe"]
},
"condition": "selection and not filter"
},
"falsepositives": [
"Custom applications using Graph API",
"Third-party OneDrive sync clients"
],
"level": "medium"
}防御启示
6.1 afd.sys 需要纵深防御
afd.sys 被 Lazarus 4 次利用的事实表明,单靠补丁不够。建议:
- 启用 Windows Defender Application Guard:隔离高风险文档打开行为
- 部署 ETW 内核监控:监控 afd.sys 异常的 IRP 请求模式
- 限制非管理员套接字操作:通过 WDAC 策略限制不必要的网络 API 访问
- 监控 Smart App Control 状态变更:FudModule 的篡改行为可被注册表监控捕获
6.2 社会工程学防护
Operation Dream Job 的核心入口是 LinkedIn 社会工程:
- 对国防、航空航天等高危行业员工进行定向钓鱼演练
- 部署邮件网关规则拦截含 PDF 附件的疑似招聘邮件
- 限制员工在工作设备上安装非授权 PDF 查看器
- 监控从 LinkedIn 外部链接下载的文件
6.3 消除合法基础设施滥用
Lazarus 将 OneDrive 作为 C2 通道的策略需要新的检测范式:
传统 C2 检测:
IP 信誉 → 域名信誉 → 流量签名
现代 C2 检测 (合法基础设施):
行为基线 → 通信频率 → 数据外传模式
✓ 异常的 Graph API 调用频率
✓ 非工作时间的大量小文件操作
✓ 从非标准进程发起的 OneDrive 连接
✓ 异常的 OAuth token 使用模式总结
CVE-2026-68820 的技术复杂度并不算顶级——use-after-free 竞争条件是内核漏洞的常见类型。真正令其成为 2026 年度标志性安全事件的,是 Lazarus 将其编织进一个完整、精密的攻击链:
- 社会工程 → 虚假招聘
- 初始访问 → DLL 侧加载 + 木马化应用
- C2 通道 → Microsoft OneDrive(合法云服务)
- 内核提权 → CVE-2026-68820
- 持久化 → FudModule rootkit
这条链条展示了国家级 APT 组织如何将一个 CVSS 7.0 的"中等"漏洞转化为完整的系统控制能力。afd.sys 第 4 次被 Lazarus 利用也说明,关键内核驱动需要超越补丁的纵深防御。
参考资料
- Check Point Research: Operation Dream Job Technical Report — 漏洞发现者完整技术报告
- Microsoft Security Response Center: August 2026 Patch Tuesday — 官方补丁公告
- CISA KEV Catalog — CVE-2026-68820 联邦修复截止 8/25
- Rapid7: August 2026 Patch Tuesday Analysis — 421 CVE 独立统计与分析
- The CyberSignal: afd.sys Zero-Day Deep Dive — 技术深度分析
- GCN: Lazarus Five-Week Exploitation Window — 5 周攻击窗口报道

