XML-RPC Aktif di Website Kamu? Ini Manfaat & Risikonya!
Kalau kamu pernah menemukan file xmlrpc.php di WordPress, mungkin muncul pertanyaan: apa itu XML-RPC dan apakah fitur ini masih perlu diaktifkan? Di artikel ini, kamu akan memahami fungsi XML-RPC, manfaatnya, risiko terhadap keamanan website, hingga cara menonaktifkannya jika memang sudah tidak dibutuhkan.
Apa Itu XML-RPC, Gunanya untuk Apa?
Sebelum REST API menjadi standar komunikasi aplikasi modern, ada satu teknologi yang lebih dulu populer, yaitu XML-RPC. Jadi, apa itu XML-RPC?
XML-RPC (Extensible Markup Language – Remote Procedure Call) adalah sebuah RPC API yang memungkinkan dua aplikasi saling berkomunikasi melalui internet menggunakan format XML sebagai pembawa data dan HTTP Request sebagai media pengirimannya.
Sederhananya, XML-RPC bertindak seperti “kurir” yang mengirim perintah dari satu aplikasi ke aplikasi lain. Misalnya, sebuah aplikasi mengirim permintaan untuk membuat postingan baru di WordPress, lalu server WordPress memproses permintaan tersebut dan mengirimkan respons kembali.
Baca Juga: 4 Cara Mudah Menonaktifkan Hotlink di WordPress: Lindungi Gambar kamu Sekarang!
Yang menarik, XML-RPC tidak peduli aplikasi dibuat dengan bahasa pemrograman apa atau berjalan di sistem operasi mana. Selama keduanya memahami XML dan HTTP, komunikasi tetap bisa berlangsung.
Kalau kamu bertanya, XML-RPC gunanya untuk apa? Jawabannya cukup banyak, terutama pada era sebelum REST API berkembang pesat. XML-RPC digunakan untuk:
- Menghubungkan aplikasi desktop dengan WordPress.
- Mengelola website dari aplikasi mobile WordPress.
- Sinkronisasi data antar aplikasi.
- Mengintegrasikan layanan pihak ketiga, termasuk beberapa website SaaS.
- Menjalankan fungsi tertentu di server dari lokasi yang berbeda.
Teknologi ini sendiri sudah ada sejak akhir 1990-an. Setelah itu lahirlah SOAP, JSON-RPC, hingga gRPC yang kini banyak digunakan untuk kebutuhan microservices dan komunikasi antarsistem modern.
Meski begitu, XML-RPC belum benar-benar ditinggalkan. Masih ada sejumlah layanan dan plugin WordPress yang mengandalkannya, terutama untuk koneksi jarak jauh dan integrasi sistem lama (legacy system).
Baca Juga: Sitemap Generator Gratis: Solusi Cepat Bikin XML Sitemap
Komponen Utama XML-RPC dan Cara Kerjanya

