wp2shell: Rantai Eksploitasi Kritis WordPress Core Memungkinkan RCE Tanpa Autentikasi -- 500 Juta Website Berisiko, Eksploitasi Aktif Terdeteksi
Daftar Isi 27 bagian
Ringkasan Eksekutif
Pada 17 Juli 2026, GitHub Security Advisory mempublikasikan CVE-2026-63030 – sebuah kerentanan kritis pada WordPress Core yang, ketika digabungkan dengan CVE-2026-60137, membentuk rantai eksploitasi yang dikenal sebagai “wp2shell”. Rantai ini memungkinkan penyerang yang tidak terautentikasi untuk mencapai Remote Code Execution (RCE) pada instalasi WordPress default – tanpa plugin tambahan, tanpa akun pengguna, dan tanpa interaksi apa pun.
Kedua kerentanan ini ditemukan oleh Adam Kues dari Searchlight Cyber. Yang membuat wp2shell sangat berbahaya adalah tidak adanya prasyarat: serangan dapat dieksploitasi terhadap instalasi WordPress standar yang baru diinstal, tanpa konfigurasi khusus atau plugin yang rentan.
WordPress digunakan oleh lebih dari 500 juta website di seluruh dunia, memberikan kerentanan ini permukaan serangan yang sangat luas. Dalam waktu kurang dari 24 jam setelah pengungkapan, proof-of-concept (PoC) publik telah beredar dan eksploitasi di alam liar (in-the-wild) mulai terdeteksi.
Pada 21 Juli 2026, Cybersecurity and Infrastructure Security Agency (CISA) memasukkan kedua CVE ke dalam Known Exploited Vulnerabilities (KEV) Catalog, mengonfirmasi eksploitasi aktif dan mewajibkan instansi federal AS untuk segera melakukan patching.
Anatomi wp2shell: Dua Kerentanan, Satu Rantai Mematikan
wp2shell bukanlah kerentanan tunggal, melainkan rantai eksploitasi yang menggabungkan dua kelemahan independen. Masing-masing kerentanan tidak cukup untuk mencapai RCE tanpa autentikasi – tetapi ketika dirantai bersama, keduanya menciptakan jalur serangan yang menghancurkan.
CVE-2026-63030: REST API Batch-Route Confusion
| Parameter | Nilai |
|---|---|
| CVE ID | CVE-2026-63030 |
| Jenis Kerentanan | Logic Flaw – Batch-Route Confusion |
| Komponen | WordPress REST API Batch Endpoint |
| Endpoint Rentan | /wp-json/batch/v1 |
| Attack Vector | Network (Remote) |
| Attack Complexity | Low |
| Privileges Required | None |
| User Interaction | None |
| Diperkenalkan di | WordPress 6.9 |
Mekanisme
CVE-2026-63030 adalah kelemahan logika pada prosesor batch WordPress REST API. Batch API melakukan validasi dan eksekusi dalam dua loop terpisah. Ketika fungsi wp_parse_url() gagal memproses path sub-request, error didorong ke array validasi tetapi tidak ke array matches. Ini menyebabkan desinkronisasi array, sehingga setiap request berikutnya didispatch ke handler yang salah.
Dengan kata lain, penyerang dapat memanipulasi batch processor untuk menjalankan operasi REST API dengan hak akses yang salah – termasuk operasi yang seharusnya memerlukan autentikasi.
CVE-2026-60137: SQL Injection pada WP_Query
| Parameter | Nilai |
|---|---|
| CVE ID | CVE-2026-60137 |
| Jenis Kerentanan | SQL Injection |
| Komponen | Parameter author__not_in pada WP_Query |
| Severity | High |
| Attack Vector | Network |
| Diperkenalkan di | WordPress 6.8 |
Mekanisme
CVE-2026-60137 adalah kerentanan SQL injection pada parameter author__not_in dari WP_Query. Ketika parameter ini diberikan sebagai string skalar (bukan array), nilainya diinterpolasi langsung ke dalam raw SQL query tanpa sanitasi yang memadai.
Dalam kondisi normal, validasi parameter mencegah eksploitasi ini. Namun, batch API desynchronization dari CVE-2026-63030 memungkinkan bypass terhadap validasi tersebut. Dengan menggunakan recursive batch call, penyerang dapat melewati pembatasan GET dan mencapai pre-authentication UNION-based SQL injection.
Rantai Eksploitasi Lengkap
CVE-2026-63030 (Batch-Route Confusion)
+
CVE-2026-60137 (SQL Injection via WP_Query)
=
wp2shell: Unauthenticated Remote Code Execution
Alur serangan wp2shell secara konseptual:
-
Batch API Manipulation – Penyerang mengirim request ke
/wp-json/batch/v1dengan payload yang dikonstruksi khusus untuk memicu desinkronisasi array validasi dan eksekusi. -
SQL Injection via author__not_in – Memanfaatkan desinkronisasi tersebut, penyerang menyuntikkan SQL melalui parameter
author__not_inuntuk mengekstrak data sensitif dari database WordPress, termasuk password hash administrator. -
Privilege Escalation – Menggunakan data yang diekstrak (atau melalui manipulasi lebih lanjut), penyerang membuat akun administrator baru atau mengambil alih akun yang ada.
-
Code Execution – Dengan akses administrator, penyerang login ke WordPress dashboard, mengunggah plugin berbahaya, dan mengeksekusi kode arbitrer pada server – menyelesaikan rantai RCE.
Searchlight Cyber menegaskan bahwa serangan ini dapat dilakukan terhadap instalasi WordPress standar tanpa plugin tambahan dan tanpa prasyarat konfigurasi khusus. Cloudflare juga melaporkan bahwa jalur kode yang rentan dapat dicapai ketika persistent object cache tidak digunakan – yang merupakan konfigurasi default pada banyak instalasi WordPress.
Versi yang Terdampak
| Versi WordPress | Status RCE Chain | Status SQL Injection |
|---|---|---|
| WordPress 7.0.0 - 7.0.1 | Terdampak penuh (RCE) | Terdampak |
| WordPress 6.9.0 - 6.9.4 | Terdampak penuh (RCE) | Terdampak |
| WordPress 6.8.0 - 6.8.5 | Tidak terdampak RCE | Terdampak SQL Injection saja |
| WordPress < 6.8 | Tidak terdampak | Tidak terdampak |
| WordPress 6.9.5 | Aman (patch) | Aman (patch) |
| WordPress 7.0.2 | Aman (patch) | Aman (patch) |
| WordPress 7.1 Beta 2 | Aman (patch) | Aman (patch) |
Catatan penting: Meskipun WordPress 6.8.0-6.8.5 tidak rentan terhadap rantai RCE penuh (karena CVE-2026-63030 diperkenalkan di 6.9), versi ini tetap rentan terhadap SQL injection CVE-2026-60137 dan harus segera diperbarui.
Respons WordPress: Forced Auto-Update
Mengingat tingkat keparahan kerentanan, tim keamanan WordPress mengambil langkah yang jarang dilakukan: mengaktifkan forced automatic security updates untuk instalasi yang didukung dan menjalankan versi terdampak.
“Because this is a security release, it is recommended that you update your sites immediately,” demikian pernyataan WordPress dalam security announcement mereka. “Due to the severity, the WordPress.org team have enabled forced updates via the auto-update system for sites running affected versions.”
Meskipun forced update telah diaktifkan, administrator tetap harus memverifikasi secara manual bahwa setiap website WordPress mereka telah berhasil diperbarui ke versi 6.9.5, 7.0.2, atau rilis lain yang sesuai dengan branch-nya.
Eksploitasi di Alam Liar
Timeline Eksploitasi
| Tanggal | Peristiwa |
|---|---|
| 17 Juli 2026 | GitHub Security Advisory mempublikasikan CVE-2026-63030; WordPress merilis patch 6.9.5 dan 7.0.2 |
| 17 Juli 2026 | Searchlight Cyber mempublikasikan wp2shell.com untuk membantu administrator menguji kerentanan |
| 18 Juli 2026 | Public PoC exploits mulai bermunculan di GitHub |
| 18 Juli 2026 | watchTowr melaporkan tanda-tanda awal eksploitasi in-the-wild |
| 19 Juli 2026 | Cloudflare mengumumkan deployment WAF rules untuk kedua CVE di semua plan, termasuk akun gratis |
| 20 Juli 2026 | Rapid7 merilis vulnerability checks untuk InsightVM dan Nexpose |
| 21 Juli 2026 | CISA menambahkan CVE-2026-63030 dan CVE-2026-60137 ke KEV Catalog |
| 22 Juli 2026 | Searchlight Cyber mempublikasikan detail teknis lengkap; multiple PoC exploits tersedia publik; eksploitasi massal terkonfirmasi |
Pola Eksploitasi
Berdasarkan laporan dari watchTowr, Cloudflare, dan peneliti keamanan independen:
-
Public PoC Exploits – Setidaknya dua kategori PoC telah dipublikasikan: (1) exploit yang mengekstrak password hash administrator via SQL injection, kemudian melakukan cracking untuk login dan upload malicious plugin; (2) exploit yang mengklaim mencapai pre-authentication RCE tanpa memerlukan kredensial administrator.
-
Web Shell Deployment – Eksploitasi aktif telah terdeteksi menginstal web shells pada website WordPress yang rentan, memberikan penyerang akses persisten ke server.
-
Mass Scanning – Scanner otomatis telah mulai mencari endpoint
/wp-json/batch/v1di seluruh internet untuk mengidentifikasi target rentan.
Benjamin Harris, CEO watchTowr, menyatakan: “WordPress gets a bad rap for security. But the reality is that a highly impactful, unauthenticated SQL injection or remote code execution vulnerability in WordPress core is actually fairly rare. That is exactly what makes this one different, and why everyone is scrambling to patch before widespread exploitation takes hold.”
Mengapa wp2shell Berbeda
Kerentanan kritis pada WordPress Core – bukan plugin atau tema – relatif jarang terjadi. Sebagian besar serangan terhadap WordPress menargetkan plugin, tema, atau konfigurasi yang lemah. wp2shell berbeda karena beberapa alasan:
-
Core Vulnerability – Kerentanan berada di WordPress Core, bukan di plugin atau tema pihak ketiga. Ini berarti setiap instalasi WordPress yang menjalankan versi terdampak rentan secara default.
-
Tanpa Prasyarat – Tidak memerlukan plugin tertentu, konfigurasi khusus, atau kredensial pengguna. Serangan bekerja pada instalasi WordPress standar yang baru diinstal (stock install).
-
Pre-Authentication – Tidak memerlukan akun atau login. Penyerang anonim dapat mengeksploitasi kerentanan ini.
-
Dampak Masif – Dengan lebih dari 500 juta website menggunakan WordPress, permukaan serangan sangat luas.
-
Eksploitasi Cepat – Transisi dari pengungkapan ke eksploitasi aktif terjadi dalam waktu kurang dari 24 jam, menekankan betapa berharganya kerentanan ini bagi threat actor.
CISA KEV: Konfirmasi Eksploitasi Aktif
Pada 21 Juli 2026, CISA menambahkan CVE-2026-63030 dan CVE-2026-60137 ke dalam Known Exploited Vulnerabilities (KEV) Catalog. Ini adalah konfirmasi resmi bahwa kedua kerentanan sedang dieksploitasi secara aktif di alam liar.
Implikasi Penambahan ke KEV
| Dampak | Detail |
|---|---|
| Instansi Federal AS | Wajib melakukan patching dalam tenggat waktu yang ditetapkan (24 Juli 2026) |
| Binding Operational Directive (BOD) 22-01 | Memberikan otoritas hukum untuk mandat patching |
| Prioritas Nasional | Kerentanan diklasifikasikan sebagai risiko signifikan terhadap keamanan federal |
| Sinyal ke Sektor Swasta | Meskipun BOD hanya mengikat instansi federal, ini adalah sinyal kuat bagi sektor swasta untuk segera bertindak |
Dampak bagi Pemilik Website WordPress
Data yang Berisiko
Jika website WordPress berhasil dieksploitasi melalui wp2shell, data berikut berisiko tinggi:
| Kategori Data | Risiko |
|---|---|
| Database WordPress | Seluruh konten website, data pengguna, password hash, dan konfigurasi |
| Kredensial Administrator | Akses penuh ke dashboard WordPress |
| File Server | Kemampuan membaca dan menulis file di server melalui web shell |
| Data Pengguna | Informasi pribadi pengguna yang terdaftar di website |
| Kunci API dan Secrets | Kredensial yang tersimpan di wp-config.php dan file konfigurasi |
Dampak Bisnis
| Dampak | Deskripsi |
|---|---|
| Website Takeover | Penyerang mengambil alih kendali penuh atas website |
| Defacement | Website dapat diubah atau dirusak |
| Data Breach | Data pengguna dan pelanggan dapat dieksfiltrasi |
| SEO Poisoning | Website dapat digunakan untuk hosting konten spam atau malicious |
| Malware Distribution | Website yang terkompromi dapat digunakan untuk menyebarkan malware ke pengunjung |
| Blacklisting | Website dapat di-blacklist oleh Google dan penyedia keamanan |
| Lateral Movement | Server web sebagai pivot point untuk menyerang infrastruktur internal |
Deteksi: Cara Mengetahui Apakah Website Anda Terdampak
Indikator Eksploitasi
| Indikator | Metode Deteksi |
|---|---|
Request mencurigakan ke /wp-json/batch/v1 |
Analisis access log server |
Request dengan payload SQL injection pada parameter author__not_in |
Analisis access log dan WAF log |
| Plugin tidak dikenal terinstal | Periksa daftar plugin di dashboard WordPress |
| File PHP tidak dikenal di direktori WordPress | File integrity monitoring |
| Akun administrator baru yang tidak dikenal | Periksa daftar pengguna di dashboard WordPress |
| Modifikasi pada file core WordPress | File integrity monitoring |
Panduan Investigasi
-
Periksa versi WordPress – jika menjalankan 6.9.0-6.9.4 atau 7.0.0-7.0.1, anggap website rentan.
-
Audit access log – cari pola request ke
/wp-json/batch/v1dengan method POST dan payload yang mencurigakan. -
Periksa pengguna WordPress – identifikasi akun administrator yang tidak dikenal.
-
Periksa plugin terinstal – cari plugin yang tidak dikenal atau mencurigakan.
-
Scan file integrity – bandingkan file WordPress dengan checksum resmi untuk mendeteksi modifikasi.
-
Gunakan wp2shell.com – website yang disediakan Searchlight Cyber untuk menguji apakah instalasi WordPress rentan terhadap wp2shell (untuk tujuan defensif).
Langkah Mitigasi dan Remediasi
Prioritas 1: Patch Segera
| Tindakan | Detail |
|---|---|
| Update ke versi terbaru | WordPress 6.9.5 atau 7.0.2 |
| Sumber patch | WordPress.org Security Release |
| Verifikasi | Pastikan versi WordPress telah berubah setelah update |
| Forced Update | WordPress telah mengaktifkan forced auto-update – verifikasi bahwa update telah diterapkan |
Prioritas 2: Mitigasi Sementara (Jika Patch Belum Memungkinkan)
| Tindakan | Implementasi |
|---|---|
| Blokir batch endpoint | Blokir /wp-json/batch/v1 dan ?rest_route=/batch/v1 di level WAF atau web server |
| Nonaktifkan REST API anonim | Gunakan plugin keamanan untuk menonaktifkan akses anonim ke REST API |
| Aktifkan persistent object cache | Cloudflare melaporkan bahwa jalur kode rentan memerlukan ketiadaan persistent object cache |
Peringatan: Mitigasi sementara hanya boleh digunakan sebagai tindakan jangka pendek sampai patch dapat diterapkan. Mitigasi ini bukan pengganti patching.
Prioritas 3: Perlindungan Berlapis
| Tindakan | Detail |
|---|---|
| Web Application Firewall (WAF) | Cloudflare telah menyediakan WAF rules gratis untuk kedua CVE di semua plan |
| File Integrity Monitoring | Monitor perubahan file di direktori WordPress |
| Access Log Monitoring | Pantau request ke batch endpoint secara real-time |
| Least Privilege | Pastikan file permissions WordPress dikonfigurasi dengan benar |
Jika Kompromi Terdeteksi
- Isolasi website – pertimbangkan untuk mengambil website offline sementara
- Ambil backup forensik – backup database dan file untuk investigasi
- Identifikasi tingkat kompromi – tentukan apa yang diakses, dimodifikasi, atau dicuri
- Hapus malicious content – hapus plugin tidak dikenal, file PHP mencurigakan, dan akun administrator tidak sah
- Reset semua kredensial – password administrator, database password, API keys, dan WordPress salts
- Patch website – update ke versi WordPress yang aman
- Monitor berkelanjutan – pantau website secara ketat setelah pemulihan
WordPress dan Keamanan Core: Sebuah Perspektif
Kerentanan kritis pada WordPress Core relatif jarang terjadi. WordPress memiliki tim keamanan dedicated dan program bug bounty yang aktif. Namun, wp2shell menunjukkan bahwa bahkan software yang paling banyak di-audit pun dapat memiliki kerentanan serius.
Beberapa kerentanan WordPress Core signifikan dalam sejarah:
| Tahun | CVE / Nama | Jenis | Dampak |
|---|---|---|---|
| 2017 | CVE-2017-8295 | Authentication Bypass | Password reset takeover |
| 2017 | CVE-2017-5487 | Information Disclosure | User enumeration via REST API |
| 2020 | CVE-2020-28032 | Deserialization RCE (Gadget Chain) | RCE dengan akses admin |
| 2026 | wp2shell (CVE-2026-63030 + CVE-2026-60137) | Batch-Route Confusion + SQL Injection | Unauthenticated RCE |
wp2shell menonjol karena: (1) merupakan rantai dua kerentanan yang saling melengkapi, (2) tidak memerlukan autentikasi, dan (3) berdampak pada instalasi WordPress default tanpa plugin.
Proyeksi: Apa yang Akan Terjadi Selanjutnya
Beberapa perkembangan yang perlu diantisipasi:
-
Lonjakan Eksploitasi Massal – Dengan PoC publik yang tersedia dan eksploitasi aktif yang sudah terdeteksi, jumlah website yang terkompromi diperkirakan akan meningkat signifikan dalam beberapa minggu ke depan.
-
Automasi Serangan – Scanner otomatis dan botnet kemungkinan akan mengadopsi exploit wp2shell untuk kompromi massal. Website yang belum di-patch akan menjadi target empuk.
-
Integrasi ke Ransomware Workflow – Initial Access Brokers (IAB) kemungkinan akan menggunakan wp2shell untuk mendapatkan akses awal ke server web dan menjualnya ke operator ransomware.
-
Web Shell sebagai Layanan – Website WordPress yang terkompromi dapat digunakan sebagai infrastruktur untuk berbagai aktivitas malicious: phishing hosting, malware distribution, DDoS command-and-control, dan SEO spam.
-
Peningkatan Patch Rate – Berkat forced auto-update dan liputan media yang luas, tingkat patching untuk kerentanan ini kemungkinan lebih tinggi dibandingkan kerentanan WordPress pada umumnya.
Kesimpulan
wp2shell adalah salah satu kerentanan WordPress Core paling serius dalam beberapa tahun terakhir. Kombinasi dua kelemahan – batch-route confusion dan SQL injection – menciptakan rantai eksploitasi yang memungkinkan penyerang yang tidak terautentikasi untuk mengambil alih website WordPress sepenuhnya.
Tiga faktor yang membuat kerentanan ini sangat mendesak: tidak ada prasyarat, dampak pada 500 juta website, dan eksploitasi aktif dalam waktu kurang dari 24 jam. WordPress telah merespons dengan forced auto-update, dan CISA telah mengonfirmasi eksploitasi aktif melalui KEV Catalog.
Bagi administrator website WordPress, prioritasnya jelas: verifikasi bahwa semua website telah diperbarui ke WordPress 6.9.5 atau 7.0.2. Jika forced auto-update telah berjalan, verifikasi manual tetap diperlukan. Jika patch belum diterapkan karena alasan apa pun, terapkan mitigasi sementara dan jadwalkan update sesegera mungkin.
wp2shell juga merupakan pengingat bahwa popularitas adalah pedang bermata dua. WordPress memberdayakan lebih dari 500 juta website – tetapi setiap kerentanan pada core-nya memiliki potensi dampak yang sangat besar. Keamanan WordPress bukan hanya tentang memilih plugin yang aman; ia dimulai dari memastikan bahwa core WordPress selalu diperbarui ke versi terbaru.
Artikel ini disusun berdasarkan GitHub Security Advisory untuk CVE-2026-63030 (17 Juli 2026), analisis teknis Searchlight Cyber (22 Juli 2026), laporan BleepingComputer, Rapid7 Emerging Threat Response, CISA Known Exploited Vulnerabilities Catalog (21 Juli 2026), pengumuman keamanan WordPress.org, serta pemantauan threat landscape oleh tim Threat Intelligence Seraphim News.