03 - Review Webserver Metafiles for Information Leakage
Description
Bagian ini menjelaskan bagaimana menguji berbagai file metadata untuk mengidentifikasi kemungkinan kebocoran informasi terkait jalur (path) atau fungsionalitas dari aplikasi web. Selain itu, daftar direktori yang perlu dihindari oleh Spider, Robot, atau Crawler juga dapat dimanfaatkan sebagai dependensi dalam proses pemetaan jalur eksekusi melalui aplikasi. Informasi lain yang dikumpulkan dapat membantu dalam mengidentifikasi permukaan serangan (attack surface), teknologi yang digunakan, maupun untuk keperluan rekayasa sosial (social engineering).
Test Objective
Mengidentifikasi jalur tersembunyi atau tersamarkan, serta fungsionalitas tertentu melalui analisis file metadata.
Mengekstrak dan memetakan informasi lain yang dapat memberikan pemahaman yang lebih baik mengenai sistem yang diuji.
How to Test
Segala tindakan yang dilakukan menggunakan wget dalam konteks ini juga dapat dilakukan dengan curl. Banyak alat Dynamic Application Security Testing (DAST) seperti ZAP dan Burp Suite memiliki kemampuan untuk mendeteksi atau melakukan parsing terhadap sumber daya ini sebagai bagian dari fungsi spider atau crawler mereka. Selain itu, metadata ini juga dapat diidentifikasi menggunakan teknik Google Dorking seperti inurl: dan pencarian lanjutan lainnya.
Robots
Spider, robot, atau crawler akan mengambil sebuah halaman web, lalu mengikuti hyperlink secara rekursif untuk mengambil konten web lainnya. Perilaku mereka diatur melalui Robots Exclusion Protocol yang ditentukan di file robots.txt pada direktori root situs.
Contoh awal isi file robots.txt dari Google per 5 Mei 2020:
User-agent: *
Disallow: /search
Allow: /search/about
Allow: /search/static
Allow: /search/howsearchworks
Disallow: /sdchUser-agent: Mengacu pada robot/spider/crawler tertentu (misal
Googlebot,bingbot, atau*untuk semua).Disallow: Menentukan jalur yang tidak boleh diakses oleh bot.
Catatan penting: robots.txt tidak seharusnya dianggap sebagai mekanisme pengamanan untuk mencegah akses pihak ketiga, karena banyak crawler yang tidak mematuhinya—terutama dari media sosial.
Cara mengambil robots.txt menggunakan curl:
Analisis robots.txt melalui Google Webmaster Tools:
Masuk ke Google Webmaster Tools.
Masukkan URL situs yang ingin dianalisis.
Pilih metode verifikasi, lalu ikuti instruksi.
META Tags
Tag <meta> terdapat dalam bagian <head> dari setiap dokumen HTML dan sebaiknya konsisten di seluruh halaman situs, terutama untuk mendukung crawler yang mulai menjelajah dari tautan yang dalam (deep link). Arahannya juga bisa ditentukan menggunakan tag META NAME="ROBOTS".
Jika tidak ada tag ini, maka akan diterapkan nilai default INDEX, FOLLOW. Nilai lainnya yang valid adalah NOINDEX dan NOFOLLOW.
Selain itu, pengujian dapat dilakukan dengan mencari ekspresi reguler <META NAME="ROBOTS" dan mencocokkannya dengan isi robots.txt.
Informasi META Tambahan
Beberapa organisasi menanamkan tag META tambahan untuk berbagai tujuan seperti dukungan pembaca layar, pratinjau media sosial, atau pengindeksan mesin pencari. Tag ini dapat membantu penguji mengidentifikasi teknologi yang digunakan atau jalur yang mungkin belum terlihat.
Contoh tag dari situs whitehouse.gov:
Sitemaps
Sitemap adalah file XML yang mendeskripsikan halaman, video, atau file lain beserta hubungan antar elemen di situs/aplikasi. Mesin pencari menggunakannya untuk menjelajahi situs secara lebih efisien, sementara penguji bisa menggunakannya untuk menemukan konten tersembunyi atau jarang diakses.
Contoh perintah untuk mengambil sitemap Google:
Contoh isi file sitemap.xml:
Security TXT
File security.txt adalah standar yang diusulkan untuk mendeklarasikan kebijakan keamanan dan kontak pada sebuah situs. Informasi ini bermanfaat untuk:
Menemukan jalur atau sumber daya tambahan
Open Source Intelligence (OSINT)
Informasi program bug bounty
Rekayasa sosial
Lokasi umum file:
Contoh dari LinkedIn:
Humans TXT
File humans.txt adalah inisiatif untuk mengenal orang-orang di balik pengembangan situs. Biasanya berisi info seputar tim developer, desainer, dan kontributor.
Contoh dari Google:
Other .well-known Information Sources
Beberapa RFC dan Internet Drafts lainnya mendefinisikan file-file standar tambahan yang dapat diletakkan di direktori .well-known/. Penguji dapat menggunakan daftar RFC ini sebagai sumber input bagi crawler atau fuzzer untuk mengidentifikasi eksistensi dan kontennya.
Tools
Browser (View Source or Dev Tools functionality)
curl
wget
Burp Suite
ZAP
Last updated