Skip to main content
Meet us at Black Hat USA 2026— Las Vegas, August 1–6Book a Meeting
Mallory
LowPublic exploit

Arbitrary Process Termination in Baidu Antivirus BdApiUtil Driver

IdentifiersCVE-2024-51324CWE-269· Improper Privilege Management

CVE-2024-51324 is a vulnerability in the Baidu Antivirus kernel driver BdApiUtil.sys (also referenced as the BdApiUtil driver; observed renamed in attacks as googleApiUtil64.sys) in Baidu Antivirus v5.2.3.116083. The flaw can be abused in a Bring Your Own Vulnerable Driver (BYOVD) scenario to terminate arbitrary processes from kernel context. Reporting on in-the-wild abuse indicates attackers interact with the driver via IOCTL 0x800024b4 to perform kernel-level process termination. The vulnerability has been used by ransomware operators, including DeadLock/GOLD SALEM activity, to kill endpoint security and EDR processes prior to follow-on actions such as persistence, lateral movement, shadow copy deletion, and ransomware deployment.

Share:
For your environment

Are you exposed to this one?

Mallory correlates every CVE against your assets, your vendors, and active adversary campaigns. Know which vulnerabilities matter for you, not just which ones are loud.

ANALYST BRIEF

Impact, mitigation & remediation

What it means. What to do now. Patch path, mitigations, and the assume-compromise checklist.

Impact

What an attacker gets, and what they’ve been doing with it.

Successful exploitation allows an attacker to forcibly terminate arbitrary processes, including protected or security-relevant userland processes such as EDR/AV agents. In practice, this enables defense evasion by disabling endpoint protection, reducing telemetry, and weakening host-based detection and response. The resulting loss of security controls can materially increase the likelihood of successful post-exploitation activity, including credential theft, privilege escalation, destructive actions, and ransomware deployment.

Mitigation

If you can’t patch tonight, do this now.

If immediate patching or removal is not possible, mitigate by blocking the vulnerable driver hash/signature/path, enabling the Microsoft vulnerable driver blocklist, and restricting administrative ability to install or load kernel drivers. Monitor for anomalous driver loads, especially unsigned or unexpectedly renamed signed drivers, and for access patterns consistent with abuse of BdApiUtil.sys, including IOCTL activity and abrupt termination of EDR/AV processes. Application control, tamper protection, HVCI/Memory Integrity, and least-privilege controls can reduce exploitability in BYOVD scenarios.

Remediation

Patch, then assume compromise.

Update or replace the vulnerable Baidu Antivirus/BdApiUtil.sys driver with a fixed vendor version if one is available. Remove the vulnerable driver from systems where it is not required, and prevent loading of known-vulnerable signed drivers through enterprise driver block policies. Review and enforce Microsoft vulnerable driver blocklist protections, WDAC/HVCI where operationally feasible, and EDR controls that detect or block suspicious driver loads and BYOVD behavior. Hunt for the presence of BdApiUtil.sys and renamed copies such as googleApiUtil64.sys, and investigate driver load events associated with subsequent security-process termination.
PUBLIC EXPLOITS

Exploits

2 valid exploits after Mallory filtered fakes, detection scripts, and README-only repos.

VALID 2 / 2 TOTALView more in app
CVE-2024-51324MaturityPoCVerified exploit

