Overview
On October 21, 2026, PHP 8.2 through 8.5 were all updated to fix php2shell, two CVSS 9.2 vulnerabilities that let attackers run code on a server without logging in. One researcher who found them was part of OpenAI’s Patch the Planet initiative, and OpenAI says this is just one of many critical vulnerabilities it is fixing.
The video explains how the bug works, why it stayed unfixed for 20 years, how Patch the Planet operates, and the debate it sparked.
Key Points
- If a request hits the memory limit at a bad moment, the worker keeps stale internal data pointing to freed memory and reuses it on the next request. Because this use-after-free is in PHP itself, even a Hello World page is affected.
- Similar memory-limit problems were known from Stefan Esser’s 2004 finding, a 2020 bug report and a 2024 audit, and the PHP Foundation called the delay a structural failure. Calif reported it in August 2026, and OpenAI and Wiz also found it independently.
- In Patch the Planet, Trail of Bits engineers reproduce each AI finding, and maintainers decide which fix goes in and when.
- The coordinated disclosure slipped the day before release: CVE numbers leaked with a wrong CVSS 10.0 score, a proof-of-concept video was published by mistake, and the distributor Chainguard shipped patched images early.
- On Hacker News, people debated whether the announcement was marketing, whether the $1 billion in Daybreak credits should go directly to OSS, and the many sites still running PHP 7 or 5.6.
Chapters
- 0:00 Introduction
- 0:34 What is php2shell?
- 1:22 A 20-year-old bug
- 2:50 What is Patch the Planet?
- 4:16 A global response
- 5:00 What happened the day before disclosure
- 5:58 Reactions on Hacker News
- 7:26 Summary
概要
2026年10月21日、PHPの8.2から8.5までが一斉に更新され、php2shellと呼ばれる2つの脆弱性が修正されました。CVSSは9.2で、ログインしなくてもサーバー上でコードを実行されるおそれがあるものです。見つけた研究者の1人はOpenAIの取り組み「Patch the Planet」に参加しており、OpenAIは今回のバグが、同社が修正を進めている数多くの重大な脆弱性の1つにすぎないとしています。
この動画では、バグの仕組み、20年も直らなかった理由、Patch the Planetの進め方、そして巻き起こった議論を解説します。
ポイント
- リクエストが悪いタイミングでメモリ上限に達すると、ワーカープロセスには解放済みのメモリを指す古い内部情報が残り、次のリクエストでそれを使ってしまいます。このuse-after-freeはPHP本体にあるため、Hello Worldを返すだけのページでも影響を受けます。
- メモリ上限にからむこうした問題は、2004年のStefan Esserの発見、2020年のバグ報告、2024年の外部監査で知られていて、PHP Foundationはこの遅れを構造的な失敗だったと認めています。2026年8月にCalifが報告し、OpenAIとWizもそれぞれ独自に報告しています。
- Patch the Planetでは、AIが出した候補をTrail of Bitsのエンジニアが再現して確かめ、どの修正をいつ入れるかはメンテナーが決めます。
- 公開前日には協調開示が崩れました。CVE番号が誤ったCVSS 10.0とともに流出し、検証動画が誤って公開され、配布元のChainguardが修正入りのイメージを先に出しました。
- Hacker Newsでは、発表は宣伝ではないか、Daybreakの利用枠としての10億ドルはOSSに直接出すべきではないか、PHP 7や5.6のサイトがまだ多いことなどが議論されました。