SMAP 处于预解除武装状态:一个本不应起作用的栈回绕如何揭示了内核范围的架构妥协”
在分析 Windows 11 的 kernel 利用链时,我注意到向用户态内存进行的栈 pivot 并未触发 SMAP。为此,我设计了三个实验以探究其原因。简而言之:正常的 syscall 入口路径以 RFLAGS.AC=1 的状态进入,因此通过标准 IOCTL 分发到达的任何代码,SMAP 实际上均被禁用。这与 MSRC 在 2020 年所记录的情况一致(Windows 内核构建时并未考虑 SMAP,若要 retrofit 则需修改约 2,900 处代码:此处)。我的结论在此并非新颖,它仅是对当前构建版本中架构性妥协的实验性确认。我只是希望揭示这一盲区。由 /u/Important_Map6928 提交