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

CVE-2025-8301

CVE-2025-8301 Heap Buffer Overflow in Realtek
📅 PUBLISHED: 2025-09-02 20:02 UTC 🔄 UPDATED: 2026-08-12 09:03 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.02%
👁️
0.02% probability
<1× above the median CVE
Tier: LOW
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.8
AV: L Attack Vector Local
AC: L Attack Complexity Low
PR: L Privileges Required Low
UI: N User Interaction None
S: U Scope Unchanged
C: H Confidentiality High
I: H Integrity High
A: H Availability High
7.8
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-8301 is a critical heap-based buffer overflow vulnerability in the Realtek RTL8811AU wireless driver (rtwlanu.sys). The flaw resides in the N6CSet_DOT11_CIPHER_DEFAULT_KEY function, which fails to validate the length of user-supplied data before copying it to a fixed-length heap buffer. A local attacker with low-privileged code execution can exploit this to escalate privileges to SYSTEM and execute arbitrary code. No public exploit or patch is currently available, and the vendor has not released a fix. The EPSS score is 0.0%, indicating low exploitation likelihood in the wild, but the severity (CVSS 7.8) demands immediate attention for affected systems.

⚡ 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 Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
  • Base Score: 7.8 (High)
  • Attack Vector: Local (AV:L) – requires local access.
  • Attack Complexity: Low (AC:L) – no special conditions.
  • Privileges Required: Low (PR:L) – attacker needs low-privileged code execution.
  • User Interaction: None (UI:N) – no user action needed.
  • Scope: Unchanged (S:U) – vulnerability does not cross trust boundaries.
  • Confidentiality, Integrity, Availability Impact: High (C:H/I:H/A:H) – full compromise.

Threat Level: High. Although no public exploit exists, the vulnerability is easily exploitable once an attacker gains local access. Privilege escalation to SYSTEM allows full control of the host.

Deep Dive & Mechanics

The vulnerability is a classic heap-based buffer overflow in the Realtek RTL8811AU driver (rtwlanu.sys). The N6CSet_DOT11_CIPHER_DEFAULT_KEY function is responsible for setting the default cipher key for wireless operations. It allocates a fixed-length heap buffer to store the key but does not validate the length of the user-supplied key data before performing a memcpy or similar copy operation.

Root Cause:
The function receives a key length parameter from user mode (via IOCTL or similar interface). This length is used directly in a memory copy without bounds checking against the allocated buffer size. An attacker can supply an oversized key, causing a heap overflow.

Exploitation Path:

  1. Attacker gains low-privileged code execution (e.g., via a user-mode application or script).
  2. Attacker sends a crafted IOCTL to the driver with an oversized key.
  3. The driver copies the oversized data into a fixed heap buffer, overwriting adjacent heap metadata or other objects.
  4. Attacker leverages heap manipulation techniques (e.g., heap spray, use-after-free) to achieve arbitrary write or code execution.
  5. The overflow occurs in kernel context (SYSTEM), allowing privilege escalation.

Impact:
Successful exploitation grants SYSTEM privileges, enabling the attacker to install malware, disable security controls, or pivot laterally.

Vulnerable vs. Patched Code

No patched version is available. The vulnerable code pattern is:

// Vulnerable pseudo-code
void N6CSet_DOT11_CIPHER_DEFAULT_KEY(PVOID pContext, PKEY_DATA pKeyData) {
    UCHAR* pBuffer = (UCHAR*)ExAllocatePoolWithTag(NonPagedPool, 64, 'KEYT');
    if (pBuffer) {
        // No length check on pKeyData->Length
        RtlCopyMemory(pBuffer, pKeyData->Key, pKeyData->Length);
        // ... use pBuffer
    }
}

A patched version would include a length check:

// Patched pseudo-code
void N6CSet_DOT11_CIPHER_DEFAULT_KEY(PVOID pContext, PKEY_DATA pKeyData) {
    if (pKeyData->Length > 64) {
        return STATUS_INVALID_PARAMETER;
    }
    UCHAR* pBuffer = (UCHAR*)ExAllocatePoolWithTag(NonPagedPool, 64, 'KEYT');
    if (pBuffer) {
        RtlCopyMemory(pBuffer, pKeyData->Key, pKeyData->Length);
        // ... use pBuffer
    }
}

Exploitation & Lab Setup

Red Team

Prerequisites:

  • Local low-privileged access to a Windows system with Realtek RTL8811AU driver installed.
  • Knowledge of the driver's IOCTL interface (reverse-engineered from rtwlanu.sys).

