Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2022-21971-Windows-Runtime-RCE — 针对CVE-2022-21971的概念验证利用程序,这是Windows运行时中prauthproviders.dll的一个未初始化指针释放漏洞,通过Word或写字板中精心构造的RTF文档触发。 | Kitploit
工具/GitHubGitHub/tufanturhan/cve-2022-21971-windows-runtime-rce
内存取证漏洞分析漏洞利用逆向工程调试器二进制利用
GitHubtufanturhan/cve-2022-21971-windows-runtime-rce

CVE-2022-21971-Windows-Runtime-RCE

针对CVE-2022-21971的概念验证利用程序,这是Windows运行时中prauthproviders.dll的一个未初始化指针释放漏洞,通过Word或写字板中精心构造的RTF文档触发。

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
查看仓库
2144年前尚未审核

CVE-2022-21971: prauthproviders 中的未初始化指针释放

根因

WapAuthProvider::CreateInstance 构造函数分配并初始化了一个 WapAuthProvider 对象(0x78 字节),但未能完全初始化其状态。

偏移 0x50 处的指针未初始化,并在析构函数被调用时(在 WapAuthProvider::~WapAuthProvider 中)被释放:

root@kitploit:~
prauthproviders!WapAuthProvider::~WapAuthProvider+0x38:
00007ffd`a91f3078 488b4b50        mov     rcx,qword ptr [rbx+50h] ds:000001cf`efe35fd0=c0c0c0c0c0c0c0c0

0:011> 
prauthproviders!WapAuthProvider::~WapAuthProvider+0x3c:
00007ffd`a91f307c 4883634000      and     qword ptr [rbx+40h],0 ds:000001cf`efe35fc0=0000000000000000

0:011> 
prauthproviders!WapAuthProvider::~WapAuthProvider+0x41:
00007ffd`a91f3081 48ff1578ad0000  call    qword ptr [prauthproviders!_imp_LocalFree (00007ffd`a91fde00)] ds:00007ffd`a91fde00={KERNELBASE!LocalFree (00007ffd`ccdb0620)

以下是使用未初始化数据的函数,参见 [0] 和 [1]:

root@kitploit:~
void WapAuthProvider::~WapAuthProvider(__int64 this) {
  void *v2; // rcx
  void *v3; // rcx

  *(_QWORD *)this = &WapAuthProvider::`vftable';
  LocalFree(*(HLOCAL *)(this + 56));
  v2 = *(void **)(this + 64);
  *(_QWORD *)(this + 56) = 0i64;
  LocalFree(v2);
  v3 = *(void **)(this + 80);       // <-- [0] uninitialized
  *(_QWORD *)(this + 64) = 0i64;
  LocalFree(v3);                    // <-- [1] free
  *(_QWORD *)(this + 80) = 0i64;
}

复现步骤

  1. 通过 Gflags 在 winword.exe 上启用 PageHeap
  2. 启动 Word,将调试器附加到其进程
  3. 在 Word 中打开 cve-2022-21971.rtf
root@kitploit:~
(1c84.11b4): Access violation - code c0000005 (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
verifier!AVrfpDphFindBusyMemoryNoCheck+0x8a:
00007ffd`78d84742 817ac0bbbbcdab  cmp     dword ptr [rdx-40h],0ABCDBBBBh ds:c0c0c0c0`c0c0c080=????????

0:011> kc
 # Call Site
00 verifier!AVrfpDphFindBusyMemoryNoCheck
01 verifier!AVrfpDphFindBusyMemory
02 verifier!AVrfpDphFindBusyMemoryAndRemoveFromBusyList
03 verifier!AVrfpDebugPageHeapFree
04 ntdll!RtlDebugFreeHeap
05 ntdll!RtlpFreeHeap
06 ntdll!RtlpFreeHeapInternal
07 ntdll!RtlFreeHeap
08 KERNELBASE!LocalFree
09 prauthproviders!WapAuthProvider::~WapAuthProvider
0a prauthproviders!WapAuthProvider::`vector deleting destructor'
0b prauthproviders!WapAuthProvider::Release
0c prauthproviders!CClassFactory::CreateInstance
0d combase!CServerContextActivator::CreateInstance
0e combase!ActivationPropertiesIn::DelegateCreateInstance
0f combase!CApartmentActivator::CreateInstance

我已经在 Windows 10 x64 虚拟机以及 Windows 11 x64 上使用写字板(但需要点击一次)和 Office Word 2019 重现了此问题。

下载工具