01 - Conduct Search Engine Discovery Reconnaissance for Information Leakage
Description
Agar mesin pencari dapat berfungsi dengan baik, program otomatis (sering disebut sebagai robot atau crawler) secara berkala mengakses dan mengindeks data dari miliaran halaman web di internet. Program ini menemukan konten dan fungsionalitas web dengan mengikuti tautan dari halaman lain atau melalui file sitemap.
Sebuah situs dapat mengatur halaman mana yang tidak boleh diakses oleh crawler dengan menggunakan file konfigurasi khusus bernama robots.txt. Jika file ini digunakan dengan benar, maka mesin pencari akan mengabaikan halaman-halaman yang terdaftar di dalamnya. Ini adalah penjelasan dasar — Google menyediakan dokumentasi yang lebih mendalam mengenai cara kerja mesin pencari.
Dalam konteks pengujian keamanan, mesin pencari dapat dimanfaatkan untuk melakukan proses pengumpulan informasi (reconnaissance). Terdapat dua pendekatan utama dalam teknik ini:
Langsung: Mengakses indeks dan konten yang tersimpan dalam cache mesin pencari.
Tidak langsung: Mencari informasi sensitif melalui sumber pihak ketiga seperti forum, newsgroup, atau situs pengadaan.
Setelah proses crawling selesai, mesin pencari akan mulai melakukan indexing terhadap konten berdasarkan tag HTML dan atribut terkait seperti <TITLE> untuk menyajikan hasil pencarian yang relevan. Jika robots.txt tidak diperbarui secara berkala atau tidak digunakan bersamaan dengan meta tag HTML yang membatasi pengindeksan, maka besar kemungkinan konten yang bersifat sensitif dapat ikut terindeks.
Pemilik situs dapat mengurangi risiko ini dengan menggunakan robots.txt, meta tag HTML, mekanisme autentikasi, serta tools yang disediakan oleh masing-masing mesin pencari untuk menghapus konten yang tidak diinginkan.
Test Objective
Mengidentifikasi informasi desain dan konfigurasi sistem/aplikasi yang bersifat sensitif, baik yang terpublikasi secara langsung di situs organisasi, maupun secara tidak langsung melalui layanan pihak ketiga.
How to Test
Gunakan mesin pencari untuk melakukan pencarian informasi yang berpotensi sensitif, termasuk namun tidak terbatas pada:
Diagram dan konfigurasi jaringan internal;
Arsip email atau posting oleh admin atau staf penting;
Prosedur login dan pola format username;
Username, password, dan private key;
File konfigurasi dari layanan pihak ketiga atau cloud;
Pesan kesalahan (error messages) yang terbuka kepada publik;
Versi situs untuk pengembangan (development), pengujian (test), User Acceptance Testing (UAT), maupun staging.
Search Operators
Search operator adalah sintaks khusus yang memperluas fungsi pencarian standar. Biasanya ditulis dalam format operator:query. Contoh operator yang sering digunakan:
site:membatasi pencarian ke domain tertentu;inurl:mencari kata kunci di dalam URL;intitle:mencari kata kunci di judul halaman;intext:atauinbody:mencari kata di isi halaman;filetype:mencari jenis file tertentu, misal:pdf,doc,php.
Contoh: Mencari seluruh konten dari situs OWASP:

Viewing Cached Content
Untuk melihat versi terdahulu dari halaman web yang sudah diindeks, gunakan operator cache:. Ini berguna jika konten tersebut sudah dihapus atau diubah. Saat ini, Google adalah salah satu mesin pencari yang paling efektif untuk fungsi ini.
Contoh:

Google Hacking / Dorking
Menggabungkan search operator dengan kreativitas bisa menghasilkan pencarian yang sangat efektif dalam menemukan file dan informasi sensitif. Teknik ini dikenal sebagai Google Hacking atau Dorking. Meskipun disebut Google, teknik ini juga bisa diterapkan pada mesin pencari lain yang mendukung operator pencarian.
Sumber daya seperti Google Hacking Database menyediakan banyak koleksi dork siap pakai, di antaranya:
File berisi username;
Direktori sensitif;
Deteksi web server;
File rentan;
Server rentan;
Pesan error;
File yang menyimpan informasi rahasia;
Password yang diekspos;
Informasi sensitif dari sistem e-commerce.
Untuk mesin pencari lain seperti Bing dan Shodan, referensi seperti Bishop Fox’s Google Hacking Diggity Project bisa dimanfaatkan.
Remediasi
Evaluasi ulang seluruh informasi desain dan konfigurasi sebelum dipublikasikan secara daring.
Lakukan pemeriksaan berkala terhadap konten yang sudah terlanjur tersedia untuk publik.
Terapkan kontrol akses dan kebijakan privasi konten sesuai sensitivitas data.
Last updated