HTTP 协议栈中的漏洞,可导致远程代码执行和潜在的系统崩溃。
CVE-2022-21907 是 Windows 10 的 HTTP 协议栈(http.sys)中的一个漏洞,攻击者可通过向使用 HTTP 协议栈处理数据包的目标服务器发送特制数据包来利用该漏洞。这可能导致拒绝服务(DDoS)攻击,使服务器无响应或崩溃。
利用该漏洞可破坏服务,并无需身份验证或用户交互即可使 Windows 10 版本 2004 机器脱机。
首先,你的硬盘上必须有一些可用空间才能测试此漏洞(在安装虚拟机后,你可以调整内存分配和磁盘分配)。
要开始测试此漏洞,请使用以下链接安装 Vagrant 和 VirtualBox:
在 CMD 或 PowerShell 中输入 VBoxManage 命令,验证其是否可用。如果你收到类似以下错误:
"术语 'VBoxManage' 不被识别为 cmdlet 的名称..."
那么请确保 VirtualBox 路径(例如 C:\Program Files\Oracle\VirtualBox)已添加到系统环境变量中。接下来,运行以下命令:
VBoxManage natnetwork add --netname MyCustomisedNet --network "192.168.100.0/24" --enable --dhcp on
克隆以下仓库以获取所需的 Vagrant 文件:
git clone https://github.com/kamal-marouane/CVE-2022-21907.git
克隆仓库后,通过执行以下命令进入你机器上的受害机器目录:
cd CVE-2022-21907/Victim Machine
在此文件夹中你可以找到 Vagranfile,你只需执行:
vagrant up

然后等待该 box 被下载并添加。由于其大小约为 5 GB,这需要很长时间(上图仅为示意)。
安装结束后,你可以打开 VirtualBox,看到 MyWindowsVul 已被添加并正在运行。
点击 Show,你可以看到你的 Victim Machine 正在运行
现在让我们配置攻击者机器,你需要访问攻击者机器:
cd ../Victim Machine
在此文件夹中你可以找到 Vagranfile,你只需回到你的机器并执行:
vagrant up
等待 box 被下载并添加,然后机器将运行。点击 Show,你将看到攻击者机器正在运行。
现在机器已配置完毕,可以使用了! 以下是访问攻击者机器的用户名和密码:
username : attacker
password : att
要利用该漏洞,请仔细遵循以下步骤:
1 - 打开正在运行的虚拟机:
2 - 在受害机器中,打开 cmd 并输入 ipconfig 以查找之前设置的 IPv4 地址:
ipconfig
然后你将能够看到使用上述 VBoxManage 命令建立的 IPv4 地址。
注意!!: 你虚拟机上的 IP 地址可能与我的不同。请确保使用执行 ipconfig 命令后获得的 IP 地址(请注意,默认网关必须为 192.168.100.1,这是我们已通过 VBoxManage 命令创建的,因此你的受害机器中的 IP 地址应为以下形式:192.168.100.X)。
3 - 在 Kali Linux 机器上,进入利用目录并运行利用脚本:
cd CVE-2022-21907-Exploit
4 - 在攻击者机器上执行 python 脚本以使受害机器崩溃:
python3 CVE-2022-21907-exploit.py -i VICTIM_MACHINE_IP
此处你必须将 VICTIM_MACHINE_IP 替换为在受害机器中获得的地址。
5 - 恭喜!!!受害机器已崩溃 :/
按照“利用”部分中提到的所有步骤操作后,受害机器将会崩溃。