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-2025-3052 — Research on CVE-2025-3052, an Insyde firmware vulnerability that exposes an arbitrary write primitive capable of modifying security-critical pointers. | Kitploit
Tools/GitHubGitHub/themalwareguardian/cve-2025-3052
Embedded Systems SecurityVulnerability AnalysisExploitationReverse EngineeringBinary AnalysisLearning & EducationFirmware AnalysisLabs & Practice

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share
GitHub
themalwareguardian/cve-2025-3052

CVE-2025-3052

Research on CVE-2025-3052, an Insyde firmware vulnerability that exposes an arbitrary write primitive capable of modifying security-critical pointers.

View Repository
14 days agoNot yet reviewed

🐞 CVE-2025-3052: IhisiParamBuffer Memory Corruption

This repository centralizes research material related to CVE-2025-3052, a memory corruption vulnerability in a UEFI module signed with Microsoft's third-party certificate that allows an attacker to corrupt security-critical firmware structures, neutralize Secure Boot enforcement, and execute arbitrary unsigned code before the operating system loads. It includes technical analysis of the root cause and exploitation technique, real-world and educational vulnerable binaries, and supporting documentation intended to help researchers understand, reproduce, and experiment with this vulnerability class.




📑 Table of Contents

  • Original Discovery & Official References
  • Vulnerable Binaries (Real-World / Educational)
  • Vulnerability Overview (Analysis, Exploitation, PoC)
  • 📂
    • Secure Boot & Microsoft Certificates
    • Module Discovery & Reconnaissance
    • Exploiting the Vulnerability
    • Attack Flow
    • Affected Modules



🧠 Original Discovery & Official References

CVE-2025-3052 was originally discovered and responsibly disclosed by the Binarly Research Team. Official and community references:

  • Binarly Research Blog (June 10, 2025)
    • Another Crack in the Chain of Trust: Uncovering (Yet Another) Secure Boot Bypass
  • Community reference collection
    • Awesome Bring Your Own Vulnerable UEFI Application



🐜 Vulnerable Binaries

This repository includes two vulnerable binaries, provided with different research and learning objectives.


🧨 Real-World Vulnerable Binary

This binary represents the vulnerability as it existed in the wild.

  • Original vulnerable UEFI application affected by CVE-2025-3052.
  • Intended for real-world analysis and reverse engineering.
  • Signed with Microsoft's third-party UEFI certificate.
  • Extracted from public malware repositories:
Download Tool
  • VirusTotal
  • MalShare

  • 🎓 Educational Vulnerable Binary

    • Fully compilable source code of a simplified educational UEFI application.
    • Reproduces the same vulnerability premise as the real-world binary.
    • Designed to help beginners:
      • Progress gradually toward analyzing the original binary.
      • Avoid heavy reverse engineering at early stages.
      • Understand the vulnerability mechanics.



    🧪 Vulnerability Overview (Analysis, Exploitation, PoC)

    CVE-2025-3052 is a Secure Boot bypass vulnerability affecting UEFI systems, caused by unsafe handling of data retrieved from an NVRAM variable inside a signed UEFI application. The vulnerability allows an attacker to corrupt security-critical firmware structures during the boot process, effectively breaking the UEFI chain of trust and enabling the execution of unsigned code before the operating system is loaded.

    What makes this vulnerability particularly impactful is not only the nature of the bug itself, a memory corruption primitive, but the context in which it exists: a UEFI module signed with Microsoft's third-party UEFI certificate, trusted by default on the vast majority of modern systems. As a result, exploitation occurs at one of the earliest and most privileged execution stages of the platform, prior to OS-level security controls.


    🔐 Secure Boot & Microsoft Certificates

    Secure Boot is a core security feature of UEFI designed to enforce the platform's chain of trust from firmware to operating system. Its primary purpose is to prevent unauthorized or malicious boot components, such as bootkits, from executing during the boot process.

    At a high level, Secure Boot works by cryptographically validating UEFI executables before they are allowed to run. This validation is performed using two firmware-maintained databases:

    • db: Contains trusted Authenticode hashes and trusted root certificates.
    • dbx: Contains revoked or explicitly untrusted hashes and certificates.

    A UEFI application is allowed to execute if either:

    • Its Authenticode hash matches an entry in db, or
    • Its certificate chain validates up to a trusted root certificate present in db, and is not present in dbx.

    By default, most systems ship with the following certificates trusted in db:

    • Microsoft Corporation UEFI CA 2011 - used to sign third-party UEFI components, including the Linux shim.
    • Microsoft Windows Production PCA 2011 - used to sign the Windows bootloader.
    • One or more OEM-owned certificates.

    The vulnerable modules associated with CVE-2025-3052 were signed using the Microsoft Corporation UEFI CA 2011 certificate. Because this certificate is widely trusted across vendors and platforms, any signed application using it can execute on most UEFI systems without user interaction. This broad trust significantly amplifies the impact of a vulnerability within such a module, as it effectively bypasses Secure Boot's intended protection guarantees.


    🔎 Module Discovery & Reconnaissance

    The vulnerable UEFI module was initially discovered during large-scale analysis of UEFI binaries uploaded to public malware repositories, most notably VirusTotal. While the first public submission of the module occurred in November 2024, inspection of its Authenticode signature revealed that it had been signed as early as October 2022, indicating that the binary may have been circulating for a considerable amount of time before detection.

    The original filename observed during analysis was Dtbios-efi64-71.22.efi. Examination of embedded strings, certificate metadata, and file behavior strongly suggested that the module was developed by DT Research, Inc, a vendor specializing in rugged mobile computing devices.

    Further reverse engineering revealed that the module is a BIOS flashing utility, designed to read a firmware image from disk and write it to the system's ROM. Although originally intended for DT Research hardware, the module is not restricted to a specific platform and can execute on any system that trusts the Microsoft third-party UEFI certificate.

    A critical clue during reconnaissance was the presence of the IhisiParamBuffer NVRAM variable. This variable is closely associated with Insyde-based firmware implementations and had previously been involved in other vulnerabilities disclosed by Binarly (e.g., BRLY-2022-023 and BRLY-2023-005). Its presence immediately suggested a potential class of NVRAM-related issues.


    💥 Finding & Exploiting the Vulnerability

    The root cause of CVE-2025-3052 lies in the unsafe use of data read from an NVRAM variable without validation. Specifically:

    • The UEFI application retrieves the value of the IhisiParamBuffer NVRAM variable.
    • This value is treated as a trusted pointer and stored in a global variable at address 0xf7a0.
    • The code subsequently performs a memory write operation at global + 0x18, setting that address to zero.
    • Additional write operations follow, all derived from the same attacker-controlled NVRAM value.
    • No bounds checking, sanity validation, or access control is applied at any point.

    As a result, an attacker who can control the IhisiParamBuffer variable gains the ability to influence where in memory these writes occur. While the write primitive is somewhat constrained, typically allowing writes of zero or small constants to an arbitrary address, it is still powerful enough to corrupt critical firmware state.

    In Binarly's proof of concept, the attack targets the global variable gSecurity2, which holds a pointer to the Security2 Architectural Protocol (for a detailed explanation of this specific exploitation technique, refer to the following repository "TheMalwareGuardian: Exploitation Technique SecureBoot Bypass gSecurity2 Corruption"). This protocol is consulted by the LoadImage service to enforce Secure Boot policy, meaning that overwriting gSecurity2 with a null pointer effectively disables Secure Boot checks at runtime. Crucially, this bypass is transparent to the operating system: once booted, Secure Boot still appears enabled at the OS level even though it has been fully neutralized at the firmware level.

    An important nuance is that on Insyde-based platforms, the IhisiParamBuffer variable is typically locked as read-only, which effectively prevents exploitation on those systems without an additional vulnerability. Ironically, this means the vendor whose IBV introduced the vulnerable variable pattern in the first place is among the least exposed, while all other platforms remain at risk. For cases where the variable is locked, a bypass such as BRLY-2023-005 can be chained to gain write access to the variable before proceeding with exploitation. On systems where the variable is directly writable, the attack is straightforward and highly reliable.


    🎯 Attack Flow

    The following describes the end-to-end attack leveraging CVE-2025-3052, assuming a privileged attacker with OS-level access:

    1. Set the NVRAM variable: The attacker sets the IhisiParamBuffer NVRAM variable from the operating system to an arbitrary target address, pointing it at gSecurity2.
    2. Register the payload: The attacker registers the vulnerable signed module in the UEFI Boot Manager (or replaces an existing OS loader with it), and additionally registers a second unsigned module containing the actual payload.
    3. Reboot: After the system reboots, the firmware enters the Boot Device Selection (BDS) phase and begins executing registered boot entries.
    4. Execution: The vulnerable signed module runs first. Its constrained write primitive is used to overwrite gSecurity2 with null, disabling Secure Boot enforcement. With checks neutralized, the firmware proceeds to load and execute the unsigned payload module, granting the attacker arbitrary code execution at the end of the DXE phase, before the operating system has any opportunity to establish its own defenses.

    📦 Affected Modules

    Microsoft determined that 14 different UEFI modules were affected and mitigated the issue by adding their hashes to the Secure Boot dbx.

    Module NameAuthenticode SHA-256 Hash
    BiosFlashShell-efi64-80.02.efiC54A4060B3A76FA045B7B60EEAEBC8389780376BA3EF1F63D417BA1B5528E95
    BiosFlashShell-efi64-81.02.efiCBFAA286144EB2D165A6B17245BAD4F73058436C7292BE56DC6EBA29A369ADDF
    Dtbios-efi64-70.17.efi9D7E7174C281C6526B44C632BAA8C3320ADDD0C77DC90778CC14893882D74618
    Dtbios-efi64-70.18.efi9B1F35052CFC5FB06DABE5E8F7B747F081DA28D722DB59ADE253B9E38A7A3C76
    Dtbios-efi64-70.19.efiE3CE55E584371D3F2FBCA2241EF0711FF80876EBF71BAB07D8ECEE645A40DCFC
    Dtbios-efi64-70.20.efiEE093913ABBD34CB8B5EA31375179A8B55A298353C03AFE5055AA4E8E3F705EF
    Dtbios-efi64-70.21.efiB4E1880425F7857B741B921D04FD9276130927CF90A427C454B970E7A2F442F9
    Dtbios-efi64-70.22.efiCDA0B4A59390B36E1B654850428CBB5B4C7B5E4349E87ACDE97FB543736FF1D4
    Dtbios-efi64-71.17.efiC87EFD057497F90321D62A69B311912B8EF8A045FE9C5E6BD5C8C1A4E6F39629
    Dtbios-efi64-71.18.efi9E19DD645235341A555D6AC0665591453AE13918ECD37DF22DFBEE91EAA9A2DA
    Dtbios-efi64-71.19.efi63F67824FDA998798964FF33B87441857DA92F3A8EE3E04166EEC3156E4E6B82
    Dtbios-efi64-71.20.efi0BC4F078388D41AB039F87AE84CF8D39302CCBDD70C4ADEE02263EBF6A2DD328
    Dtbios-efi64-71.21.efiE2AEC271B9596A461EB6D54DB81785E4E4C615CFDA5F4504BCC0A329248A4D36
    Dtbios-efi64-71.22.efi6B4328EBCBE46ED9118FF2D4472DE329D70BA83016DF7A6F50F8AF92342160A1



    🤝 Research & Collaboration

    Working on something similar? Researching UEFI, Kernel security, exploitation, or another interesting security topic? If you need a hand developing an exploit, exploring a technique, or just want to exchange ideas, don't hesitate to reach out. I'm always open to discussing research, helping where I can, and collaborating on interesting projects. Feel free to contact me on LinkedIn.