☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
[ VENDOR STATS ]
CVSS: 7.5 CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:H/I:H/A:H 🐛 CWE-20
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2024-55567

CVE-2024-55567 Improper Input Validation in Insyde
📅 PUBLISHED: 2025-06-12 00:00 UTC 🔄 UPDATED: 2026-08-13 10:06 UTC
[ ZERO-DAY / UNPATCHED ] [ DEFENSE PATCH ↓ ]
💣 PoC: Public
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.06%
👁️
0.06% probability
1.5× above the median CVE
Tier: LOW
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1546
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
VULNERABLE: 5.4 < 05.47.01, 5.5 < 05.55.01, 5.6 < 05.62.01, 5.7 < 05.71.01
CVSS VECTOR BREAKDOWN 7.5
AV: L Attack Vector Local
AC: H Attack Complexity High
PR: H Privileges Required High
UI: N User Interaction None
S: C Scope Changed
C: H Confidentiality High
I: H Integrity High
A: H Availability High
7.5
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2024-55567 is a critical vulnerability in the InsydeH2O UEFI firmware, specifically within the UsbCoreDxe SMM (System Management Mode) module. The flaw is an improper input validation (CWE-20) that allows an attacker with high privileges (e.g., kernel-level access) to trigger an SMM callout. This callout can be abused to write arbitrary memory inside SMRAM (System Management RAM) and execute arbitrary code at the SMM level, which is the most privileged execution environment in a modern x86/x64 system. Successful exploitation can lead to complete compromise of the firmware, enabling persistent, stealthy malware that survives OS reinstallation and even hard drive replacement. The vulnerability affects InsydeH2O kernel versions 5.4, 5.5, 5.6, and 5.7 prior to the specified patches. No public proof-of-concept (PoC) or exploit code is currently available, and the EPSS score is 0.0%, indicating low exploitation activity in the wild. However, due to the severity and the nature of SMM vulnerabilities, this poses a significant supply chain risk for devices using Insyde firmware.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Supply Chain & Package Security

This vulnerability is not in a software package manager (NPM, PyPI, Go, Ruby) but in a firmware component. The supply chain risk is high because InsydeH2O is used by numerous OEMs (Original Equipment Manufacturers) in laptops, desktops, and embedded systems. A compromised firmware update or a device shipped with a vulnerable version can be exploited by an attacker who has already gained kernel-level access, allowing them to establish a persistent, low-level foothold. Organizations must verify the firmware version of all Insyde-based devices and apply patches from the device manufacturer.

CVSS Breakdown & Threat Level

  • CVSS Score: 7.5 (High)
  • Attack Vector (AV): Local (L) – The attacker must have local access to the system.
  • Attack Complexity (AC): High (H) – Exploitation requires specific conditions and knowledge of the SMM environment.
  • Privileges Required (PR): High (H) – The attacker needs kernel-level privileges (e.g., from a rootkit or OS exploit).
  • User Interaction (UI): None (N) – No user action is required beyond the attacker's own actions.
  • Scope (S): Changed (C) – The vulnerability allows the attacker to impact resources beyond the original security scope (SMRAM).
  • Confidentiality (C): High (H) – Full compromise of SMRAM contents, including secrets.
  • Integrity (I): High (H) – Arbitrary code execution at SMM level allows modification of firmware.
  • Availability (A): High (H) – Can cause system instability or persistent denial of service.

Threat Level: High. While the attack complexity is high and requires prior kernel access, the impact is total firmware compromise. This is a prime target for advanced persistent threats (APTs) and firmware rootkits.

Deep Dive & Mechanics

The vulnerability resides in the UsbCoreDxe SMM driver within the InsydeH2O firmware. SMM is a highly privileged CPU mode used for system management functions (e.g., power management, hardware control). SMM code runs in SMRAM, which is normally protected from the OS and hypervisor.

Root Cause: Improper input validation in the SMM callout handler. The UsbCoreDxe driver exposes an SMM communication buffer that can be invoked by a kernel-mode driver. The driver fails to properly validate the size and content of the input buffer before using it in a memory copy or write operation.

Exploitation Mechanics:

  1. Prerequisite: The attacker must have already achieved kernel-level code execution (e.g., via a separate OS vulnerability).
  2. Trigger: The attacker sends a crafted SMM communication buffer to the vulnerable UsbCoreDxe SMM handler. This is typically done by writing to a specific SMI (System Management Interrupt) trigger port or using an SMM communication protocol.
  3. Callout: The vulnerable handler performs an SMM callout (a function call from SMM to non-SMM memory) without proper validation. This callout can be hijacked by the attacker.
  4. Arbitrary Write: By controlling the callout parameters, the attacker can write arbitrary data to any location in SMRAM.
  5. Code Execution: The attacker overwrites SMM code or data structures (e.g., SMI handler pointers) to redirect execution to attacker-controlled code. This code runs at SMM privilege level (ring -2), completely bypassing OS security mechanisms.

