
Disclaimer : beberapa cara mengetahui IP address website wordpress dibalik Cloudflare DNS ini mungkin tidak selalu berhasil. Mengingati Cloudflare terus meningkatkan sisi keamanan mereka, dan tidak semua website yang menggunakan WordPress belum ditutup celah keamanannya. Selain itu, saya menulis ini untuk tujuan edukasi, dan informasi bagaimana mengamankan website wordpress kamu.
Beberapa waktu lalu, salah satu blog saya, diserang oleh website AGC pencuri konten, yang cara mencegahnya saya tulis disini. Blokir IP address atau AS Number adalah salah satu cara paling efisien untuk menghentikan website AGC tersebut melakukan duplikasi konten blog wisata catperku.com. Yang jadi masalah adalah, salah satu website AGC tadi menggunakan CloudFlare untuk menyembunyikan IP address yang asli.
Sebenarnya saya bisa menemukan dengan mudah IP address dibalik CloudFlare DNS. Cara yang biasa saya lakukan adalah dengan melakukan analisa log file firewall website saya. Dengan sedikit profiling, saya pasti bisa menemukan IP address si website AGC tadi. Kelemahan cara ini adalah, saya perlu waktu beberapa hari untuk menemukan IP address dibalik CloudFlare DNS tadi.
Karena memang saya harus menunggu log file firewall terkumpul, sebelum saya bisa melakukan analisa. Karena itu saya mencoba riset di Internet, mencari cara paling cepat dan efisien untuk melihat IP address dibalik CloudFlare DNS. Dari hasil riset, saya menemukan beberapa cara yang akhirnya saya coba. Meski tidak semuanya berhasil, namun saya akan membagikan pengalaman saya di tulisan ini.
Apa Itu CloudFlare?
CloudFlare adalah salah satu web application firewalls (WAF) yang populer dan banyak digunakan orang. Salah satu fungsinya adalah untuk menyembunyikan alamat IP atau IP address asli server. CloudFlare juga bisa memberikan perlindungan terhadap DDOS Attack seperti yang pernah bloggerpi.com alami ini.
Tersedia versi gratis dan berbayar untuk menggunakan CloudFlare. Saya sendiri selama ini menggunakan CloudFlare versi gratis untuk perlindungan pertama terhadap DDOS, meningkatkan keamanan server dan untuk keperluan CDN demi mempercepat loading website saya. Sayangnya, salah satu fungsi ColudFlare ini juga digunakan untuk menyembunyikan IP address para pengguna website AGC juga.
Tools Yang Digunakan Pada Tulisan Cara Untuk Melihat IP Address Dibalik CloudFlare DNS Ini
Ada beberapa tools yang saya gunakan di tulisan ini seperti :
- Linux yang berada di server. Disini saya menggunakan Linux Centos 7 yang saya host di Amazon AWS Free Tier.
- webhook.site. Webhook.site allows you to easily test, inspect, forward and create Custom Actions for any incoming HTTP request or e-mail. Any request or email sent to these addresses are logged here instantly — you don’t even have to refresh! Untuk menerima HTTP request dalam rangka mencoba mencari tahu IP address dibalik CloudFlare DNS.
- reqbin.com. ReqBin is an online API testing and prototyping tool. Test your API by sending REST, SOAP, and HTTP API requests to the server right from your browser, and check the server responses. Post requests directly from your browser. Intinya sih ntuk membuat HTTP request gitu. Dikombinasikan dengan webhook.site, bisa digunakan untuk mengetahui IP Address dibalik Cloudflare DNS.
Nah, Ini Dia Beberapa Cara Untuk Melihat IP Address Dibalik CloudFlare DNS
Untuk studi kasus, saya menggunakan website AGC yang telah melakukan duplikasi konten blog saya dalam jumlah banyak. Sudah ada 6 bulan lebih saya selalu rutin melakukan pelaporan DMCA agar tulisan saya yang dicopy website dibawah ini dihapus dari hasil pencarian Google Search Indonesia.

