PHP2Shell: Tim PHP Rilis Patch Darurat, Admin Server Diminta Segera Update

Tim keamanan PHP merilis pembaruan darurat pada Rabu (21/10/2026) untuk menutup dua kerentanan kritis yang dijuluki PHP2Shell. Celah ini memungkinkan penyerang menjalankan kode di server dari jarak jauh tanpa akun dan tanpa login. Masalahnya ada di inti bahasa PHP, bukan di plugin, tema, atau CMS tertentu.

Kedua celah tercatat sebagai CVE-2026-109618 dan CVE-2026-109619, masing-masing dengan skor 9,2 dari 10 pada CVSS versi 4.0. Perbaikannya tersedia di PHP 8.5.12, 8.4.27, 8.3.36, dan 8.2.35. Dalam pengumuman rilisnya, pengembang PHP menegaskan bahwa tidak ada mitigasi yang sepenuhnya efektif, sehingga memperbarui PHP menjadi satu-satunya pilihan yang aman.

Urgensinya bertambah karena sudah ada laporan awal soal upaya eksploitasi di internet. Bagi pengelola situs WordPress, Drupal, Joomla, atau aplikasi PHP lain, artinya jelas: memperbarui CMS dan plugin saja tidak cukup jika PHP di server masih versi lama.

Siapa yang paling berisiko

Konfigurasi server yang terdampak

Risiko PHP2Shell mencakup hampir semua instalasi PHP yang melayani permintaan web, termasuk Apache dengan mod_php, PHP-FPM, php-cgi, FrankenPHP, dan LiteSpeed. Tim keamanan PHP menilai risiko tertinggi ada pada mod_php, karena di sana sudah didemonstrasikan eksploit yang bisa dipicu oleh permintaan tanpa autentikasi sebelum kode aplikasi sempat berjalan.

Meski begitu, tidak semua situs PHP otomatis bisa dibobol. Keberhasilan serangan bergantung pada konfigurasi server, cara permintaan diproses, dan sejumlah faktor teknis lain.

Versi yang harus diperbarui

Cabang PHP Versi rentan Tindakan
PHP 8.5 Hingga 8.5.11 Perbarui ke 8.5.12
PHP 8.4 Hingga 8.4.26 Perbarui ke 8.4.27
PHP 8.3 Hingga 8.3.35 Perbarui ke 8.3.36
PHP 8.2 Hingga 8.2.34 Perbarui ke 8.2.35
PHP 8.1 dan lebih lama Tidak ada rilis reguler Migrasi ke versi yang didukung atau gunakan patch vendor
Catatan untuk cabang lama dan distribusi Linux

PHP 8.1 ke bawah sudah tidak menerima pembaruan rutin. Namun mengingat tingkat keparahannya, tim keamanan PHP menyediakan backport perbaikan minimal dalam bentuk kode sumber untuk PHP 7.4, 8.0, dan 8.1, ditujukan bagi pengguna yang mengompilasi sendiri atau tidak punya akses ke vendor LTS.

Pengguna Ubuntu, Debian, dan distribusi lain sebaiknya mengecek paket dari vendor sistem operasi. Vendor kerap menerapkan patch lewat backport, sehingga nomor versi PHP di server bisa tetap terlihat lama padahal sudah aman.

Bagaimana kedua celah bekerja

Keduanya berakar pada kesalahan pengelolaan memori saat PHP memproses permintaan HTTP tertentu. Dalam kondisi normal, PHP membersihkan memori setelah permintaan selesai. Gangguan di tengah proses, termasuk saat kehabisan memori, bisa membuat data dan referensi memori ditangani secara keliru.

CVE Jenis masalah Mekanisme singkat
CVE-2026-109618 Korupsi saat kehabisan memori (OOM) PHP terhenti ketika data internal belum selesai diinisialisasi, lalu proses pembersihan memperlakukan data setengah jadi itu sebagai data sah
CVE-2026-109619 Stale global state Referensi ke memori milik permintaan sebelumnya masih tersimpan meski memorinya sudah dibebaskan, dan bisa dipakai ulang untuk memengaruhi jalannya program

Akibatnya bisa beragam, mulai dari layanan yang terganggu, kebocoran informasi sensitif, hingga eksekusi kode berbahaya.

Langkah yang perlu diambil pengelola server

Pastikan versi yang benar-benar melayani situs

Perintah php -v hanya menampilkan versi PHP di lingkungan Command Line Interface (CLI). Versi itu belum tentu sama dengan PHP-FPM atau modul yang terhubung ke web server, jadi keduanya perlu dicek terpisah. Ini penting terutama di hosting bersama atau VPS yang menampung banyak situs.

Setelah paket diperbarui lewat repositori resmi atau penyedia hosting, layanan PHP-FPM atau web server wajib di-restart. Tanpa itu, proses lama tetap berjalan dengan kode yang belum diperbaiki.

Perlindungan sementara, bukan pengganti patch

Cloudflare menyatakan telah menyiapkan aturan Web Application Firewall (WAF) sejak awal Oktober lewat koordinasi dengan pihak yang menangani kerentanan ini. Perlindungan itu juga aktif otomatis bagi pengguna paket gratis melalui Cloudflare Managed Free Ruleset.

Sebagian penyedia platform juga menyarankan penyesuaian konfigurasi PHP sambil menunggu patch. Platform hosting Sevalla, misalnya, merekomendasikan menonaktifkan session.upload_progress.enabled untuk memblokir jalur sesi yang dipakai dalam demonstrasi serangan CVE-2026-109619, sembari mengingatkan bahwa pengaturan semacam itu hanya mempersulit serangan dan tidak menutup celah sepenuhnya.

Langkah pendukung lain meliputi pembatasan ukuran unggahan yang tidak diperlukan dan pemeriksaan log server, terutama jika server rentan sempat terbuka ke internet.

Status eksploitasi: yang sudah dan belum dipastikan

Dalam laporannya pada 21 Oktober 2026, perusahaan keamanan Tenable mengutip pernyataan Cloudflare tentang indikasi awal serangan yang memanfaatkan PHP2Shell. Informasi ini masih bersifat awal. Aktivitas yang terdeteksi tidak otomatis berarti setiap percobaan berhasil mengambil alih server; dampaknya bisa berkisar dari gangguan proses PHP hingga eksekusi kode, tergantung kondisi yang terpenuhi.

Jika penyerang berhasil, besarnya kerusakan ditentukan oleh hak akses proses PHP di server. Karena itu, pembatasan hak akses dan pemisahan lingkungan aplikasi tetap relevan. Namun untuk menutup PHP2Shell, langkah utamanya tetap satu: pastikan PHP di server sudah menerima patch resmi.