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

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

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

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

工具目录

分类

查看所有分类
Loading categories
cve-2023-20573-poc — 展示CVE-2023-20573的概念验证:AMD SEV-SNP中的一个硬件漏洞,允许在KVM中抑制异常重注入,从而实现指令级利用。 | Kitploit
工具/GitHubGitHub/freax13/cve-2023-20573-poc
漏洞分析漏洞利用模糊测试硬件安全二进制利用
GitHubfreax13/cve-2023-20573-poc

cve-2023-20573-poc

展示CVE-2023-20573的概念验证:AMD SEV-SNP中的一个硬件漏洞,允许在KVM中抑制异常重注入,从而实现指令级利用。

查看仓库
632年前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

PoC 使用方法

本仓库包含一个 VMM,它使用自定义内核启动 SEV-SNP 虚拟机。该 VMM 和内核是我个人项目的一个精简版本。需要在主机上运行经过修改的 Linux 内核:https://github.com/Freax13/linux/tree/for-amd。

可按照以下方式运行概念验证:

root@kitploit:~
cd host
cargo run -p vmm

说明

该代码在两条指令之间来回跳转:

root@kitploit:~
2:
    nop
    jmp 2b

当 FLAGS 寄存器中的 TF 标志被设置时,异常应被生成,且指令指针将在两条指令之间交替。

客户机内核定义了一个异常处理程序,仅记录中断栈帧中报告的指令指针。理论上,日志应如下所示:

root@kitploit:~
...
[INFO  kernel/src/exception.rs:50] nop
[INFO  kernel/src/exception.rs:56] jmp
[INFO  kernel/src/exception.rs:50] nop
[INFO  kernel/src/exception.rs:56] jmp
[INFO  kernel/src/exception.rs:50] nop
[INFO  kernel/src/exception.rs:56] jmp
[INFO  kernel/src/exception.rs:50] nop
[INFO  kernel/src/exception.rs:56] jmp
[INFO  kernel/src/exception.rs:50] nop
[INFO  kernel/src/exception.rs:56] jmp
[INFO  kernel/src/exception.rs:50] nop
[INFO  kernel/src/exception.rs:56] jmp
...

然而,在实际情况下,经过修改的主机内核抑制了重新注入,导致以下日志:

root@kitploit:~
...
[INFO  kernel/src/exception.rs:56] jmp
[INFO  kernel/src/exception.rs:50] nop
[INFO  kernel/src/exception.rs:56] jmp
[INFO  kernel/src/exception.rs:50] nop
[INFO  kernel/src/exception.rs:50] nop
[INFO  kernel/src/exception.rs:53] 上一条指令也是 nop
[INFO  kernel/src/exception.rs:56] jmp
[INFO  kernel/src/exception.rs:50] nop
[INFO  kernel/src/exception.rs:56] jmp
[INFO  kernel/src/exception.rs:50] nop
[INFO  kernel/src/exception.rs:56] jmp
[INFO  kernel/src/exception.rs:50] nop
[INFO  kernel/src/exception.rs:56] jmp
[INFO  kernel/src/exception.rs:56] jmp
[INFO  kernel/src/exception.rs:59] 上一条指令也是 jmp
[INFO  kernel/src/exception.rs:50] nop
[INFO  kernel/src/exception.rs:56] jmp
[INFO  kernel/src/exception.rs:50] nop
...

被抑制的事件将出现在主机内核日志中:

root@kitploit:~
...
[798678.660473] kvm_amd: exit_int_info=80000301 exit_info_1=500000004 exit_info_2=180000000 exit_code=400
[798678.678645] kvm_amd: exit_int_info=80000301 exit_info_1=500000004 exit_info_2=180000000 exit_code=400
[798678.680906] kvm_amd: exit_int_info=80000301 exit_info_1=500000004 exit_info_2=180000000 exit_code=400
[798678.683491] kvm_amd: exit_int_info=80000301 exit_info_1=500000004 exit_info_2=180000000 exit_code=400
[798678.700844] kvm_amd: exit_int_info=80000301 exit_info_1=500000004 exit_info_2=180000000 exit_code=400
[798678.712970] kvm_amd: exit_int_info=80000301 exit_info_1=500000004 exit_info_2=180000000 exit_code=400
...

这表明 #DB 异常的投递被抑制了。

下载工具