WordPress User Enumeration: Bahaya? Ini Cara Mengatasinya
WordPress User Enumeration adalah teknik untuk menemukan username atau identitas author yang valid tanpa login. Meski tidak langsung membobol website, celah ini bisa membantu penyerang menargetkan akun admin. Kabar baiknya, kamu bisa memeriksa dan mengurangi risikonya tanpa harus mematikan semua fitur WordPress.
Apa Itu WordPress User Enumeration?
Bayangkan website kamu sudah dilengkapi halaman login dan password. Namun, siapa pun masih bisa mencari tahu username yang digunakan untuk masuk ke dashboard. Penyerang memang belum berhasil masuk, tetapi mereka sudah tahu akun mana yang perlu ditargetkan.
Itulah gambaran sederhana WordPress User Enumeration.
Teknik ini memungkinkan seseorang menemukan identitas pengguna melalui halaman author, URL, WordPress REST API, atau pesan error login. Informasi yang muncul bisa berupa nama penulis, ID pengguna, hingga slug yang berkaitan dengan akun.
Lantas, apakah ini berarti website kamu sudah diretas? Belum tentu.
Baca Juga: Checklist API Security Wajib Kamu Kuasai, Ini Alasannya
User enumeration tidak membocorkan password secara langsung dan tidak otomatis menandakan akun sudah diambil alih. Namun, informasi username yang terbuka bisa mempermudah serangan berikutnya, terutama jika akun menggunakan password yang lemah atau dipakai berulang kali.
Perlu diketahui juga, display name yang terlihat oleh pengunjung tidak selalu sama dengan login name yang digunakan untuk masuk ke WordPress. Jadi, menemukan nama author belum tentu berarti penyerang sudah mengetahui username login yang sebenarnya.
Meski begitu, kamu tetap perlu memeriksa jalur informasi yang terbuka agar keamanan website tidak bergantung pada keberuntungan.
Baca Juga: Mengenal REST API WooCommerce dan Manfaat Nyatanya!
Dari Mana Username WordPress Bisa Bocor?

Ada beberapa jalur yang sering diperiksa ketika mengaudit keamanan WordPress. Hasilnya bergantung pada versi WordPress, pengaturan website, tema, plugin, dan perlindungan keamanan yang digunakan.
| Jalur | Contoh | Risiko |
| Author archive WordPress | /?author=1 | Mengungkap halaman author atau slug pengguna |
| WordPress REST API | /wp-json/wp/v2/users | Menampilkan informasi pengguna yang tersedia untuk publik |
| Pesan error login | Username tidak terdaftar atau password salah | Memberi petunjuk tentang username yang valid |
| Sitemap dan metadata | Informasi penulis dalam konten publik | Membantu mengidentifikasi pengguna website |
Author archive WordPress
WordPress dapat menyediakan halaman arsip untuk mengelompokkan artikel berdasarkan penulis. Dalam konfigurasi tertentu, URL seperti https://domainkamu.com/?author=1 bisa mengarahkan pengunjung ke halaman author.
Jika URL akhirnya menampilkan slug yang berkaitan dengan akun, informasi tersebut dapat digunakan sebagai petunjuk untuk menebak username.
WordPress REST API
WordPress REST API memungkinkan website bertukar data dengan editor, plugin, aplikasi, dan layanan lain.
Salah satu endpoint yang perlu diperiksa adalah /wp-json/wp/v2/users. Bergantung pada konfigurasi akses dan data yang tersedia, endpoint ini dapat menampilkan informasi pengguna dalam format JSON.
Pesan error login
Misalnya, WordPress menampilkan pesan berbeda ketika seseorang memasukkan username yang tidak terdaftar dan ketika password salah.
Perbedaan ini bisa menjadi petunjuk bagi penyerang untuk mengetahui akun yang valid. Informasi serupa juga mungkin ditemukan melalui sitemap, feed, metadata komentar, atau keluaran plugin.
Karena itu, menutup satu jalur saja belum tentu menyelesaikan seluruh masalah.
Apakah WordPress User Enumeration Berbahaya?
Ya, bahaya user enumeration terletak pada kemampuannya mempermudah serangan lanjutan. Celah ini bukan peretasan itu sendiri, tetapi dapat menjadi langkah awal untuk menargetkan akun WordPress.
Berikut risiko yang perlu kamu waspadai.
- Brute force: penyerang mencoba berbagai kombinasi password pada username yang sudah diketahui.
- Credential stuffing: penyerang menggunakan pasangan username dan password yang bocor dari layanan lain. Risiko meningkat jika kamu memakai password yang sama di beberapa platform.
- Phishing tertarget: informasi nama dan identitas pengguna digunakan untuk membuat pesan palsu yang terlihat lebih meyakinkan.
- Pengambilalihan akun: jika serangan berhasil, penyerang bisa mengubah konten, memasang malware, atau menyalahgunakan website.
Dampaknya bisa terasa langsung pada bisnis. Website toko online yang bermasalah dapat kehilangan transaksi, sedangkan website perusahaan yang disusupi bisa menurunkan kepercayaan pelanggan.
Website kecil juga tidak otomatis aman dari ancaman ini. Bot dapat memindai banyak website secara otomatis tanpa memilih berdasarkan ukuran bisnis.
Jadi, kamu tidak perlu panik ketika menemukan informasi author yang terbuka. Namun, jangan mengabaikannya, terutama jika akun administrator belum menggunakan autentikasi dua faktor (Two-Factor Authentication/2FA).
Cara Cek User Enumeration di WordPress
Kamu tidak harus menjadi developer untuk melakukan pemeriksaan dasar. Siapkan browser dan lakukan pengujian hanya pada website milik sendiri atau website yang sudah memberikan izin. Jika memungkinkan, gunakan lingkungan staging terlebih dahulu.
Buka jendela privat browser, lalu akses:
https://domainkamu.com/?author=1
Kamu juga bisa mencoba /?author=2 untuk melihat apakah perilakunya berbeda.
Perhatikan URL akhir setelah halaman dimuat. Apakah browser mengarah ke halaman author dengan slug tertentu? Catat hasilnya untuk evaluasi.
Cek endpoint REST API
Buka URL berikut dengan mengganti domain contoh menggunakan domain website kamu:
https://domainkamu.com/wp-json/wp/v2/users
Periksa isi responsnya, bukan hanya apakah halaman berhasil dibuka. Apakah terdapat nama, slug, ID, atau informasi pengguna lain?
Kamu juga bisa memeriksa variasi endpoint melalui parameter ?rest_route=/wp/v2/users. Satu URL yang diblokir belum tentu berarti semua jalur akses sudah tertutup.
Periksa pesan error login
Bandingkan respons ketika login menggunakan username fiktif dan ketika login menggunakan akun milikmu dengan password yang salah. Lakukan seperlunya, tanpa percobaan berulang.
Jika kedua respons memberikan petunjuk berbeda tentang keberadaan username, pertimbangkan untuk menyamakan pesan error.
Untuk pengujian lebih teknis, WPScan menyediakan opsi --enumerate u. Gunakan hanya pada website yang kamu miliki atau sudah mendapat izin untuk diuji.
Cara Mengatasi WordPress User Enumeration
Setelah mengetahui jalur yang terbuka, pilih perbaikan sesuai kebutuhan website. Tidak semua website membutuhkan pengaturan yang sama.
Jika website tidak membutuhkan halaman author publik, kamu bisa menonaktifkan atau mengalihkannya menggunakan plugin yang sesuai.
Namun, untuk website dengan banyak penulis, halaman author mungkin penting bagi pembaca dan SEO. Jika fitur tersebut dibutuhkan, pertahankan halaman publiknya sambil mengurangi informasi profil yang tidak diperlukan.
Batasi endpoint WordPress REST API
Jika /wp-json/wp/v2/users mengekspos informasi yang tidak dibutuhkan, pertimbangkan pembatasan akses menggunakan plugin keamanan atau konfigurasi yang sesuai.
Hindari langsung mematikan seluruh REST API. Tindakan ini berpotensi mengganggu editor blok, WooCommerce, plugin, aplikasi, dan layanan yang terhubung. Batasi endpoint yang bermasalah terlebih dahulu, lalu uji kembali fungsi website.
Samakan pesan error login
Gunakan plugin keamanan yang mendukung pesan login generik agar respons tidak mengungkap apakah username terdaftar.
Jika membutuhkan kode khusus, implementasikan melalui plugin kecil yang terkelola dengan baik. Hindari mengedit file tema secara langsung tanpa pengujian karena perubahan tema bisa menghilangkan kode tersebut.
Gunakan firewall dan evaluasi XML-RPC
Web Application Firewall (WAF) dapat membantu menyaring permintaan mencurigakan, sedangkan perlindungan bot dapat mengurangi pemindaian otomatis.
Untuk XML-RPC, nonaktifkan hanya jika website tidak membutuhkannya. Sebelum menerapkan perubahan, buat backup dan uji di staging agar fitur penting tidak terganggu.
Cara Mencegah User Enumeration Kembali Menjadi Risiko

