PHP2Shell: dua kelemahan kritikal PHP, embargo yang bocor, dan apa yang sebenarnya diketahui tentang eksploitasi
PHP menghantar pembaikan kecemasan untuk dua kelemahan pelaksanaan kod jauh kritikal, CVE-2026-109618 dan CVE-2026-109619, yang dipanggil PHP2Shell.
PHP menghantar pembaikan kecemasan untuk dua kelemahan pelaksanaan kod jauh kritikal, CVE-2026-109618 dan CVE-2026-109619, yang dipanggil PHP2Shell. Keluaran itu tiba pada 21 Oktober 2026. Episod ini menerangkan dua pepijat memori dalam perkataan mudah, mengapa petunjuk daripada audit 2024 menunggu untuk diperbaiki, bagaimana embargo bocor, dan sumber mana yang mengatakan apa tentang eksploitasi. Ia juga meliputi keluaran patch kritikal pada hari yang sama oleh GitLab dan perintah penalti Meta $25 bilion di New Mexico.
Baca edisi bertulis (Bahasa Inggeris) ↗
Apa yang diliputi video ini
- Kedua-dua kelemahan diberi penarafan 9.2 pada CVSS v4.0 oleh pasukan PHP. Keluaran yang dibetulkan ialah PHP 8.2.35, 8.3.36, 8.4.27 dan 8.5.12; PHP 7.4, 8.0 dan 8.1 hanya menerima tampalan sumber. PHP mengatakan bahawa mengemas kini adalah satu-satunya mitigasi lengkap.
- Kelemahan pertama datang dari PHP meninggalkan permintaan separuh siap apabila kehabisan memori pada saat yang salah. Kelemahan kedua datang dari penunjuk sisa kepada memori satu permintaan yang boleh digunakan oleh permintaan kemudian dalam pekerja yang sama. Pada Apache dengan mod_php laluan pertama berjalan sebelum kod aplikasi.
- Seorang pembangun teras PHP menemui tanda-tanda pertama masalah memori semasa audit 2024. Yayasan PHP mengatakan bahawa pembetulan yang bersaing mempunyai kompromi dan pasukan keselamatan berasaskan konsensus bergelut untuk memilih, yang disebutnya sebagai kegagalan struktur.
- Yayasan mengatakan bahawa ID CVE bocor pada 20 Oktober, Calif tersalah terbitkan video bukti konsep, dan Chainguard menerbitkan imej yang dibina dengan pembetulan lebih daripada enam jam sebelum keluaran. Ketua Pegawai Eksekutif Chainguard mengatakan bahawa orang ramai sudah terjejas dan bahawa dia menemui pepijat secara bebas.
- Sumber-sumber tidak bersetuju mengenai eksploitasi. Amazon mencatatkan percubaan pada 17 Oktober dan kemudian mengatakan PHP2Shell dieksploitasi secara meluas. watchTowr melaporkan eksploitasi di alam liar. CISA tidak memerhatikan eksploitasi pada penerbitan, dan pasukan PHP tidak menemui eksploitasi berfungsi pada keluaran. Banyak skrip bukti-konsep awam dilaporkan tidak berfungsi.
- Periksa setiap tempat PHP berjalan, termasuk salinan di dalam perisian lain, kemas kini, mulakan semula pekerja dan semak log kembali ke 17 Oktober.
Soalan dan jawapan
Apakah dua kerentanan PHP2Shell?
PHP2Shell menamakan dua kelemahan kritikal PHP, CVE-2026-109618 dan CVE-2026-109619, kedua-duanya diberi penarafan 9.2 oleh pasukan PHP. Yang pertama meninggalkan permintaan separuh siap apabila PHP kehabisan memori pada saat yang salah, dan pembersihan kemudian mempercayainya. Yang kedua meninggalkan penunjuk ke memori satu permintaan yang boleh digunakan oleh permintaan kemudian dalam pekerja yang sama. Kedua-duanya boleh menyebabkan pelaksanaan kod tanpa log masuk.
Versi PHP mana yang mempunyai pembetulan untuk PHP2Shell, dan bagaimana pula dengan versi yang tidak disokong?
Projek PHP mengeluarkan pembetulan dalam 8.2.35, 8.3.36, 8.4.27 dan 8.5.12 pada 21 Oktober. Untuk 7.4, 8.0 dan 8.1 ia hanya menerbitkan tampalan sumber, dan BleepingComputer melaporkan bahawa pengedaran dan vendor sokongan jangka panjang mungkin membekalkan pembetulan yang di-backport. PHP mengatakan tiada penyelesaian lengkap, jadi mengemas kini atau meminta vendor untuk pakej yang ditampal adalah satu-satunya pilihan selamat.
Mengapa pepijat memori PHP yang diketahui mengambil masa sehingga Oktober 2026 untuk dibetulkan?
Yayasan PHP mengatakan seorang pembangun teras menemui tanda-tanda pertama masalah memori semasa audit keselamatan 2024, tetapi tiada laluan eksploitasi diketahui dan setiap calon pembetulan mempunyai kompromi seperti gangguan keserasian. Pasukan keselamatan membuat keputusan secara konsensus dan bergelut untuk memilih, yang disebut oleh Yayasan sebagai kegagalan struktur yang disebabkan oleh proses keputusannya dan kekurangan sumber.
Adakah PHP2Shell dieksploitasi, dan adakah mudah untuk mengeksploitasinya?
Sumber-sumber tidak bersetuju. Amazon mencatatkan percubaan eksploitasi pada 17 Oktober dan kemudian mengatakan PHP2Shell dieksploitasi secara meluas, dan watchTowr melaporkan eksploitasi di alam liar. CISA tidak memerhatikan eksploitasi pada penerbitan, dan pasukan PHP tidak melihat eksploitasi berfungsi pada keluaran. watchTowr mengatakan kebanyakan skrip eksploitasi awam terhempas atau tidak melakukan apa-apa, dan VulnCheck mendapati pelaksanaan kod hanya berfungsi dalam beberapa persediaan.
Apakah keputusan The Daily Diff mengenai PHP2Shell?
Keputusan The Daily Diff adalah SHIP IT: hantar kemas kini PHP malam ini, kerana versi baharu adalah satu-satunya pembetulan lengkap. CISA mengatakan untuk menginventori setiap sistem yang menjalankan PHP, termasuk salinan di dalam perisian lain, gunakan tampalan, dan hentikan sistem PHP jika tidak dapat dikemas kini. Amazon menasihatkan untuk menyemak log kembali ke 17 Oktober, apabila ia melihat percubaan pertama.
Transkrip terjemahan
Diterjemahkan daripada penceritaan asal Bahasa Inggeris. Audio dan kapsyen yang tersedia dikawal oleh YouTube.
Siapa yang mencuba PHP2Shell empat hari lebih awal?
0:00 Embargo keselamatan sepatutnya merahsiakan pepijat sehingga tampalan dikeluarkan. Amazon mencatatkan percubaan terhadap pepijat kritikal PHP empat hari lebih awal. Dalam video ini, siapa yang menemuinya? Bagaimana embargo itu bocor? Dan betapa teruknya ia, sebenarnya? Dan syarikat yang dipersalahkan atas kebocoran itu mempunyai pembelaan yang tidak saya jangkakan. Saya akan sampai ke sana. Hari Khamis, 22 Oktober, dan ini adalah The Daily Diff.
0:21 PHP adalah bahasa skrip yang membina halaman web di pelayan sebelum ia sampai kepada anda. Ia berusia lebih dari tiga puluh tahun dan, menurut satu anggaran, menjalankan kira-kira tujuh puluh peratus laman web, termasuk WordPress dan perisian di sebalik Wikipedia. Pembangun suka mengejeknya, biasanya dari halaman yang disediakan PHP kepada mereka. Penyelenggaraannya adalah organisasi bukan untung dengan kira-kira tiga belas jurutera.
Apakah dua pepijat PHP2Shell?
0:41 Pada hari Rabu, PHP mengeluarkan pembetulan kecemasan untuk dua kelemahan kritikal yang membolehkan seorang orang yang tidak dikenali menjalankan kod pada pelayan tanpa log masuk. Bersama-sama mereka dipanggil PHP2Shell, dan mereka kembali kepada PHP lima titik empat. Berikut adalah pepijat pertama dalam perkataan mudah. PHP memberikan setiap permintaan belanjawan memori. Jika permintaan mencapai had itu pada saat yang salah, PHP keluar dengan tergesa-gesa dan meninggalkan permintaan separuh siap. Kemudian langkah pembersihan mempercayai perkara yang separuh siap.
1:07 Pepijat kedua adalah sisa. Ralat maut boleh meninggalkan nota yang menunjuk kepada memori yang dimiliki oleh yang terakhir permintaan. Pekerja yang sama mengendalikan permintaan seterusnya dan mengikut nota itu. Pada masa itu orang lain tinggal di alamat itu. Pada Apache dengan mod PHP, kerosakan berlaku sebelum kod anda sendiri berjalan, jadi halaman log masuk anda tidak pernah mendapat undian. Wiz mengatakan walaupun skrip hello world terdedah. Pembetulan ini menghilangkan jalan keluar kecemasan PHP kerana kehabisan memori.
1:32 Daripada keluar di tengah permintaan, PHP kini berhenti dengan sopan pada titik selamat seterusnya. Bahagian yang pelik ialah betapa lamanya petunjuk pertama itu.
Mengapa pepijat yang diketahui menunggu dua tahun?
1:39 Pada tahun 2024, audit keselamatan luaran membawa seorang pembangun teras PHP kepada tanda-tanda pertama masalah memori. Tiada eksploitasi diketahui, dan setiap pembetulan merosakkan sesuatu. Pasukan yang membuat keputusan secara konsensus tidak dapat memilih, jadi pepijat itu menunggu. Kemudian pada bulan Ogos, penemu tiba dalam beberapa hari.
Siapa yang menemui PHP2Shell, dan bagaimana?
1:56 Penyelidik Calif Ryan Austin menemuinya pada 1 Ogos, bekerja melalui program Patch the Planet OpenAI. OpenAI melaporkan punca yang sama secara bebas. Wiz menemui varian beberapa minggu kemudian dengan model Gemini dan GPT. Austin mengatakan dia menggunakan model yang boleh didapatkan oleh sesiapa sahaja, ditambah teori tentang di mana pepijat lama PHP bersembunyi. OpenAI mengatakan AI canggih adalah kunci. Pepijat itu telah tersembunyi selama lebih dari satu dekad. Pelepasan itu dirancang untuk hari Khamis.
Bagaimana embargo PHP2Shell bocor?
2:21 Pada hari Selasa, dua nombor CVE mula beredar dalam talian, dengan waktu keluaran yang salah dan skor yang salah sebanyak sepuluh. PHP menarik keluaran itu sehari lebih awal. Petang itu, Calif secara tidak sengaja menerbitkan video bukti konsepnya berfungsi, dan salinan bertahan selepas pemadaman. Pada pagi Rabu, lebih dari enam jam sebelum keluaran, Chainguard menerbitkan imej yang dibina yang mengandungi pembetulan itu. PHP mengatakan mana-mana penyerang boleh mengkaji pembetulan itu sementara semua orang menunggu.
2:46 Tampalan juga adalah perbezaan, dan penyerang membaca perbezaan.
Adakah PHP2Shell dieksploitasi, dan oleh siapa?
2:50 Jadi siapa yang sebenarnya terjejas? Honeypot Amazon mencatatkan percubaan pada 17 Oktober dan kemudian mengatakan PHP2Shell dieksploitasi secara meluas. watchTowr melaporkan eksploitasi di alam liar. Cisa mengatakan ia tidak memerhatikan apa-apa apabila ia diterbitkan, dan pasukan PHP tidak melihat eksploitasi yang berfungsi pada keluaran. Ketua Pegawai Eksekutif Cloudflare mengatakan ia melihat ribuan percubaan dalam sepuluh jam sebelum pengumuman, dan jutaan menjelang pagi Khamis.
3:13 Amazon berhati-hati pada satu perkara. Ia tidak tahu sama ada percubaan awalnya akan berfungsi pada sistem sebenar. Percubaan hanyalah ketukan di pintu. Jadi betapa teruknya ia, sebenarnya? watchTowr mengatakan eksploitasi awam yang beredar kebanyakannya terhempas atau tidak melakukan apa-apa. VulnCheck mengatakan pelaksanaan kod berfungsi dalam beberapa persediaan, dan tiada satu pun yang awam mengalahkan rawak memori pada pelayan x86 standard. Penyelidik Elias Taylor mengatakan ia tidak semudah Log4Shell.
3:40 Semua orang masih mengatakan tampal. Kerajaan tidak menunggu keputusan.
Apakah yang dihentikan oleh kerajaan?
3:44 NSA memberitahu organisasi yang tidak dapat menampal untuk menghentikan sistem PHP, dan Pusat Keselamatan Siber Nasional UK memberikan nasihat yang serupa. dan Pusat Keselamatan Siber Nasional UK memberikan nasihat yang serupa. Laman web Belanda, termasuk perkhidmatan identiti digital nasional, menjadi gelap, bersama dengan laman web polis Paris. Wikimedia menurunkan beberapa sistem sebagai langkah berjaga-jaga. Palo Alto Networks mengira lebih dari dua puluh dua juta kejadian yang terdedah. Dan seorang profesor Australia membuat titik paling tajam. Laman web yang perlu dibimbangkan adalah laman web yang tidak ditutup hari ini.
Versi PHP mana yang mendapat pembetulan?
4:11 Pembetulan wujud untuk PHP lapan titik dua hingga lapan titik lima. Untuk tujuh titik empat, lapan titik oh dan lapan titik satu, PHP hanya menerbitkan tampalan sumber. Versi lama tidak mendapat apa-apa dari projek PHP, jadi tanyakan kepada pengedaran anda. Penyelesaian mengurangkan kemungkinan, tetapi PHP mengatakan mengemas kini adalah satu-satunya penyelesaian lengkap. Ia adalah pelajaran yang sama dengan episod eMudhra semalam,
Apa yang anda lakukan tentang PHP2Shell malam ini?
4:32 kerana pembetulan yang wujud tidak sama dengan proses berjalan yang memilikinya. Cari setiap PHP dalam tumpukan anda, walaupun salinan yang bersembunyi di dalam perisian lain. Kemas kini, mulakan semula pekerja, dan periksa log kembali ke tujuh belas Oktober. Pada hari yang sama, GitLab mengeluarkan keluaran tampalan kritikal,
Apa lagi yang mengeluarkan tampalan RCE kritikal hari ini?
4:47 sembilan belas titik lima titik satu. Limpahan integer dalam kompilernya membolehkan pengguna yang tidak disahkan menjalankan kod pada pelayan, dan ia mendapat skor sepuluh daripada sepuluh. GitLab dot com telah ditampal. Pemasangan yang diurus sendiri memerlukan kemas kini.
Mengapa Meta diperintahkan membayar $25 bilion?
5:01 Sementara itu di New Mexico, seorang hakim memerintahkan Meta membayar dua puluh lima bilion dolar dalam penalti atas Cambridge Analytica. Juri mengira lebih daripada empat puluh tiga juta pelanggaran pada sehingga lima ribu dolar setiap satu, yang berjumlah kira-kira dua ratus dua puluh bilion sebelum hakim memotongnya. Meta mengatakan ia akan menang dalam rayuan. Sekarang pembelaan yang saya janjikan.
Apakah pembelaan Chainguard untuk pembetulan awal?
5:19 Ketua Pegawai Eksekutif Chainguard memberitahu The Register dia menemui pepijat yang sama sendiri pada hari Jumaat malam, selepas mengetahui sesuatu akan datang dalam PHP, dengan arahan asas untuk mencari kerentanan buruk. Dia mengatakan dia menghantar awal kerana orang sudah terjejas. Jika anda lebih suka membaca ini daripada mendengar saya mengatakannya, perbezaan itu tiba di peti masuk anda setiap pagi, percuma di the daily diff dot dev, pautan di bawah. Jadi keputusan hari ini adalah SHIP IT.
Apa yang mendapat setem SHIP IT?
5:39 Hantar kemas kini PHP malam ini, kerana nombor versi baru adalah satu-satunya pembetulan lengkap. Dan itulah perbezaan untuk hari ini. Saya Niko dari Axrisi. Gabungkan dengan bertanggungjawab.
Sumber
- Today's PHP Security Release, and How We're Strengthening PHP SecurityThe PHP Foundation
- RCE via OOM corruption (GHSA-w8hw-w9fx-j79w)PHP security advisory
- RCE via stale global state (GHSA-6wmf-4rv5-p3rp)PHP security advisory
- Upcoming Critical PHP Security Releasephp.net
- php2shellCalif
- PHP2Shell: AI uncovers critical RCE vulnerabilities affecting 70% of the InternetWiz Research
- Amazon Threat Intelligence identifies PHP2Shell exploitation prior to public disclosure in MadPotAWS Security Blog
- Critical Vulnerabilities in PHP Require Immediate PatchingCISA
- Flaw in PHP computer language leads to shutdown of websites around worldThe Guardian
- What is PHP, and how bad is the computer language flaw causing website shutdowns globally?The Guardian
- PHP2Shell Exploitation Started Days Before PatchesSecurityWeek
- PHP2Shell: Responding to CVE-2026-109618 and CVE-2026-109619Tanium
- There isn't an easy exploit for this PHP vulnerabilityElias Taylor
- PHP blames supply chain security biz Chainguard for putting entire web at riskThe Register
- PHP2Shell: 22M exposed servers at risk as emergency patches releasedTechTarget
- PHP ships emergency patches for critical PHP2Shell flawsBleepingComputer
- GitLab Critical Patch Release: 19.5.1, 19.4.3, 19.3.6, 19.2.9, 19.1.9, 19.0.10, 18.11.13GitLab
- Meta ordered to pay $25 billion penalty in New Mexico Cambridge Analytica caseCNBC
- Tell HN: 2x PHP RCE CVEs with CVSS 10.0 IncomingHacker News