Kalau REST API memiliki banyak endpoint, XML-RPC justru jauh lebih sederhana.
Semua komunikasi dilakukan melalui satu endpoint, yaitu xmlrpc.php, menggunakan metode POST pada HTTP Request.
Alur kerjanya kurang lebih seperti ini:
- Client mengirim request ke file xmlrpc.php.
- Request dikemas dalam format XML.
- Server menjalankan method yang diminta.
- Server mengirimkan response dalam format XML.
Di dalam request XML-RPC terdapat beberapa elemen penting, antara lain:
- XML Version → Menentukan versi XML yang digunakan.
- methodCall → Menandai bahwa request berisi pemanggilan fungsi.
- methodName → Nama fungsi yang ingin dijalankan.
- params → Daftar parameter.
- param → Nilai parameter.
- value → Isi data yang dikirim.
Misalnya, sebuah aplikasi CRM ingin mengambil nama akun pelanggan. Aplikasi tersebut cukup mengirimkan method bernama listAccounts beserta ID pelanggan sebagai parameter.
Jika berhasil, server akan membalas menggunakan elemen:
methodResponseparamsparamvalue
Namun jika terjadi kesalahan, server mengirimkan fault response yang biasanya berisi:
- faultCode
- faultString
Contohnya ketika method yang diminta tidak tersedia, server akan mengembalikan pesan seperti Method does not exist.
Karena formatnya sederhana, XML-RPC cukup mudah dipahami dan diimplementasikan. Itulah alasan teknologi ini sempat menjadi standar komunikasi aplikasi web selama bertahun-tahun.
Apakah Kamu Harus Mengaktifkan XML-RPC?
Jawabannya tergantung kebutuhan website kamu. Kalau website hanya digunakan sebagai blog atau company profile biasa, kemungkinan besar XML-RPC sudah tidak diperlukan.
Namun, pada kondisi tertentu, XML-RPC masih cukup berguna.
Mempermudah Integrasi Antar Sistem
XML-RPC memungkinkan aplikasi dengan bahasa pemrograman berbeda saling bertukar data tanpa harus membuat protokol komunikasi sendiri.
Hal ini masih sering ditemui pada sistem lama maupun beberapa website SaaS yang belum sepenuhnya bermigrasi ke REST API.
Implementasinya Relatif Sederhana
Dibanding beberapa protokol lain, struktur XML-RPC jauh lebih ringan.
Developer cukup membuat request XML, mengirimkannya melalui HTTP, lalu menerima response XML dari server.
Mudah Melewati Firewall
Karena menggunakan HTTP sebagai transport utama, XML-RPC dapat berjalan melalui firewall maupun proxy tanpa konfigurasi yang terlalu rumit.
Hal ini memudahkan aplikasi yang harus saling berkomunikasi melalui internet.
Masih Dibutuhkan Beberapa Layanan WordPress
Beberapa layanan seperti Jetpack atau aplikasi WordPress Mobile masih memanfaatkan XML-RPC agar dapat terhubung dengan website.
Kalau kamu menggunakan layanan tersebut, menonaktifkan XML-RPC secara sembarangan justru bisa menyebabkan fitur tertentu berhenti bekerja.
Jadi sebelum memutuskan mematikannya, pastikan dulu apakah website benar-benar masih memerlukan XML-RPC.

Kenapa XML-RPC Sebaiknya Dinonaktifkan?
Di sisi lain, XML-RPC juga dikenal sebagai salah satu celah yang sering dimanfaatkan penyerang.
Bukan berarti XML-RPC selalu berbahaya. Namun jika sudah tidak digunakan, membiarkannya tetap aktif hanya akan memperbesar permukaan serangan (attack surface) pada website.
Berikut beberapa risikonya.
Rentan Brute Force Attack
File xmlrpc.php memungkinkan proses login dilakukan melalui request XML.
Masalahnya, penyerang dapat mengirim ribuan kombinasi username dan password secara otomatis tanpa harus membuka halaman login WordPress.
Serangan ini sering kali lebih sulit dideteksi dibanding login biasa.
Dapat Dimanfaatkan untuk DDoS
WordPress memiliki fitur pingback yang memanfaatkan XML-RPC.
Fitur ini bisa disalahgunakan untuk mengirim ribuan request ke website target sehingga server kewalahan menangani trafik.
Akibatnya, website menjadi lambat bahkan tidak bisa diakses.
Risiko Kebocoran Data
Secara bawaan, XML-RPC mengirimkan data dalam format teks XML.
Kalau komunikasi tidak menggunakan HTTPS, informasi sensitif berpotensi disadap oleh pihak yang tidak bertanggung jawab.
Karena itu, penggunaan HTTPS menjadi syarat utama jika XML-RPC tetap diaktifkan.
Injection Attack
Request XML yang tidak divalidasi dengan baik bisa dimanfaatkan untuk menyisipkan payload berbahaya.
Jika server memiliki celah keamanan, serangan seperti SQL Injection maupun XML Injection dapat terjadi.
Lemah pada Autentikasi
Beberapa implementasi XML-RPC lama masih menggunakan autentikasi dasar (Basic Authentication). Padahal saat ini metode seperti OAuth 2.0 atau API Key jauh lebih aman.
Rentan terhadap XXE (XML External Entity)
XML-RPC juga berpotensi terkena serangan XXE apabila parser XML dikonfigurasi secara tidak aman.
Serangan ini dapat digunakan untuk membaca file sensitif di server hingga menyebabkan gangguan layanan.
Melihat berbagai risiko tersebut, banyak praktisi keamanan website menyarankan untuk menonaktifkan XML-RPC apabila memang sudah tidak digunakan lagi.
Cara Menonaktifkan XML-RPC di Website

