Dua CVE RCE PHP Terbaru: Versi yang Harus Di-update dan Mitigasinya
Pada 21 Oktober 2026, tim PHP mengumumkan perbaikan dua kerentanan remote code execution (RCE): CVE-2026-109618 dan CVE-2026-109619. Keduanya adalah masalah pada runtime PHP, bukan celah khusus WordPress.[1][2][3]
Aplikasi web berbasis PHP tetap perlu memastikan versi PHP yang melayaninya sudah mendapat patch.[1]
Apa yang terjadi?
CVE-2026-109618 — RCE via OOM corruption. Penanganan kehabisan memori (out of memory) dapat menghentikan request saat data internal belum sepenuhnya diinisialisasi. Proses pembersihan berikutnya berpotensi memproses data yang tidak valid. Advisory menyebut demonstrasi RCE tanpa autentikasi pada Apache mod_php. PHP-FPM dinilai berpotensi terdampak berdasarkan analisis source, tetapi advisory tersebut tidak mengklaim demonstrasi eksploit FPM yang lengkap untuk jalur ini.[2]
CVE-2026-109619 — RCE via stale global state. State internal milik suatu request dapat tertinggal setelah memorinya dilepas, lalu dipakai request berikutnya pada worker yang sama. Advisory menyebut jalur session upload progress telah divalidasi pada mod_php dan PHP-FPM, dengan kondisi pemicu yang berbeda.[3]
Versi PHP yang sudah diperbaiki
Rilis yang memperbaiki kedua CVE tersebut adalah PHP 8.2.35, 8.3.36, 8.4.27, dan 8.5.12 atau rilis lebih baru di cabang masing-masing. Pembaruan plugin atau tema WordPress tidak menggantikan pembaruan PHP.[1][2][3]
Jangan hanya mengandalkan php -v dari terminal: versi PHP CLI bisa berbeda dari PHP-FPM atau mod_php yang memproses website. Cocokkan konfigurasi virtual host, pool/proses yang berjalan, dan versi runtime web sesudah pembaruan. Jika masih menggunakan PHP 7.4, cabang tersebut tidak termasuk cabang yang didukung pada daftar versi PHP saat ini; rencanakan migrasi, bukan menganggap patch untuk satu CVE sebagai dukungan keamanan penuh.[4]
Peringatan tambahan 23 Oktober: session upload progress
Tim PHP kemudian menyarankan session.upload_progress.enabled=0 sementara menunggu rilis perbaikan berikutnya untuk vektor RCE yang tidak umum. Kondisinya spesifik: aplikasi mengatur session.serialize_handler ke php_binary atau php_serialize dalam konfigurasi, lalu mengubahnya ke php lewat ini_set() sebelum session_start(), sementara session upload progress aktif. Tim PHP akan menerbitkan advisory lengkap CVE-2026-115560 bersama rilis berikutnya. Ini bukan klaim bahwa setiap website dengan upload progress aktif dapat dieksploitasi.[1]
Fitur session upload progress PHP berbeda dari indikator progres upload di browser yang memakai JavaScript. Sebelum menonaktifkannya pada production, periksa apakah aplikasi benar-benar memakai PHP_SESSION_UPLOAD_PROGRESS atau membaca data progres dari session. Upload file biasa tidak otomatis memerlukan fitur ini.
Langkah untuk pengelola WordPress
- Identifikasi PHP yang melayani website, bukan hanya PHP CLI; catat juga server API-nya (
PHP-FPM,mod_php, dan sebagainya). - Perbarui ke rilis PHP yang sudah dipatch melalui penyedia hosting atau panel, lalu pastikan worker web yang berjalan memakai binary baru. Patch adalah mitigasi lengkap untuk dua CVE 21 Oktober; pengaturan konfigurasi saja bukan penggantinya.[1][2][3]
- Audit kebutuhan session upload progress sebelum mengatur
session.upload_progress.enabled=0. Pada production, lakukan backup konfigurasi, uji alur unggah di staging, jadwalkan perubahan, siapkan rollback, dan verifikasi setelan efektif sesudah restart worker.[1] - Periksa log dan integritas situs bila ada indikasi kompromi. Versi yang sudah dipatch hari ini tidak membuktikan instalasi yang sebelumnya terpapar masih bersih.
Intinya: prioritaskan patch PHP, verifikasi runtime web yang benar-benar aktif, lalu evaluasi mitigasi upload progress sesuai aplikasi. Jangan menyamakan adanya CVE pada PHP dengan bukti bahwa WordPress tertentu telah dibobol.
Sumber resmi
[1] PHP News Archive 2026
[2] PHP advisory: RCE via OOM corruption
[3] PHP advisory: RCE via stale global state
[4] PHP Supported Versions