Exploitation Steps:

  1. Identify IOCTL: Use tools like WinDbg or IOCTL Decoder to find the IOCTL code for N6CSet_DOT11_CIPHER_DEFAULT_KEY.
  2. Craft Payload: Create a buffer with an oversized key (e.g., 256 bytes) containing shellcode and heap spray data.
  3. Send IOCTL: Use DeviceIoControl from a low-privileged process to trigger the overflow.
  4. Heap Manipulation: Use techniques like heap spray to ensure the overflow corrupts a critical kernel object (e.g., a function pointer).
  5. Escalate: The corrupted object leads to arbitrary code execution in kernel mode, spawning a SYSTEM shell.

Example C++ Snippet (Conceptual):

#include <windows.h>
#include <stdio.h>

int main() {
    HANDLE hDevice = CreateFileA("\\\\.\\RTL8811AU", GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL);
    if (hDevice == INVALID_HANDLE_VALUE) {
        printf("Failed to open device\n");
        return 1;
    }

    char buffer[256];
    memset(buffer, 'A', sizeof(buffer));
    // Overwrite with shellcode and heap spray data
    // ...

    DWORD bytesReturned;
    BOOL result = DeviceIoControl(hDevice, IOCTL_CODE, buffer, sizeof(buffer), NULL, 0, &bytesReturned, NULL);
    if (result) {
        printf("Exploit triggered\n");
    }

    CloseHandle(hDevice);
    return 0;
}

Blue Team

Detection:

  • Monitor for unusual DeviceIoControl calls to \\.\RTL8811AU from non-system processes.
  • Look for heap corruption indicators in kernel memory (e.g., BSOD with bugcheck codes like 0x1A - MEMORY_MANAGEMENT).
  • Use Sysmon Event ID 11 (FileCreate) to detect driver loading, and Event ID 7 (ImageLoad) for suspicious driver loads.

Hunting Queries:

  • Windows Event Log: Search for Event ID 7030 (Service start failure) or 7031 (Service crash) related to rtwlanu.
  • Process Monitor: Filter for DeviceIoControl operations on \Device\RTL8811AU with unusual buffer sizes (>64 bytes).

Mitigation:

  • Disable the Realtek RTL8811AU driver if not needed.
  • Apply vendor patch when available.
  • Use Windows Defender Application Control (WDAC) to block unsigned drivers.

Indicators of Compromise (IOCs)

  • File Hashes (SHA-256):
    • rtwlanu.sys (vulnerable version): e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 (placeholder – replace with actual hash)
  • Registry Keys:
    • HKLM\SYSTEM\CurrentControlSet\Services\rtwlanu
  • Network IOCs:
    • None (local privilege escalation only).
  • Behavioral IOCs:
    • Unexpected DeviceIoControl calls to \\.\RTL8811AU with buffer sizes > 64 bytes.
    • Kernel crashes (BSOD) with bugcheck 0x1A or 0x50 (PAGE_FAULT_IN_NONPAGED_AREA).

Detection Engineering

YARA Rule

rule CVE_2025_8301_Realtek_RTL8811AU_HeapOverflow {
    meta:
        description = "Detects exploitation attempts of CVE-2025-8301 via oversized IOCTL buffers"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "https://nvd.nist.gov/vuln/detail/CVE-2025-8301"
    strings:
        $ioctl = "RTL8811AU" ascii wide nocase
        $key_func = "N6CSet_DOT11_CIPHER_DEFAULT_KEY" ascii wide nocase
        $overflow_pattern = { 41 41 41 41 } // 'AAAA' pattern from oversized buffer
    condition:
        $ioctl and $key_func and #overflow_pattern > 64
}

Sigma Rule

title: CVE-2025-8301 Realtek RTL8811AU Heap Overflow Exploitation
id: 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d
status: experimental
description: Detects oversized DeviceIoControl calls to the Realtek RTL8811AU driver
author: Valters IT
date: 2025-04-10
logsource:
    product: windows
    service: sysmon
detection:
    selection:
        EventID: 11
        Image: '*\DeviceIoControl*'
        TargetObject: '*\RTL8811AU*'
    condition: selection
falsepositives:
    - Legitimate driver configuration tools
level: high

Suricata Rule

alert ip any any -> any any (msg:"CVE-2025-8301 Realtek RTL8811AU Heap Overflow Attempt"; content:"|41 41 41 41|"; offset:0; depth:256; classtype:attempted-admin; sid:1000001; rev:1;)

Remediation & Mitigation

  1. Immediate: Disable the Realtek RTL8811AU driver if not essential. Use sc stop rtwlanu and sc config rtwlanu start= disabled.
  2. Short-term: Monitor for vendor updates. If no patch is released, consider replacing the hardware with a supported model.
  3. Long-term: Implement driver blocklisting via WDAC or AppLocker to prevent loading of vulnerable drivers.
  4. Detection: Deploy the provided YARA, Sigma, and Suricata rules to detect exploitation attempts.
  5. User Awareness: Restrict local access to trusted users only, as exploitation requires low-privileged code execution.

Valters IT
DevSecOps & Cyber Threat Intelligence

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