Impact: Once SMM code execution is achieved, the attacker can:

  • Install a persistent firmware rootkit (e.g., LoJax, TrickBoot).
  • Steal secrets stored in SMRAM (e.g., BitLocker keys, TPM secrets).
  • Disable or bypass Secure Boot.
  • Survive OS reinstallation and hard drive replacement.

Vulnerable vs. Patched Code

The exact code is proprietary, but the vulnerability pattern is a classic SMM callout issue.

Vulnerable Code (Conceptual):

// Vulnerable SMM handler in UsbCoreDxe
EFI_STATUS
EFIAPI
UsbCoreSmmHandler (
  IN EFI_HANDLE DispatchHandle,
  IN CONST VOID *Context,
  IN OUT VOID *CommBuffer,
  IN OUT UINTN *CommBufferSize
  )
{
  // No validation of CommBufferSize or CommBuffer content
  UINTN DataSize = *(UINTN*)CommBuffer; // Attacker-controlled size
  VOID *DataPtr = (VOID*)((UINTN)CommBuffer + sizeof(UINTN)); // Attacker-controlled data

  // SMM callout to non-SMM memory
  SmmCalloutFunction(DataPtr, DataSize); // Vulnerable callout
  return EFI_SUCCESS;
}

Patched Code (Conceptual):

// Patched SMM handler
EFI_STATUS
EFIAPI
UsbCoreSmmHandler (
  IN EFI_HANDLE DispatchHandle,
  IN CONST VOID *Context,
  IN OUT VOID *CommBuffer,
  IN OUT UINTN *CommBufferSize
  )
{
  // Validate buffer size
  if (*CommBufferSize < sizeof(UINTN) + MIN_DATA_SIZE) {
    return EFI_INVALID_PARAMETER;
  }

  UINTN DataSize = *(UINTN*)CommBuffer;
  VOID *DataPtr = (VOID*)((UINTN)CommBuffer + sizeof(UINTN));

  // Validate DataSize against buffer size
  if (DataSize > *CommBufferSize - sizeof(UINTN)) {
    return EFI_INVALID_PARAMETER;
  }

  // Ensure the callout target is within SMRAM
  if (!IsAddressInSmram(DataPtr)) {
    return EFI_ACCESS_DENIED;
  }

  // Safe callout
  SmmCalloutFunction(DataPtr, DataSize);
  return EFI_SUCCESS;
}

The patch adds input validation for buffer sizes and checks that the callout target address is within SMRAM, preventing arbitrary memory writes.

Exploitation & Lab Setup

Note: No public exploit code is available. The following is a conceptual guide for educational and defensive purposes.

Red Team (Offensive)

Prerequisites:

  • A system with a vulnerable InsydeH2O firmware version.
  • Kernel-level code execution (e.g., via a separate kernel exploit or a signed but malicious driver).

Steps:

  1. Identify SMM Communication Protocol: Use a tool like chipsec or rw-everything to enumerate SMM communication buffers and protocols exposed by UsbCoreDxe.
  2. Craft Malicious Buffer: Create a buffer that triggers the SMM callout with a controlled size and data pointer pointing to a location in SMRAM to overwrite.
  3. Trigger SMI: Write to the SMI trigger port (typically 0xB2) with the appropriate value to invoke the vulnerable handler.
  4. Execute Payload: The SMM callout writes attacker-controlled data to SMRAM, overwriting an SMI handler or a function pointer. The next SMI will execute the attacker's code.

Example (Conceptual Python with ctypes):

import ctypes
import struct

# Assume we have kernel access and can map SMM communication buffer
smm_buffer = map_smm_buffer(0x1000)

# Craft malicious buffer
data_size = 0x100  # Size to write
target_addr = 0xFEFF0000  # Target SMRAM address (example)
payload = b'\x90' * 0x100  # NOP sled + shellcode

# Pack buffer: [DataSize][TargetAddr][Payload]
buffer = struct.pack('<I', data_size) + struct.pack('<Q', target_addr) + payload

# Write to SMM communication buffer
write_to_smm_buffer(smm_buffer, buffer)

