Skip to main content
VulnerabilityPublished Updated

CVE-2026-49359: pontedilana php-weasyprint · Server-Side Request Forgery (SSRF)

Affects pontedilana php-weasyprintSource CVE Database V5

0
Compare

Not known to be exploited · CVSS 6.5 Medium : upgrade to 2.6.0 when convenient.

Data as of 4 Nov 2026, 10:58 UTC

CVSS 3.1 base score
6.5Medium
How severe the flaw is on the 0–10 CVSS scale.
EPSS
0.4% chance of exploitation in 30 days – higher than 36% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
Patch
Available – fixed in 2.6.0
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N

Exploitation evidence

  1. Disclosed: evidence found.

    CVE published 19 Jun 2026

  2. Detectable: no evidence on record.

    No public nuclei template indexed

  3. Weaponized: no evidence on record.

    No public exploit code indexed in Metasploit or Exploit-DB

  4. Exploited in the wild: no evidence on record.

    Not in CISA KEV and no source reports exploitation

  5. Observed by OffSeq Mirage: no evidence on record.

    No attack traffic recorded by OffSeq Mirage sensors

A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 4 Nov 2026.

What to do

Upgrade php-weasyprint and pontedilana/php-weasyprint to 2.6.0.

Affected software

ProductAffectedFixed in
pontedilanaphp-weasyprintAffected
  • <2.6.0
Fixed in
  • 2.6.0
Packagistpontedilana/php-weasyprintpkg:composer/pontedilana/php-weasyprintOther threatsAffected
  • <2.6.0
Fixed in
  • 2.6.0

Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.

AI-suggested

PhpWeasyPrint version 2.6.0 contains a patch that addresses this vulnerability. Users should upgrade to version 2.6.0 or later to remediate this issue. No additional vendor advisory or temporary mitigations are provided. Patch status is confirmed by the version bump and description. Until upgraded, avoid passing untrusted input to the 'attachment' option or restrict URL schemes manually.

Description

PhpWeasyPrint is a PHP library allowing PDF generation from a URL or an HTML page. Prior to version 2.6.0, `pontedilana/php-weasyprint` fetches the content of option values server-side via `file_get_contents()` when the value looks like a URL, without restricting the URL scheme. The `attachment` option of `Pdf` is the reachable sink: any value that passes `isOptionUrl()` (`filter_var(..., FILTER_VALIDATE_URL)`) is downloaded by the PHP process and embedded into the generated PDF. Because `FILTER_VALIDATE_URL` accepts `http`, `https`, `ftp`, `file` and PHP stream wrappers such as `php://`, an attacker who can influence the `attachment` value reaches both a **Server-Side Request Forgery** primitive (e.g. internal HTTP endpoints, cloud metadata) and a local file disclosure primitive (`file://`, `php://filter/...`), with the fetched bytes exfiltrated as a PDF attachment. This is the same class of issue KnpLabs/snappy patched for its `xsl-style-sheet` option in GHSA-c5fp-p67m-gq56. The library is documented as a one-to-one substitute for KnpLabs/snappy and shares the same code shape. PhpWeasyPrint version 2.6.0 contains a patch for the issue.

References

Community reviews

Loading reviews…