Kalau kamu sudah memastikan XML-RPC tidak lagi dibutuhkan, berikut dua cara yang paling umum digunakan.
Metode 1. Menggunakan Plugin
Cara paling praktis adalah memasang plugin seperti Disable XML-RPC-API.
Setelah plugin aktif, akses XML-RPC langsung dinonaktifkan tanpa perlu mengubah konfigurasi server.
Beberapa plugin bahkan memungkinkan kamu membuat whitelist IP tertentu jika masih ada layanan yang membutuhkan XML-RPC.
Metode ini cocok untuk pengguna yang tidak ingin mengedit file konfigurasi secara manual.
Metode 2. Melalui File .htaccess
Kalau ingin solusi yang lebih ringan tanpa tambahan plugin, kamu bisa memblokir akses ke xmlrpc.php melalui file .htaccess.
Sebelum mengubah konfigurasi, pastikan kamu sudah membuat backup file .htaccess agar mudah dikembalikan jika terjadi kesalahan.
Tambahkan aturan berikut:
<Files xmlrpc.php>
order deny,allow
deny from all
allow from xxx.xxx.xxx.xxx
</Files>
Ganti xxx.xxx.xxx.xxx dengan IP yang memang diizinkan mengakses XML-RPC.
Kalau ada lebih dari satu IP, cukup tambahkan beberapa baris allow from.
Pendekatan ini memiliki kelebihan karena request akan diblokir sebelum diproses oleh WordPress, sehingga tidak membebani server.
Cara Mengecek Apakah XML-RPC Sudah Nonaktif
Setelah melakukan konfigurasi, lakukan pengecekan sederhana.
Buka alamat berikut di browser:
https://domainkamu.com/xmlrpc.php
Kalau XML-RPC berhasil dinonaktifkan, biasanya server akan menampilkan pesan seperti Forbidden atau 403 Access Denied.
Kamu juga bisa mencoba login menggunakan aplikasi WordPress Mobile. Jika muncul pesan “XML-RPC services are disabled on this site”, berarti konfigurasi sudah berjalan dengan benar.
Kesimpulan
XML-RPC pernah menjadi teknologi penting dalam komunikasi antar aplikasi, terutama sebelum REST API menjadi standar. Hingga sekarang pun masih ada plugin, aplikasi mobile, maupun website SaaS yang memanfaatkannya untuk integrasi tertentu.
Namun, jika website WordPress kamu tidak lagi bergantung pada fitur tersebut, menonaktifkannya merupakan langkah yang bijak untuk mengurangi potensi celah keamanan.
Mulai dari brute force, DDoS, hingga risiko kebocoran data, XML-RPC memang bisa menjadi pintu masuk bagi serangan jika tidak dikelola dengan benar. Karena itu, penting untuk memahami kebutuhan website terlebih dahulu sebelum memutuskan tetap mengaktifkan atau menonaktifkan fitur ini. Dengan begitu, performa dan keamanan website bisa tetap terjaga tanpa mengorbankan fungsionalitas yang benar-benar dibutuhkan.
Kalau kamu ingin menjalankan WordPress dengan performa optimal sekaligus didukung fitur keamanan yang lebih baik, Hosting untuk WordPress dari IDwebhost bisa menjadi pilihan tepat.
Infrastruktur yang dioptimalkan khusus untuk WordPress, dukungan SSL, backup, dan resource yang stabil membantu website tetap cepat, aman, dan siap berkembang seiring kebutuhan bisnismu.