Safeguard
Vulnerability Analysis•

CVE-2025-55150: High HTML to PDF SSRF in Stirling-PDF

CVE-2025-55150 is an SSRF in the Stirling-PDF HTML to PDF endpoint, where a sanitizer can be bypassed. Upgrade to Stirling-PDF 1.1.0 or later.

Safeguard Security Team
4 min read

CVE-2025-55150 is a high severity server-side request forgery in Stirling-PDF, the self-hosted PDF tool. It affects the /api/v1/convert/html/pdf endpoint in versions before 1.1.0. The fix is version 1.1.0, so upgrade and check what your instance can reach on the network.

What's affected

  • Product: Stirling-PDF, a locally hosted web application that performs operations on PDF files, published on Maven as stirling-pdf.
  • Affected: versions before 1.1.0. The GitHub advisory lists all versions as affected prior to the patch.
  • Fixed: 1.1.0. The release is dated 24 July 2025 on GitHub.
  • Endpoint: /api/v1/convert/html/pdf.
  • Cause: the backend uses a third-party sanitizer, org.owasp.html, to clean the input, but the advisory says the sanitizer has flaws that can be bypassed.
  • Related: CVE-2025-55151 (file to PDF) and CVE-2025-55161 (Markdown to PDF).

All three SSRF findings were fixed by the same commit, so a single upgrade is enough.

How to check if you're exposed

Find the version of every Stirling-PDF instance you run.

docker ps --format "{{.Names}} {{.Image}}" | grep -i stirling
docker image ls | grep -i stirling

The image tag shows the version. For jar based installs, look at the file name or the version in the application's About screen. Check shared tools, internal utilities and demo deployments, because convenience tools tend to be installed once and forgotten.

Then look at the network path. Does the instance have access to internal services or cloud metadata addresses? Can anyone reach it without a login?

Safeguard has a free in-browser dependency scan at gold.safeguard.sh/scan that checks a manifest or lockfile against known vulnerabilities, and the Gold directory lists affected packages for each CVE. If the package turns up, reachability analysis helps you sort the urgent copies from the dormant ones, because it asks whether your code actually calls the affected path.

What to do now

  1. Upgrade every instance to 1.1.0 or later.
  2. Do not expose the tool to the open internet without authentication. It processes files and fetches content for conversions.
  3. Restrict outbound traffic from the host so it cannot reach internal management systems or cloud metadata addresses unless needed.
  4. Review web logs for calls to the conversion endpoints from unfamiliar sources.
  5. If you embed Stirling-PDF in an application, update the dependency and rebuild.

Why it matters

Server-side request forgery makes your server fetch addresses chosen by someone else. Here the conversion path loads resources referenced inside a document, and the sanitizer meant to prevent that could be bypassed or did not cover the path. The server then acts from inside your network, where it can reach services that the outside world cannot.

The advisory scores this 8.6 with high confidentiality impact, because internal responses may be exposed. Defense works in layers: patch the tool, control who can call it, and limit what the host can connect to. A sanitizer is a useful filter but should never be the only barrier. The CVE is not on the CISA KEV list.

The weakness is classed as CWE-918 (Server-Side Request Forgery). Severity in the CVE record: high, CVSS 8.6 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L).

Try it yourself

Three similar findings can land on one package. This demo shows how reachability separates what matters.

Click through it at your own pace, or open it full screen.

Quick check

Do I need three separate upgrades?

No. The three SSRF findings were fixed in 1.1.0, and the advisories point to the same commit.

What if the tool is only used internally?

It is still worth upgrading. An internal tool with network access to sensitive systems is a good SSRF target for anyone who reaches it.

Sources

Last reviewed: 18 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.