Skip to main content
← All vulnerabilities
CVE-2026-85714GHSA-MRR8-934J-4G8M

Stirling-PDF: Remote Code Execution via H2

Published
Last modified
Status
published
Known exploitation
Not listed in CISA KEV
Fix
Fixed in 2.13.2
Public exploit
None on Exploit-DB
CISA SSVC
  • Exploitation: poc
  • Automatable: no
  • Technical impact: total
?

Decision points from CISA's Vulnrichment, assessed (SSVC 2.0.3).

SSVC documentation

Summary

Stirling-PDF is a locally hosted web application that facilitates various operations on PDF files. Prior to 2.13.2, an authenticated administrator using the default H2 database and security mode can upload a crafted SQL file to POST /api/v1/database/import-database. DatabaseService.validateSqlContent() splits normalized input on semicolons and accepts a statement when it contains any allowed keyword, allowing dangerous H2 functions such as FILE_READ and CSVWRITE, plus CREATE ALIAS, to bypass the insufficient whitelist and execute side effects when RUNSCRIPT processes the file. This permits arbitrary file access. The demonstrated operating-system command execution chain writes attacker-controlled startup files to a user-site location and then triggers an application Python interpreter configured to load those startup files, resulting in command execution as the JVM service account. This issue is fixed in version 2.13.2.

Affected versions

  • Stirling-Tools Stirling-PDF

    fixed in 2.13.2

References 4

GitHub · Stirling-Tools/Stirling-PDF