> CVE-2026-49359 [MEDIUM]

« BACK_TO_HOME
PUBLISHED
2026-06-19 18:16
MODIFIED
2026-06-19 18:16
CVSS_SCORE V3
6.5
EPSS (Prob. Exploit)
0.42%
Top 64.5%
DATA SOURCES:
NVD 🔗 2026-06-19 CWE MITRE 🔗 2026-11-01 FIRST EPSS 🔗 2026-10-25 GITHUB 🔗 2026-11-05 OSV 🔗 2026-09-20

> 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.

> AFFECTED_PRODUCTS

ℹ️ Aucun produit affecté n'a encore été publié par NVD pour cette CVE.

> CVSS V3 METRICS

CVSS_VECTOR
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
EXPLOITABILITY
2.8
IMPACT
3.6

> MÉTRIQUES CVSS DÉTAILLÉES

CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
Métrique Valeur Interprétation
AV (Vecteur d'Attaque)
Attack Vector
Network (N)
Exploit possible à distance via réseau (HTTP, API, etc.)
AC (Complexité d'Attaque)
Attack Complexity
Low (L)
Peu de conditions requises pour exploiter
PR (Privilèges Requis)
Privileges Required
Low (L)
Authentifié avec compte utilisateur basique
UI (Interaction Utilisateur)
User Interaction
None (N)
Aucune interaction utilisateur nécessaire
S (Périmètre)
Scope
Unchanged (U)
Impact reste dans le périmètre du composant compromis
C (Impact Confidentialité)
Confidentiality Impact
High (H)
Divulgation totale d'informations
I (Impact Intégrité)
Integrity Impact
None (N)
Aucune modification de données possible
A (Impact Disponibilité)
Availability Impact
None (N)
Aucune interruption de service

> RÉSUMÉ DES IMPACTS

Confidentialité
High
Divulgation totale d'informations
Intégrité
None
Aucune modification de données possible
Disponibilité
None
Aucune interruption de service

> WEAKNESSES

CWE-918

> CWE DETAILED DESCRIPTIONS

CWE-918: Server-Side Request Forgery - The web server receives a URL or similar request from an upstream component and retrieves the contents of this URL, but it does not sufficiently ensure that the request is being sent to the expected destination.

> GITHUB SECURITY ADVISORY

GHSA-x8g9-h984-pc36 MODERATE

PhpWeasyPrint vulnerable to SSRF and local file disclosure via the attachment option

AFFECTED PACKAGES:
COMPOSER / pontedilana/php-weasyprint
<= 2.5.1
Fixed in: 2.6.0

> OSV (GOOGLE OPEN SOURCE VULNERABILITIES)

PhpWeasyPrint vulnerable to SSRF and local file disclosure via the attachment option

AFFECTED PACKAGES:
Unknown / Unknown
21 versions affected
ALIASES:
GHSA-x8g9-h984-pc36

> HISTORIQUE DES MODIFICATIONS

Première apparition
19/06/2026 18:16
Source: NVD
📊 ENRICHISSEMENT 01/11/2026 06:59
CWE
Champ modifié: Description CWE
Ancienne valeur:
CWE-918: Server-Side Request Forgery (SSRF) - The web server receives a URL or similar request from an upstream component and retrieves the contents of this URL, but it does not sufficiently ensure th...
Nouvelle valeur:
CWE-918: Server-Side Request Forgery - The web server receives a URL or similar request from an upstream component and retrieves the contents of this URL, but it does not sufficiently ensure that the ...
📊 ENRICHISSEMENT 01/07/2026 06:01
CWE
Champ modifié: Description CWE
Ancienne valeur:
N/A
Nouvelle valeur:
CWE-918: Server-Side Request Forgery (SSRF) - The web server receives a URL or similar request from an upstream component and retrieves the contents of this URL, but it does not sufficiently ensure th...
Total des modifications: 2 Dernière mise à jour: 5 days ago

> REFERENCES

https://github.com/KnpLabs/snappy/security/advisories/GHSA-c5fp-p67m-gq56
https://github.com/pontedilana/php-weasyprint/commit/9582dcf119a405276cf55e9e10b...
https://github.com/pontedilana/php-weasyprint/releases/tag/2.6.0
https://github.com/pontedilana/php-weasyprint/security/advisories/GHSA-x8g9-h984...
« BACK_TO_HOME