Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
cve-2023-31346-poc — Proof-of-concept demonstrating memory leaks in AMD SEV-SNP firmware guest message headers and CPUID request, enabling extraction of sensitive guest data from physical memory. | Kitploit
Tools/GitHubGitHub/freax13/cve-2023-31346-poc
Memory ForensicsVulnerability AnalysisExploitationHardware SecurityFirmware AnalysisBinary Exploitation
GitHubfreax13/cve-2023-31346-poc

cve-2023-31346-poc

Proof-of-concept demonstrating memory leaks in AMD SEV-SNP firmware guest message headers and CPUID request, enabling extraction of sensitive guest data from physical memory.

View Repository
133 years agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

Firmware Memory Leak

The code here aims to demonstrate the memory leaks in guest messages headers and the CPUID request guest message.

Prerequisites

  • Install rustup.
  • Install a Linux kernel with SEV-SNP host support. I used a kernel with my a few of own patches https://github.com/Freax13/linux/tree/snp-host-v9-rfc-with-my-patches.

Usage

  1. Reboot the machine
  2. Run cargo make run run in the host directory.
  3. Observe the logs for leaked values start values of pAlignedPTReqPayload after firmware initialization.
  4. Run cargo make run run-with id 123 in the host directory. This launches a guest with an id auth block set to all 123.
  5. Observe the logs for id block in the leaked values.
  6. Start a SEV-ES guest.
  7. Observed the logs for leaked launch data. Note that the values here will only appear if more than one page was submitted in a single command. This will only happen if the guest data as submittetd by QEMU is contigous in physical memory. This chances of this are not very good so it might take more than a dozen attemps to trigger this.
Download Tool