WordPress baru saja merilis WordPress 7.1.2, update keamanan tunggal yang menutup satu celah kritis yang sudah bersarang sejak WordPress 4.7.0 hingga 7.1.1. Pada versi-versi itu, tanpa perlu login sama sekali, penyerang berpotensi menyisipkan file lokal ke proses resolusi template dan, pada kondisi tertentu, itu bisa berujung pada eksekusi kode dari jarak jauh.
Bila Anda mengelola satu situs pribadi atau puluhan situs klien, artinya keamanan pada website menjadi tanggung jawab Anda. Artikel ini akan membahas mekanisme celah yang baru ditambal WordPress 7.1.2, sekaligus siapa saja yang masih berisiko kalau belum update. Anda juga akan menemukan langkah mitigasi yang bisa langsung diambil hari ini.
Ringkasan Cepat
- WordPress 7.1.2 dirilis pada 22 September 2026 sebagai security-only release dengan satu perbaikan.
- Celahnya adalah unauthenticated local file inclusion (LFI) pada resolusi page template, terdaftar sebagai CVE-2026-87902 dengan skor CVSS 9.2.
- Versi terdampak sangat luas, dari WordPress Core 4.7.0 hingga 7.1.1, hampir satu dekade rilis.
- LFI ini bisa meningkat menjadi remote code execution (RCE) jika kondisi tema dan konfigurasi PHP tertentu terpenuhi, dan kombinasi itu cukup umum ditemukan.
- Backport patch sudah disiapkan untuk semua branch lama, sehingga situs versi lawas tetap bisa ditambal tanpa harus loncat ke versi major terbaru.
Bagaimana Celah RCE Ini Bekerja di WordPress 7.1.1 ke Bawah
Celah ini ada di WordPress Core versi 4.7.0 hingga 7.1.1, dan sudah tertutup sejak 7.1.2 dirilis. Saat WordPress di versi-versi lama itu merender sebuah halaman, fungsi get_page_template() di wp-includes/template.php menyusun daftar kandidat nama file template, lalu menyerahkannya ke template loader. Salah satu kandidat dibangun langsung dari parameter pagename yang berasal dari request pengunjung.
Also Read
Masalahnya, kandidat template lain di fungsi yang sama sudah melewati validate_file(), mekanisme WordPress untuk mencegah path traversal. Sementara kandidat yang dibangun dari pagename tidak pernah melewati pengecekan itu. Proteksinya ada, hanya saja terlewat pada satu jalur yang seharusnya juga diperiksa.
Nama file yang terbentuk mengikuti pola page-{pagename}.php, sehingga secara praktis penyerang perlu mengarahkan payload ke direktori yang memang diawali page- dan berujung .php. Prasyarat ini terpenuhi pada tema dengan struktur direktori seperti page-templates, pola yang cukup umum dipakai tema lawas maupun sejumlah tema pihak ketiga yang populer.
Kenapa LFI di Versi Lama Ini Bisa Berujung RCE
Menyisipkan file lokal saja belum tentu berarti penyerang bisa menjalankan kode sesuka hati, karena file yang disisipkan hanya menjalankan apa pun yang memang ada di dalamnya. Untuk sampai ke eksekusi kode, dibutuhkan file .php yang bisa dibaca di server dan berguna saat disertakan, dan kandidat yang paling sering disebut adalah pearcmd.php milik PEAR.
Pada situs yang belum update ke 7.1.2, file ini baru berguna bagi penyerang jika PHP berjalan dengan register_argc_argv aktif, sebuah pengaturan yang justru menyala secara default di image Docker PHP resmi dan pada environment cPanel dengan PHP di bawah versi 8.5.
Kombinasi ini jauh dari kata langka, sehingga situs yang masih berjalan di 7.1.1 ke bawah pantas diperlakukan sebagai berisiko kritis kecuali Anda sudah memeriksa sendiri stack yang digunakan dan memastikan kondisinya tidak terpenuhi.
Detail Teknis CVE-2026-87902
| Aspek | Detail |
|---|---|
| CVE ID | CVE-2026-87902 |
| Skor CVSS | 9.2 (kritis) |
| Jenis celah | Unauthenticated Local File Inclusion menuju Remote Code Execution |
| Versi terdampak | WordPress Core 4.7.0 hingga 7.1.1 |
| Versi aman | versi 7.1.2, termasuk backport untuk branch lama |
| Autentikasi diperlukan | Tidak |
| Prasyarat eksploitasi | Tema dengan direktori berawalan page-, PHP dengan register_argc_argv aktif |
| Pelapor | Robert Ressl |
Perbaikan yang Dibawa WordPress 7.1.2
WordPress menambal celah spesifik ini dengan menerapkan pengecekan validate_file() yang sama pada jalur kode yang sebelumnya terlewat. Menariknya, tim keamanan tidak berhenti di situ. Mereka juga menambahkan lapisan containment baru yang memastikan setiap template hasil resolusi, dari jalur kode mana pun, harus benar-benar berada di dalam direktori tema yang diizinkan.
Pendekatan ini menunjukkan bahwa perbaikannya tidak sekadar menutup satu titik yang dilaporkan, melainkan memperlakukan resolusi template sebagai kelas masalah tersendiri. Sinyal ini cukup untuk menjelaskan kenapa update ini layak diprioritaskan, bukan sekadar patch tambal sulam.
Langkah Update yang Perlu Anda Lakukan
- Cek versi WordPress yang berjalan lewat dashboard atau WP-CLI dengan perintah
wp core version. - Backup penuh database dan seluruh file sebelum melakukan update, terutama jika situs masih berjalan di versi yang cukup lawas.
- Update ke WordPress 7.1.2 lewat dashboard, WP-CLI, atau panel hosting yang Anda gunakan.
- Untuk situs di branch lama yang belum bisa migrasi ke versi terbaru, pastikan Anda mengambil rilis backport yang sesuai, karena patch ini tersedia hingga ke branch 4.7.
- Pastikan auto-update untuk security release aktif agar situs Anda tidak lagi bergantung pada jadwal login manual untuk mendapat patch kritis berikutnya.
BACA JUGA : Plugin Security Audit WordPress: Mengapa Audit Itu Penting?
Mitigasi Sementara Jika Update Belum Bisa Langsung Dijalankan
Dua langkah berikut tidak menggantikan patch resmi, tetapi membantu Anda mengukur seberapa dekat situs dengan kondisi terburuk.
- Periksa apakah tema aktif Anda memiliki direktori top-level yang diawali
page-, karena ini menjadi salah satu prasyarat eksploitasi. - Periksa pengaturan
register_argc_argvdi konfigurasi PHP Anda, terutama jika situs berjalan di environment cPanel dengan PHP di bawah versi 8.5.
Jika kedua kondisi itu terpenuhi di situs Anda, perlakukan update sebagai prioritas hari itu juga, bukan menunggu jadwal maintenance rutin.
FAQ
Berikut adalah beberapa pertanyaan popular tentang celah keamanan CVE pada WordPress versi 7.1.1 atau sebelumnya.
Apakah semua situs WordPress terdampak celah CVE-2026-87902?
Semua versi Core dari 4.7.0 hingga 7.1.1 rentan terhadap celah local file inclusion-nya, tetapi peningkatan ke remote code execution baru mungkin terjadi jika tema aktif memiliki direktori berawalan page- dan PHP berjalan dengan register_argc_argv aktif.
Apakah saya perlu upgrade ke versi major terbaru untuk mendapatkan patch ini?
Tidak. WordPress menyediakan backport patch untuk setiap branch yang masih didukung hingga ke versi 4.7, sehingga situs di versi lawas bisa mendapatkan perbaikan tanpa harus melompat ke versi major terbaru.
Bagaimana cara mengetahui apakah situs saya rentan terhadap eksekusi kode, bukan cuma LFI?
Periksa struktur folder tema aktif Anda untuk direktori yang diawali page-, lalu cek pengaturan register_argc_argv pada konfigurasi PHP server. Jika keduanya aktif, situs Anda berada pada kondisi yang lebih berisiko dan update perlu diprioritaskan segera.
Apakah WAF bisa melindungi situs saya sebelum sempat update?
WAF dapat memblokir pola serangan yang sudah diketahui dan mengurangi risiko sementara, namun karena celah ini ada di inti WordPress dan cakupannya luas, update ke 7.1.2 tetap menjadi langkah yang tidak tergantikan.
Kesimpulan
WordPress 7.1.2 menutup celah yang jarang terjadi, yaitu jalur unauthenticated menuju remote code execution lewat mekanisme core WordPress sendiri, bukan lewat plugin atau tema tambahan. Cakupannya yang mundur hingga versi 4.7 membuat update ini relevan untuk hampir semua situs WordPress yang masih aktif dikelola, termasuk yang selama ini terasa “sudah lama aman”.
Kalau Anda mengelola banyak website berbasis WordPress dan butuh proses update, backup, serta monitoring keamanan yang lebih terstruktur, WordPress hosting Rumahweb bisa menjadi solusi terbaiknya. Dilengkapi dengan WordPress Toolkit, sehingga Anda cukup mengaktifkan fitur auto update agar update dilakukan secara otomatis ketika versi terbaru tersedia.
Selain itu, WordPress hosting Rumahweb juga dilengkapi dengan Monarx Security yang memantau script WordPress dari malware secara berkelanjutan. Dengan demikian, keamanan situs Anda jadi berlapis, tidak hanya mengandalkan satu lini pertahanan saja.







