PHP2Shell Jadi Sorotan Keamanan Siber pada Oktober 2026
Dunia keamanan siber kembali dihebohkan dengan penemuan dua kerentanan kritis pada PHP, bahasa pemrograman yang banyak digunakan untuk membangun website dan aplikasi web. Kerentanan yang dikenal dengan sebutan PHP2Shell ini berpotensi memungkinkan penyerang menjalankan kode berbahaya dari jarak jauh pada server yang rentan, bahkan tanpa harus login terlebih dahulu.
Berdasarkan laporan keamanan yang dipublikasikan pada 21 Oktober 2026, dua kerentanan tersebut tercatat sebagai CVE-2026-109618 dan CVE-2026-109619. Keduanya mendapatkan skor keparahan CVSS 4.0 sebesar 9,2 dari 10, yang menempatkannya dalam kategori kritis.
Ancaman ini menjadi perhatian penting bagi administrator server, developer PHP, pengelola hosting, hingga pemilik website yang menjalankan aplikasi berbasis PHP.
Masalahnya bukan hanya terletak pada kode aplikasi yang dibuat developer. Kerentanan ini berada pada implementasi inti PHP (PHP runtime), sehingga aplikasi yang menggunakan versi PHP terdampak berpotensi menghadapi risiko meskipun kode aplikasinya tidak memiliki bug yang sama.
Karena itu, memperbarui framework atau plugin saja belum tentu cukup. Pengelola sistem perlu memeriksa versi PHP yang benar-benar digunakan oleh layanan web mereka.
Apa Itu PHP2Shell?
PHP2Shell merupakan sebutan yang digunakan dalam pemberitaan keamanan untuk rangkaian kerentanan kritis PHP yang memungkinkan terjadinya remote code execution atau RCE.
RCE adalah kondisi ketika penyerang dapat membuat sistem menjalankan instruksi atau kode yang tidak semestinya dari jarak jauh. Apabila serangan berhasil, dampaknya dapat mencakup pencurian data, perubahan berkas, pemasangan malware, hingga pengambilalihan sebagian fungsi server sesuai hak akses proses yang berhasil dieksploitasi.
Dalam kasus PHP2Shell, dua akar masalah yang diungkap berkaitan dengan penanganan memori ketika terjadi kondisi kehabisan memori dan pengelolaan status internal PHP setelah memori suatu permintaan dilepaskan.
Artinya, masalah ini bukan sekadar kesalahan validasi input pada sebuah form. Bug berada pada lapisan runtime yang memproses permintaan HTTP sebelum atau selama aplikasi menjalankan logikanya.
Mengenal Dua CVE Kritis PHP2Shell
1. CVE-2026-109618: Kerentanan pada Penanganan Out-of-Memory
Kerentanan pertama berkaitan dengan mekanisme out-of-memory (OOM), yaitu kondisi ketika PHP tidak dapat melanjutkan proses karena kebutuhan memori tidak terpenuhi.
Pada situasi tertentu, proses penanganan kesalahan dapat menghentikan eksekusi ketika data internal permintaan belum sepenuhnya diinisialisasi. Proses pembersihan setelah kesalahan kemudian berpotensi memperlakukan data tersebut seolah-olah sudah valid.
Kondisi ini dapat menyebabkan kerusakan memori (memory corruption) dan, dalam keadaan yang memenuhi persyaratan eksploitasi, berujung pada eksekusi kode dari jarak jauh.
Bagi pengelola website, hal ini menunjukkan bahwa mekanisme pembatasan sumber daya dan penanganan kesalahan pada runtime juga merupakan bagian penting dari keamanan server.
2. CVE-2026-109619: Kerentanan Stale Global State
Kerentanan kedua berkaitan dengan status internal PHP yang masih merujuk pada memori permintaan yang sebenarnya sudah dilepaskan.
Dalam istilah keamanan memori, pola masalah seperti ini berhubungan dengan use-after-free. Ketika sebuah proses kembali menggunakan referensi memori yang sudah tidak valid, perilaku program dapat menjadi tidak terduga dan membuka peluang terjadinya eksploitasi.
Pada kondisi tertentu, status internal yang belum dibersihkan dengan benar dapat digunakan kembali oleh permintaan berikutnya yang ditangani worker yang sama.
Kedua kerentanan tersebut dinilai kritis karena berpotensi memungkinkan eksekusi kode tanpa autentikasi pada konfigurasi yang rentan.
Versi PHP yang Terdampak
Berdasarkan advisori keamanan yang tersedia, pembaruan perbaikan untuk dua kerentanan tersebut telah dirilis pada 21 Oktober 2026.
| Cabang PHP | Versi perbaikan |
|---|---|
| PHP 8.5 | 8.5.12 |
| PHP 8.4 | 8.4.27 |
| PHP 8.3 | 8.3.36 |
| PHP 8.2 | 8.2.35 |
Versi sebelum rilis perbaikan pada setiap cabang di atas terdampak. PHP 8.1 dan versi yang lebih lama juga perlu mendapat perhatian khusus karena telah berstatus end-of-life dan tidak lagi menerima pembaruan reguler dari proyek PHP. Dukungan keamanan dari vendor tertentu dapat memiliki kebijakan tersendiri.
Penting: daftar di atas merujuk pada perbaikan untuk CVE-2026-109618 dan CVE-2026-109619. Jangan menganggap suatu versi otomatis aman dari seluruh kerentanan PHP terbaru hanya karena sudah memenuhi versi minimum tersebut.
Sebelum melakukan pembaruan, periksa advisori resmi terbaru dan paket yang disediakan oleh sistem operasi atau penyedia hosting.
Apakah Website WordPress dan Framework PHP Ikut Berisiko?
Website berbasis WordPress, Laravel, Drupal, Joomla, maupun aplikasi PHP kustom perlu memeriksa runtime PHP yang digunakan.
Namun, ada perbedaan penting antara kerentanan inti PHP dan kerentanan pada plugin atau framework.
Jika sumber masalah berada pada runtime, mengganti plugin, memperbarui tema, atau memperbaiki kode aplikasi tidak otomatis menghilangkan bug di tingkat PHP. Sebaliknya, memperbarui PHP juga tidak menggantikan kebutuhan untuk menambal kerentanan pada plugin dan aplikasi itu sendiri.
Karena itu, pemeriksaan sebaiknya dilakukan pada beberapa lapisan:
- Runtime: versi PHP yang benar-benar menjalankan aplikasi.
- Web server: Apache, Nginx, LiteSpeed, atau konfigurasi server terkait.
- PHP handler: misalnya PHP-FPM,
mod_php, atauphp-cgi. - Aplikasi: CMS, framework, plugin, library, dan kode kustom.
- Infrastruktur: container, reverse proxy, WAF, serta sistem pemantauan keamanan.
Layanan yang dapat diakses melalui internet perlu diprioritaskan karena memiliki permukaan serangan yang lebih luas.
Cara Memeriksa Versi PHP di Server
Administrator dapat memulai pemeriksaan melalui terminal pada server yang dikelola sendiri.
Jalankan perintah berikut:
php -vPerintah tersebut menampilkan versi PHP pada lingkungan CLI (Command Line Interface).
Contoh keluaran:
PHP 8.4.27 (cli) ...Perlu diperhatikan bahwa versi CLI belum tentu sama dengan versi yang digunakan website. Server dapat memiliki beberapa instalasi PHP, versi berbeda untuk PHP-FPM, atau konfigurasi khusus pada panel hosting.
Untuk itu, periksa juga versi PHP pada layanan web yang sebenarnya, konfigurasi PHP-FPM, atau panel hosting. Jika menggunakan hosting bersama, tanyakan kepada penyedia layanan mengenai versi runtime yang aktif dan pembaruan keamanan yang telah diterapkan.
Hindari menampilkan halaman phpinfo() ke publik tanpa perlindungan karena informasi konfigurasi yang ditampilkan dapat membantu pihak lain memetakan lingkungan server.
Langkah Mitigasi PHP2Shell yang Harus Dilakukan
1. Perbarui PHP ke Versi yang Sudah Diperbaiki
Langkah utama adalah memasang versi PHP yang telah menerima patch keamanan. Gunakan paket resmi sistem operasi, repositori tepercaya, atau fasilitas pembaruan yang disediakan penyedia hosting.
Setelah pembaruan, pastikan layanan web benar-benar menggunakan versi yang sudah diperbaiki. Memperbarui PHP CLI saja tidak menjamin PHP-FPM atau modul PHP pada web server ikut berubah.
2. Periksa Server yang Menggunakan PHP Lama
Inventarisasi seluruh aplikasi, container, mesin virtual, dan server yang menjalankan PHP. Jangan hanya memeriksa server produksi utama karena layanan staging, panel administrasi, dan aplikasi lama juga dapat menjadi titik masuk.
Untuk versi PHP yang sudah tidak didukung, rencanakan migrasi ke cabang yang masih memperoleh pembaruan keamanan. Jika migrasi belum dapat dilakukan, hubungi vendor yang menyediakan dukungan keamanan untuk memastikan status patch yang tersedia.
3. Batasi Paparan Sistem yang Belum Dapat Ditambal
Jika pembaruan belum memungkinkan, pertimbangkan untuk sementara membatasi akses jaringan ke layanan yang terdampak atau mengisolasinya dari internet sampai perbaikan terverifikasi.
WAF, pembatasan ukuran permintaan, dan penguatan konfigurasi dapat mengurangi risiko pada jalur serangan tertentu, tetapi tidak menggantikan patch keamanan.
4. Pantau Log dan Aktivitas Server
Periksa log web server, PHP-FPM, sistem operasi, dan aplikasi untuk menemukan aktivitas yang tidak biasa, seperti lonjakan kesalahan PHP, proses baru yang tidak dikenal, perubahan berkas tanpa otorisasi, atau permintaan HTTP yang mencurigakan.
Apabila terdapat indikasi eksploitasi, jangan hanya memperbarui PHP. Lakukan investigasi insiden, amankan bukti log, periksa kemungkinan persistensi malware, dan rotasi kredensial jika ada alasan untuk menduga kredensial tersebut telah terpapar.
5. Terapkan Pembaruan Secara Terencana
Sebelum melakukan pembaruan di lingkungan produksi, lakukan pengujian kompatibilitas pada lingkungan staging apabila tersedia. Siapkan cadangan yang dapat dipulihkan dan prosedur pemulihan layanan.
Walaupun demikian, untuk kerentanan kritis yang berpotensi dieksploitasi dari jarak jauh, proses pengujian tidak seharusnya menunda mitigasi tanpa batas. Prioritaskan layanan yang terbuka ke internet dan susun jadwal remediasi berdasarkan tingkat risikonya.
Kesimpulan
PHP2Shell menjadi pengingat bahwa keamanan aplikasi web tidak hanya bergantung pada kualitas kode yang ditulis developer. Runtime, sistem operasi, konfigurasi server, dan proses pemeliharaan keamanan juga memiliki peran penting.
Dua kerentanan PHP yang diumumkan pada Oktober 2026, CVE-2026-109618 dan CVE-2026-109619, dinilai kritis karena dapat membuka peluang remote code execution tanpa autentikasi pada sistem yang rentan.
Bagi developer dan administrator, tindakan paling penting adalah mengidentifikasi seluruh instalasi PHP, menerapkan pembaruan yang sesuai, memverifikasi runtime aktif, serta memantau aktivitas sistem setelah remediasi.
Jangan menunggu sampai website mengalami gangguan atau diretas. Periksa versi PHP server Anda dan pastikan pembaruan keamanan telah diterapkan.