Sampai akhirnya, demi bisa belajar blokir permanen, saya sekalian memanfaatkan website ini untuk studi kasus. Karena setelah saya analisa, ada beberapa kelemahan website yang bisa saya manfaatkan.
1. Dengan Mengirim Email
Cara pertama yang terpikirkan adalah dengan mengirimkan email ke alamat email yang tidak ada ke domain website AGC tersebut. Sudah pasti email tersebut akan gagal dikirimkan.
Dan, karena saya mengirimkan email ke alamat yang tidak ada, email server akan memberi tahukan kalau email yang dikirim gagal. Biasanya pemberitahuan kegagalan pengiriman email tersebut beserta alamat IP Address mail server tujuan.
Pada studi kasus ini, saya menggunakan Gmail untuk mencoba mengirimkan email ke target. Hingga kemudian saya mendapatkan email balasan seperti diatas.
The response was: The recipient server did not accept our requests to connect. Learn more at https://support.google.com/mail/answer/7720 [*******bs.com 2606:4700:3033::ac43:da80: timed out] [*******bs.com 2606:4700:3037::6812:361c: timed out] [*******bs.com 2606:4700:3033::6812:371c: timed out] [*******bs.com 104.18.54.28: timed out] [*******bs.com 172.67.218.128: timed out] [*******bs.com 104.18.55.28: timed out]
Pada cara ini saya mendapatkan 6 IP address, dimana 3 buah adalah IPv4 dan 3 buah IPv6 sebagai berikut :
- 104.18.54.28
- 104.18.55.28
- 172.67.218.128
- 2606:4700:3033::ac43:da80
- 2606:4700:3037::6812:361c
- 2606:4700:3033::6812:371c
Sayangnya, setelah saya lakukan pengecekan lewat who.is (misal IP 172.67.218.128 ini ), ternyata semua IP address diatas adalah punya CloudFlare. Itu artinya teknik mengirimkan email ke alamat yang tidak ada ini gagal untuk mendapatkan IP address website wordpress dibalik Cloudflare DNS.
Yah, saya bukan orang yang gampang menyerah. Jadi saya terus mencoba cara lainnya, sampai berhasil mendapatkan hasil sesuai target saya. Meski mungkin banyak memerlukan waktu yang lama
2. Menggunakan CloudFail
Di Internet, ada banyak software dan script yang mengklaim bisa mendapatkan IP address website dibalik CloudFlare DNS. Salah satunya adalah CloudFail ini. Untuk dapat menggunakan Cloudfail, kamu harus install dulu CloudFail di Linux ya.
Untuk studi kasus kali ini, saya menggunakan linux Centos 7 yang saya install di Amazon AWS Free Tier. Langkah menggunakan CloudFail di Centos 7 adalah sebagai berikut :
1. Install CloudFail di Linux. Pada studi kasus kali ini saya menggunakan Centos 7, Jadi cara installnya adalah sebagai berikut.
Kamu juga perlu install Git terlebih dahulu, untuk keperluan clone repository dengan git.
git clone https://github.com/m0rtem/CloudFail
Masuk ke folder CloudFail yang sudah di-clone dari Github.
cd CloudFail/
Install dulu requirementnya.
sudo pip3 install -r requirements.txt
Untuk cara menggunakan CloudFail adalah sebagai berikut. Ganti websitetarget.com dengan target kamu.
sudo python3 cloudfail.py -t websitetarget.com
Untuk target website AGC yang saya gunakan, hasilnya kira-kira seperti ini.
CloudFail ternyata tidak berhasil juga untuk melihat IP address dibalik CloudFlare DNS. Jadi, waktunya coba cara lain.
Kamu juga bisa menggunakan koneksi anonim, kalau instal tor (anonymity network). Dengan menggunakan tor network, koneksi yang kamu gunakan bersifat anonim. Caranya adalah sebagai berikut. Untuk langkah ini, saya anggap kamu sudah install tor ya.
service tor start
sudo python3 cloudfail.py --target websitetarget.com --tor
Hasilnya akan sama, kalau berhasil bakalan memperlihatkan IP address dibelakang CloudFlare DNS.
3. Menggunakan CloudIP
Fungsi dari Cloud ip ini kurang lebih sama, untuk melihat IP address dibalik Cloudflare DNS. Ini adalah sebuah shell script yang bisa digunakan dan dijalankan di linux. Sebagian besar linux dengan bash shell harusnya bisa menjalankan ini.
Sementara itu pada studi kasus kali ini, saya menggunakan Linux Centos 7. Langkah atau cara menggunakan CloudIP di Centos 7 adalah sebagai berikut dibawah.
1. Clone repository CloudIP dari Github
git clone https://github.com/Top-Hat-Sec/thsosrtl/
2. Masuk ke directory CloudIP
cd thsosrtl/CloudIP
3. Jalankan script cloudip.sh
./cloudip.sh
4. Masukkan target website
Hasilnya kurang lebih seperti ini :
Ternyata CloudID juga gagal untuk memperlihatkan IP address dibalik CloudFlare DNS. CloudFlare ini memang canggih ya :))
4. Memanfaatkan XML-RPC Pingback WordPress Untuk Mengetahui IP Address Dibalik CloudFlare DNS
Tingkat keberhasilan 3 cara diatas memang kurang tinggi. Namun saya menemukan satu cara, untuk website yang menggunakan CMS WordPress. Dengan memanfaatkan XML-RPC Pingback wordpress, saya bisa mendapatkan tingkat keberhasilan yang tinggi untuk melihat IP address dibalik CloudFlare DNS.
Langkah-langkahnya kurang lebih adalah sebagai berikut :
1. Pastikan ada pingback url dulu ya.
Karena kalau ada pingback url seperti https://wordpresswebsite.com/xmlrpc.php, itu artinya website tersebut menggunakan CMS WordPress. Cara lihatnya bisa dengan CTRL+U (view source) lalu cari kata pingback dengan CTRLF+F. Hasilnya kira-kira seperti di bawah ini.
Catat pingback url tadi (pada contoh dibawah, target saya adalah si website AGC).
http://markicabs.com/xmlrpc.php
Juga link blogpostnya. Pada contoh ini adalah artikel saya yang dicopas sama website AGC.
http://markicabs.com/jatuh-cinta-pandangan-pertama-pada-kota-toyama/
2. Langkah selanjutnya adalah buka website berikut
https://webhook.site/
Ketika kamu membuka website diatas untuk pertama kali, kamu akan dialihkan ke link unik seperti contoh dibawah ini:
https://webhook.site/#!/4b7f5cd5-048e-4d73-a643-945011e0b9a9/cf9f30e7-67c3-4a34-ba04-41a829b66156/
Link kamu tentu akan berbeda dengan diatas ya.
Kalau kamu sudah pernah membuka atau menggunakan website ini, kamu akan menemukan beberapa request seperti contoh dibawah ini :

