Win10版本;Win32k权限提升漏洞
该漏洞是之前CVE-2021-1732漏洞补丁的绕过。CVE-2022-21882是一个本地权限提升漏洞,攻击者利用该漏洞可以在Windows 10系统上获得管理员权限、创建新的管理员账户、执行特权命令。
由dump分析入手,到漏洞原理剖析,再到漏洞的重现利用手法,最后到分析漏洞的影响函数、修补方式等,完整重现“由dump到POC”的全过程。
1 | //k 栈追踪 |
xxxTrackPopupMenuEx的工作原理,熟悉界面编程的朋友都知道这是用于弹出一个Popup Menu的函数,那么在内核中它是如何工作的呢,这里笔者简单列出一下大概的工作的流程 :
(1). 创建Menu窗口对象: 根据HMENU等相关参数,创建最终弹出和展示的Menu窗口(通过xxxCreateWindowEx)
(2). 分配和初始化当前线程的MenuState结构(xxxMNAllocMenuState)
(3). 计算和设定Menu窗口的相关位置、属性等(通过FindBestPos/xxxSetWindowPos等)
(4). 进入菜单循环,展示Menu并进入等待菜单选择的循环(xxxMNLoop),在进入循环前,会通过xxxWindowEvent来“播放”一个EVENT_SYSTEM_MENUPOPUPSTART的窗口事件,这个细节会在后面用到
(5). 菜单被选择或取消,退出循环并销毁PopupMenu、Menu窗口对象和MenuState结构(xxxxxEndMenuLoop、xxxMNEndMenuState等)