Menutup jalur informasi saja tidak cukup. Kamu juga perlu memastikan akun dan sistem WordPress tetap terlindungi.
Gunakan checklist berikut sebagai langkah awal:
- Aktifkan 2FA untuk administrator dan pengguna dengan akses tinggi.
- Gunakan password kuat dan unik, idealnya minimal 12 karakter.
- Batasi percobaan login untuk mengurangi serangan otomatis.
- Pasang WAF dan perlindungan bot sesuai kebutuhan website.
- Berikan hak akses sesuai tugas setiap pengguna.
- Hapus akun staf atau freelancer yang sudah tidak digunakan.
- Perbarui WordPress, tema, dan plugin secara berkala.
- Pantau login gagal, akun administrator baru, dan perubahan file yang tidak dikenal.
- Ulangi pemeriksaan author archive, REST API, dan pesan error setelah melakukan perubahan.
Bagaimana dengan mengganti URL login atau display name? Langkah tersebut bisa membantu mengurangi gangguan tertentu, tetapi bukan solusi utama. Jalur informasi lain mungkin tetap terbuka, sehingga pemeriksaan menyeluruh tetap diperlukan.
Kesimpulan
WordPress User Enumeration bukan berarti website kamu pasti sudah diretas. Namun, informasi username yang terbuka dapat membantu penyerang melancarkan brute force, credential stuffing, atau phishing.
Karena itu, periksa jalur yang berpotensi membocorkan identitas pengguna, batasi akses yang tidak diperlukan, dan perkuat keamanan akun.
Selain konfigurasi WordPress, fondasi hosting juga penting untuk menjaga performa dan keamanan website. Jika kamu mencari hosting untuk WordPress yang aman, pertimbangkan layanan dari IDwebhost sesuai kebutuhan website kamu. Perhatikan fitur keamanan, dukungan teknis, dan kebutuhan performa sebelum memilih paket.
Dengan konfigurasi yang tepat, perlindungan akun berlapis, dan layanan hosting yang sesuai, kamu bisa mengelola website WordPress dengan lebih tenang tanpa mengorbankan fitur yang dibutuhkan pengunjung.