Advisory Database
  • Advisories
  • Dependency Scanning
  1. composer
  2. ›
  3. pontedilana/php-weasyprint
  4. ›
  5. CVE-2026-49286

CVE-2026-49286: PhpWeasyPrint vulnerable to PHAR deserialization via output filename (CVE-2023-28115 case-insensitive bypass)

June 26, 2026

pontedilana/php-weasyprint guarded the output filename against the phar:// stream wrapper with a case-sensitive blacklist:

if (0 === \strpos($filename, 'phar://')) {
throw new \InvalidArgumentException('The output file cannot be a phar archive.');
}

PHP stream wrappers are case-insensitive, so PHAR://, Phar://, etc. bypass the check and reach fileExists() (file_exists()) in prepareOutput(). On PHP 7 (which the library still supports — PHP 7.4+), this triggers deserialization of a crafted PHAR archive’s metadata, leading to remote code execution. This is the patch-bypass of CVE-2023-28115.

The same issue and fix were handled upstream in KnpLabs/snappy (GHSA-92rv-4j2h-8mjj).

References

  • github.com/KnpLabs/snappy/security/advisories/GHSA-92rv-4j2h-8mjj
  • github.com/advisories/GHSA-2fmj-p74r-3wjm
  • github.com/pontedilana/php-weasyprint/commit/d1aa487722b5a3cab9b222b85fdb5608a5a550c3
  • github.com/pontedilana/php-weasyprint/releases/tag/2.6.0
  • github.com/pontedilana/php-weasyprint/security/advisories/GHSA-2fmj-p74r-3wjm
  • nvd.nist.gov/vuln/detail/CVE-2026-49286

Code Behaviors & Features

Detect and mitigate CVE-2026-49286 with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Dependency Scanning using SBOM also detects vulnerabilities from proprietary advisories that this site does not include. Learn more about Dependency Scanning using SBOM →

Affected versions

All versions before 2.6.0

Fixed versions

  • 2.6.0

Solution

Upgrade to version 2.6.0 or above.

Impact 8.1 HIGH

CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H

Learn more about CVSS

Weakness

  • CWE-502: Deserialization of Untrusted Data

Source file

packagist/pontedilana/php-weasyprint/CVE-2026-49286.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Sun, 08 Nov 2026 00:16:14 +0000.