3. Buat XML Script Untuk Melakukan Pingback
Buat XML Script seperti dibawah ini, untuk melakukan pingback ke website target. Pada contoh ini saya menggunakan webhook url dan link blogpost yang sudah saya siapkan pada point pertama. Untuk kamu, tentu bakal berbeda ya.
<?xml version="1.0" encoding="iso-8859-1"?> <methodCall> <methodName>pingback.ping</methodName> <params> <param> <value> <string>https://webhook.site/4b7f5cd5-048e-4d73-a643-945011e0b9a9</string> </value> </param> <param> <value> <string>http://markicabs.com/jatuh-cinta-pandangan-pertama-pada-kota-toyama/</string> </value> </param> </params> </methodCall>
4. Buka reqbin.com Untuk Membuat HTTP Request
Selanjutnya buka reqbin.com, lalu masukkan script XML diatas hingga seperti dibawah ini. Baca keterangannya ya untuk penjelasan lebih detail :

- Masukkan XML-RPC url disini : contoh http://targetwebsite.com/xmlrpc.php
- Ganti ke POST
- Ganti ke XML (aplication/xml)
- Paste script XML diatas kesini
- Klik “Send”
- Kalau proses pengiriman request berhasil, statusnya akan 200 (OK)
- Responnya kurang lebih seperti di nomor 7 ini.
5. Cek Log Di Webhook.site setelah mengirimkan HTTP Request
Setelah Klik Send, dan mendapatkan respon, kembali ke website webhook.site dan cek lognya disitu. Kalau berhasil, kamu akan bisa mendapatkan IP address dibalik Cloudflare DNS seperti dibawah ini:
Setelah saya verifikasi dengan beberapa tools, ternyata benar kalau itu adalah website AGC pencuri konten yang selama ini menyambangi website saya. Sesuai dengan log file di firewall wordpress. Karena Ip address ini secara rutin mampir, membuka halaman feed dan postingan terbaru. Akhirnya masuk lah IP address diatas ke block list firewall saya selamanya.