# Trigger SMI
trigger_smi(0x42)  # Example SMI number

Blue Team (Defensive)

Detection:

  • Monitor for unusual SMI triggers (e.g., high frequency of SMIs from non-standard sources).
  • Use hardware-level monitoring (e.g., Intel VT-d, AMD-Vi) to detect SMRAM writes from non-SMM sources.
  • Deploy firmware integrity monitoring tools (e.g., fwhunt, CHIPSEC) to verify SMRAM contents.

Mitigation:

  • Apply firmware patches from the device manufacturer immediately.
  • Enable Secure Boot and TPM to detect firmware tampering.
  • Use virtualization-based security (VBS) to isolate kernel and SMM.
  • Implement SMM lockdown via SMM_LOCK and SMM_CODE_CHK_EN MSRs.

Indicators of Compromise (IOCs)

  • SMM Communication Buffer Anomalies: Unusually large or malformed buffers sent to the UsbCoreDxe SMM handler.
  • SMRAM Modification: Unexpected changes to SMRAM contents, detected via periodic hashing.
  • SMI Handler Hijacking: SMI handlers pointing to non-standard addresses (e.g., outside the original firmware region).
  • Firmware Rootkit Artifacts: Presence of known SMM rootkit signatures (e.g., LoJax, TrickBoot) in firmware flash.
  • Kernel-Level Exploit Chains: Evidence of a kernel exploit preceding the SMM attack (e.g., driver load events, memory corruption logs).

Detection Engineering

YARA Rule

rule CVE_2024_55567_SMM_Callout {
   meta:
      description = "Detects potential exploitation of CVE-2024-55567 via SMM callout patterns"
      author = "Valters IT"
      date = "2025-04-10"
      reference = "CVE-2024-55567"
   strings:
      $smm_callout = { 48 8B 4D ?? 48 8B 55 ?? FF 15 ?? ?? ?? ?? }  // Example: mov rcx, [rbp+xx]; mov rdx, [rbp+xx]; call [rip+xx]
      $usb_core_dxe = "UsbCoreDxe" nocase
   condition:
      $usb_core_dxe and #smm_callout > 2
}

Sigma Rule

title: CVE-2024-55567 SMM Callout Exploitation Attempt
id: 8a9b3c4d-5e6f-7a8b-9c0d-1e2f3a4b5c6d
status: experimental
description: Detects potential exploitation of CVE-2024-55567 via SMM communication buffer anomalies
author: Valters IT
date: 2025-04-10
references:
    - https://nvd.nist.gov/vuln/detail/CVE-2024-55567
logsource:
    product: windows
    service: system
    category: driver_load
detection:
    selection:
        EventID: 7036  # Service Control Manager
        ImagePath|contains: 'UsbCoreDxe'
    condition: selection
falsepositives:
    - Legitimate firmware updates
level: high

Suricata Rule

alert ip any any -> any any (msg:"CVE-2024-55567 SMM Callout Exploitation Attempt"; content:"UsbCoreDxe"; nocase; content:"|FF 15|"; distance:0; within:4; reference:cve,2024-55567; classtype:attempted-admin; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Patch Firmware: Update InsydeH2O to the patched versions: 5.4 >= 05.47.01, 5.5 >= 05.55.01, 5.6 >= 05.62.01, or 5.7 >= 05.71.01. Contact the device OEM for the specific firmware update.
  2. Verify Integrity: After patching, use fwupdmgr or OEM tools to verify the firmware hash.
  3. Enable Secure Boot: Ensure Secure Boot is enabled and configured with custom keys to prevent unauthorized firmware.

Long-Term Mitigations:

  • SMM Lockdown: Enable SMM code protection via SMM_CODE_CHK_EN (MSR 0x1A2) and set SMM_LOCK (MSR 0x1A2 bit 0).
  • Virtualization-Based Security (VBS): Enable Hyper-V and VBS to isolate the kernel and SMM.
  • Hardware Monitoring: Use Intel TXT or AMD SVM to measure and verify SMM integrity at boot.
  • Regular Audits: Periodically audit firmware versions and SMRAM contents using tools like CHIPSEC.

Valters IT Signature

This report was generated by Valters IT DevSecOps AI. For questions, contact security@valters-it.com.

👁️ SHODAN DORKS (THREAT HUNTING)

What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.

InsydeH2O
UsbCoreDxe

💣 PoC CODE AVAILABLE

Exploit code for this CVE is tracked in our database. Access poc_code via API Pro.

[ API_PRO ] →
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2024-55567/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.