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

CVE-2023-51612

CVE-2023-51612 Use After Free in Kofax
📅 PUBLISHED: 2024-05-03 02:15 UTC 🔄 UPDATED: 2026-08-12 09:01 UTC
[ ZERO-DAY / UNPATCHED ] [ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.27%
👁️
0.27% probability
6.6× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1204.002
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
VULNERABLE: UNKNOWN / CHECK VENDOR
CVSS VECTOR BREAKDOWN 3.3
AV: L Attack Vector Local
AC: L Attack Complexity Low
PR: N Privileges Required None
UI: R User Interaction Required
S: U Scope Unchanged
C: L Confidentiality Low
I: N Integrity None
A: N Availability None
3.3
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2023-51612 is a use-after-free vulnerability in Kofax Power PDF's handling of JP2 files. The flaw allows a remote attacker to disclose sensitive memory contents by convincing a user to open a specially crafted JP2 file. While the CVSS score is low (3.3) due to the requirement for user interaction and limited impact (confidentiality only), the vulnerability can be chained with other bugs to achieve arbitrary code execution in the context of the current process. No public proof-of-concept or patch details are currently available.

⚡ 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 any open-source package ecosystem (NPM, PyPI, Go, Ruby). It affects a proprietary desktop application (Kofax Power PDF) and is distributed through vendor channels.

CVSS Breakdown & Threat Level

  • CVSS Vector: CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N
  • Base Score: 3.3 (Low)
  • Attack Vector: Local (requires opening a malicious file)
  • Attack Complexity: Low
  • Privileges Required: None
  • User Interaction: Required
  • Scope: Unchanged
  • Confidentiality Impact: Low (information disclosure)
  • Integrity Impact: None
  • Availability Impact: None

Threat Level: Low. Exploitation requires user interaction and only leaks memory contents. However, chaining with other vulnerabilities could elevate the risk.

Deep Dive & Mechanics

The vulnerability resides in the JP2 (JPEG 2000) file parser of Kofax Power PDF. The specific flaw is a use-after-free (CWE-416) condition. When parsing a malformed JP2 file, the application fails to validate that an object still exists in memory before performing operations on it. This results in the program accessing freed memory, which can contain sensitive data such as heap pointers, encryption keys, or other process memory.

Root Cause: Lack of proper object lifetime management. After an object is freed (e.g., due to an error or specific file structure), subsequent code continues to use a dangling pointer to that object.

Attack Vector: An attacker crafts a malicious JP2 file and delivers it via email, web download, or other means. The victim must open the file with Kofax Power PDF. Upon parsing, the use-after-free triggers, leaking memory contents that can be read by the attacker through the application's output or error messages.

Chaining Potential: The ZDI advisory notes that this can be combined with other vulnerabilities to achieve arbitrary code execution. For example, the leaked memory could contain addresses needed to bypass ASLR, enabling a subsequent write-what-where primitive.

Vulnerable vs. Patched Code

No patch details are available. The vulnerable code is in the JP2 parsing module of Kofax Power PDF. A patched version would include proper validation before accessing objects, such as:

Vulnerable (pseudocode):

void parse_jp2_object(JP2Object *obj) {
    // ... parsing logic ...
    free(obj->data);  // Object freed prematurely
    // ... later ...
    process_data(obj->data);  // Use-after-free: accessing freed memory
}

Patched (pseudocode):

void parse_jp2_object(JP2Object *obj) {
    // ... parsing logic ...
    if (obj->data != NULL) {
        process_data(obj->data);
        free(obj->data);
        obj->data = NULL;  // Set to NULL after free
    }
}

Exploitation & Lab Setup

Red Team

Prerequisites:

  • Kofax Power PDF (any version with JP2 support)
  • A crafted JP2 file (no public PoC available)

Steps:

  1. Create a malformed JP2 file that triggers the use-after-free. This requires reverse engineering the JP2 parser to find the exact memory corruption point.
  2. Deliver the file to the target via phishing email or malicious website.
  3. When the victim opens the file, the vulnerability leaks memory contents.
  4. Use the leaked data to chain with another vulnerability (e.g., a write primitive) for code execution.

Note: No public exploit code is available. The following is a conceptual example of a JP2 file structure that might trigger the bug:

# Conceptual JP2 file generator (not functional)
import struct

def create_malicious_jp2():
    # JP2 file header
    data = b'\x00\x00\x00\x0C\x6A\x50\x20\x20\x0D\x0A\x87\x0A'
    # ... malformed image data to trigger use-after-free ...
    return data

with open('exploit.jp2', 'wb') as f:
    f.write(create_malicious_jp2())

Blue Team

Detection:

  • Monitor for unusual JP2 files being opened by Kofax Power PDF.
  • Use process monitoring tools (e.g., Sysmon) to detect crashes or abnormal memory access patterns.
  • Implement application whitelisting to prevent untrusted JP2 files from being opened.

Hunting:

  • Search for Event ID 1000 (Application Error) in Windows Event Logs related to PowerPDF.exe.
  • Look for memory access violations in process dumps.

Indicators of Compromise (IOCs)

  • File Hashes: No known malicious files.
  • Process Anomalies: PowerPDF.exe crashes or hangs when parsing JP2 files.
  • Network: No network indicators (local file parsing only).
  • Registry: No known persistence mechanisms.

Detection Engineering

YARA Rule

rule CVE_2023_51612_Kofax_JP2_UAF {
    meta:
        description = "Detects malformed JP2 files targeting CVE-2023-51612"
        author = "Valters IT"
        date = "2025-04-17"
        reference = "https://nvd.nist.gov/vuln/detail/CVE-2023-51612"
    strings:
        $jp2_magic = { 00 00 00 0C 6A 50 20 20 0D 0A 87 0A }
        $uaf_pattern = { FF ?? ?? ?? ?? ?? ?? ?? 00 00 00 00 }  // Example pattern
    condition:
        $jp2_magic at 0 and $uaf_pattern
}

Sigma Rule

title: Kofax Power PDF JP2 Use-After-Free Exploitation Attempt
id: 8f4b3c2a-1d5e-4f7b-9a0c-3e6d8f2b1a4c
status: experimental
description: Detects potential exploitation of CVE-2023-51612 via JP2 file parsing
author: Valters IT
date: 2025-04-17
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        Image|endswith: '\PowerPDF.exe'
        CommandLine|contains: '.jp2'
    condition: selection
falsepositives:
    - Legitimate JP2 file opening
level: medium

Suricata Rule

alert http $HOME_NET any -> $EXTERNAL_NET any (msg:"CVE-2023-51612 Kofax JP2 File Download"; flow:to_client,established; file.name:/\.jp2$/i; content:"|00 00 00 0C 6A 50 20 20 0D 0A 87 0A|"; distance:0; within:12; classtype:attempted-user; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. No patch available. Monitor vendor advisories for updates.
  2. User Awareness: Train users not to open JP2 files from untrusted sources.
  3. Application Control: Use AppLocker or similar to restrict execution of Kofax Power PDF to trusted users only.

Long-term:

  • Apply vendor patch when released.
  • Consider using alternative PDF software that is actively maintained.
  • Implement file reputation services to block malicious JP2 files.

Workaround:

  • Disable JP2 file association in Windows or configure Kofax Power PDF to not parse JP2 files if possible.

Valters IT
DevSecOps & Cyber Threat Intelligence

◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2023-51612/ · 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.