CVE-2026-45034Disclosure

MEDIUMCVSS 9.2 · CRITICAL

Exploit discussion active in current signal (1 latest mentions)

Immediate actions

  • Patch affected systems immediately
  • Hunt for exploitation attempts and persistence artifacts
  • Increase monitoring for publicly documented tradecraft

Recommended action window: High priority (within 72h)

NVD description

PhpSpreadsheet is a pure PHP library for reading and writing spreadsheet files. Prior to 1.30.5, CVE-2026-34084 was patched by the helper File::prohibitWrappers. The helper calls parse_url($filename, PHP_URL_SCHEME) and then checks is_string($scheme) && strlen($scheme) > 1 to reject stream wrappers such as phar://, php://, data:// or expect://. The check is not equivalent to "does the path contain a wrapper". When the input has the form phar:///path/file.phar/inner with three or more slashes after the scheme, parse_url returns boolean false instead of returning the scheme string. The is_string($scheme) branch is therefore skipped, the helper returns without throwing, and the caller proceeds. PHP's stream layer, however, still treats phar:///... as a valid phar wrapper and opens the underlying phar file. The result is that IOFactory::load($attackerPath) walks past the patch and still touches the phar wrapper. On PHP 7.x, simply reaching the phar wrapper via is_file is enough for PHP to automatically deserialize the phar metadata, which in turn invokes the magic methods __wakeup and __destruct of an attacker controlled object and gives full RCE. On PHP 8.x, automatic metadata deserialization for plain file ops was removed, so the chain at the PhpSpreadsheet layer reduces to a phar wrapper file read primitive, and RCE only resurfaces if the downstream consumer ever calls Phar::getMetadata. This vulnerability is fixed in 1.30.5.

4.0/ 10 priority

Sources & remediation

Weakness type (CWE)
CWE-502

Priority

MEDIUM

Exploitation

NONE

PoC

YES

Patch

AVAILABLE

Momentum

STABLE

Threat summary

  • Public PoC and exploit tooling are both present
  • Patch or workaround signal is available
  • 3 mentions across 2 observed days
  • Momentum state: stable

What's happening

  • Exploit tool or code specified in 1 signal
  • PoC mentioned or linked in 2 signals
  • Patch or workaround mentioned in 2 signals
  • Technical details provided in 3 signals
  • Disclosure: 2 classified signals
  • Peaked 1d ago at 2 mentions (2026-06-11); latest day: 1
  • 3 total mentions across 2 days

Deep dive

Activity timeline3 mentions / 2d
01122Mentions · 2026-06-11: 2Mentions · 2026-06-12: 1PoC Mentioned / Linked · 2026-06-11: 1PoC Mentioned / Linked · 2026-06-12: 1Exploit Tool / Code · 2026-06-11: 1Patch / Workaround · 2026-06-11: 1Patch / Workaround · 2026-06-12: 1Technical Details · 2026-06-11: 2Technical Details · 2026-06-12: 106-1106-12
Signal classification2 categories
Disclosure
266.7%
Patch
133.3%
Referenced assets2 URLs
Classification over time
DateTotalLabels
2026-06-112
Disclosure2
2026-06-121
Patch1
Full discourse3 posts
  • yousukezan@yousukezan
    Disclosure

    3億回以上ダウンロードされているPHPライブラリPhpSpreadsheetで、リモートコード実行につながる可能性のある脆弱性CVE-2026-45034が公開された。この脆弱性は既存の修正を回避するもので、概念実証(PoC)コードも公開されている。 CVE-2026-45034は、以前修正されたCVE-2026-34084のパッチ回避にあたる問題である。原因はFile::prohibitWrappers関数にあり、本来はphar://やphp://などのストリームラッパーを拒否するためにparse_urlを利用してURLスキームを確認していた。 しかし記事によると、攻撃者が「phar:///path」のように3つ以上のスラッシュを含む文字列を使用すると、parse_urlはスキームを返さずfalseを返す。その結果、ラッパーの検査処理が実行されず、危険なパスが許可されるという。一方でPHP内部のストリーム処理はpharラッパーを正常に認識するため、対象ファイルが開かれてしまう。 影響はPHPのバージョンによって異なる。PHP 7系では、pharファイルへのアクセス時に自動デシリアライズが発生し、攻撃者が制御するコードの実行につながる可能性がある。PHP 8系では自動デシリアライズは行われないが、アプリケーションが後からPhar::getMetadataを呼び出す場合にはリモートコード実行へ発展する可能性があるとしている。 影響を受けるのは1.30.4までの1.x系バージョンで、修正版の1.30.5が公開されている。 https://securityonline.info/phpspreadsheet-rce-vulnerability-cve-2026-45034/

    Post summary

    A newly disclosed CVE-2026-45034 in PhpSpreadsheet permits remote code execution; a PoC is available and a patch (1.30.5) has been released.

    09027143.0K
    14.6K followersView on X
  • Orca Security@orcasec
    Patch

    🚨 CRITICAL: PhpSpreadsheet CVE-2026-45034 (CVSS 9.8) The previous patch for CVE-2026-34084 was bypassed. Attackers can achieve full RCE with no authentication, and a public PoC is already out. Patch to 1.30.5 now 👇 https://orca.security/resources/blog/cve-2026-45034-phpspreadsheet-rce-patch-bypass/?utm_source=twitter&utm_medium=organic+social&utm_campaign=orca+blog https://t.co/rmsEllLNnc

    Post summary

    The tweet alerts that a critical RCE (CVE-2026-45034) in PhpSpreadsheet is publicly exploitable, provides a patch to version 1.30.5, and notes a publicly available PoC.

    00070630
    4.8K followersView on X
  • kokumօtօ@__kokumoto
    Disclosure

    PhpSpreadsheetに重大(Critical)な脆弱性。CVE-2026-45034はCVSSスコア9.8で、CVE-2026-34084の修正の迂回で、ヘルパー関数File::prohibitWrappersのロジック不備。phar:///のように3つ以上スラッシュが続くとparse_urlが失敗してFalseのみを返す点の考慮漏れ。 https://securityonline.info/phpspreadsheet-rce-vulnerability-cve-2026-45034/

    Post summary

    The text announces a critical CVE in PhpSpreadsheet (CVE‑2026‑45034) with technical details, including CVSS score and the underlying logic flaw, but does not provide a PoC, exploit, or mention active exploitation.

    00042748
    7.6K followersView on X

Explore more