This repository is a real local BYOVD exploit/research project for CVE-2024-51324 affecting Baidu Antivirus/BdApiUtil64.sys on Windows. The main exploit code is exploit/byovd_killer.py, a Python script using ctypes and standard Windows APIs. It is not part of a common exploit framework. The repository also contains extensive reverse-engineering notes and defensive detections (Sigma and Sysmon). Primary exploit capability: the script operationalizes the driver’s exposed process-kill primitive by opening the user-accessible device \\.\BdApiUtil and sending IOCTL 0x800024B4 with a target PID. The documentation explains that the underlying driver lacks access control on its device object and internally uses PsLookupProcessByProcessId plus ObOpenObjectByPointer(KernelMode), bypassing normal SeAccessCheck logic. As a result, once the vulnerable signed driver has been loaded into the kernel by an administrator, subsequent exploitation can be performed by any local user to terminate arbitrary non-PPL processes. This is suitable for defense evasion, such as killing EDR/AV processes. The included exploit implements four modes: SCANNER (system/driver/process reconnaissance), LOADER (create/start kernel service for the vulnerable driver), KILLER (terminate by process name or PID, with max-instance and dry-run options), and CLEANUP (stop/delete the service and unload the driver). It verifies the driver by SHA-256 before loading. The exploit explanation states it searches for BdApiUtil64.sys in several local paths including drivers/, current directory, Python executable directory, %TEMP%, C:\Windows\Temp, and C:\Users\Public\Downloads. Although the Python exploit mainly weaponizes process termination, the repository’s analysis documents two additional vulnerable driver primitives: IOCTL 0x80002648 for arbitrary file deletion and IOCTL 0x8000264C for deletion of in-use files by temporarily nulling SectionObjectPointer fields. Those capabilities are described in the research docs but are not clearly implemented in the provided Python entry point. Repository structure: README.md provides overview and usage; docs/analysis/*.md contains root-cause analysis, reverse engineering details, and timeline; docs/detection/ contains Sigma and Sysmon detection content keyed to service creation, driver load, hash, and registry artifacts; exploit/byovd_killer.py is the main executable; exploit/exploit-explanation.md documents CLI usage and architecture. Overall, this is an operational local Windows exploit plus research/detection package, not merely a detector or README-only PoC.

devianntsecDisclosed Mar 25, 2026pythonyamllocalfile
CVE-2024-51324-BYOVD-Masters-ThesisMaturityPoCVerified exploit

This repository is a real local Windows BYOVD exploit and accompanying research package for CVE-2024-51324 in Baidu Antivirus's signed kernel driver BdApiUtil64.sys. The repository contains 7 files total, with one primary code file: exploit/byovd_killer.py. The remaining files are documentation: a top-level README, an exploit usage guide, and three analysis documents covering root cause, reverse engineering findings, and disclosure timeline. The main exploit capability is arbitrary process termination through a vulnerable device interface exposed by the driver. The exploit targets the user-accessible device path \\.\BdApiUtil, which maps to \Device\BdApiUtil / \DosDevices\BdApiUtil in kernel space. It sends a 4-byte PID to IOCTL 0x800024B4 using DeviceIoControl. According to the included analysis, the driver performs no authorization checks before calling ZwOpenProcess(PROCESS_TERMINATE) and ZwTerminateProcess, allowing any local user to kill many elevated or security-relevant processes once the driver is loaded. The exploit is therefore primarily a defense-evasion / process-kill primitive rather than a full privilege-escalation exploit. PPL-protected processes may resist termination. The Python tool is structured as a multi-mode utility with four operational modes: SCANNER (enumerates system/driver status and optionally searches for a target process), LOADER (loads the vulnerable driver into the kernel via Windows service creation), KILLER (terminates processes by name or PID through the vulnerable IOCTL), and CLEANUP (stops the service and unloads/removes the driver). The code also includes driver discovery across multiple filesystem paths, SHA-256 verification of the expected vulnerable driver, admin checks for load/unload operations, and CLI argument parsing. The documented expected hash is 47EC51B5F0EDE1E70BD66F3F0152F9EB536D534565DBB7FCC3A05F542DBE4428. No external C2 or remote network infrastructure is present; this is a local-only exploit. Fingerprintable artifacts are mostly host-based: the device path \\.\BdApiUtil, the driver filename BdApiUtil64.sys, the likely service registry path under HKLM\SYSTEM\CurrentControlSet\Services\<service_name>, and the documented search paths such as drivers/, %TEMP%, C:\Windows\Temp, and C:\Users\Public\Downloads. The repository also documents additional IOCTLs discovered during reverse engineering (0x800024B0, 0x800024B8, 0x800024BC), though the exploit’s core offensive action centers on 0x800024B4. Overall, this is an operational proof-of-concept exploit with practical local post-compromise utility: an operator with admin rights can load the signed vulnerable driver, after which even a standard user context can use the exposed device to terminate selected processes. The repository’s purpose is both exploitation and academic documentation of the vulnerability, with strong emphasis on reverse engineering, BYOVD tradecraft, and defender guidance.

devianntsecDisclosed Mar 25, 2026pythonmarkdownlocalkernel driver / BYOVD
What this page doesn’t show

The version that knows your environment.

This page is what’s public. Mallory adds the parts that aren’t: which of your assets are affected, which adversaries are exploiting it right now, which detections to deploy, and what to do tonight.
Exposure mapping

Query your assets running an affected version, and investigate the blast radius.

Threat actor evidence2

Every observed campaign linking this CVE to a named adversary.

Associated malware5

Malware families riding this exploit, with evidence and IOCs.

Detection signatures

YARA, Sigma, Snort, and vendor rules, auto-deployed to your SIEM.

Vendor-by-vendor mapping

Cross-references every affected SKU, including bundled OEM variants.

Social activity11

Community discussion across Reddit, Mastodon, and other social sources.