TDCTF Academy Logo TDCTF ACADEMY

8.1.1 Footprinting

Definisi

Footprinting adalah teknik mengumpulkan informasi publik tentang target tampa melakukan kontak langsung dengan sistem target. Ini adalah langkah paling awal dalam reconnaissance passive - data dikumpulkan dari sumber-sumber terbuka (Open Source Intelligence/OSINT) sehingga target tidak menyadari bahwa mereka sedang dipetakan.

Tujuan utama footprinting:

  • Mengidentifikasi IP range dan subnet milik target
  • Mengetahui nama domain, subdomain, dan DNS records
  • Mendapatkan informasi teknologi web (CMS, framework, server)
  • Menemukan email, nomor telepon, lokasi fisik, dan struktur organisasi
  • Mengumpulkan metadata dari dokumen publik

1. WHOIS Lookup

WHOIS adalah protokol query yang mengembalikan informasi kepemilikan domain - siapa pemilik, kapan didaftarkan, kapan kedaluwarsa, dan siapa registrarnya.

Tools WHOIS

whois (CLI)

whois example.com

Output menampilkan:

  • Registrar: Nama perusahaan tempat domain didaftarkan
  • Name Servers: ns1.example.com, ns2.example.com
  • Creation/Expiry Date: Rentang waktu kepemilikan domain
  • Registrant Organization: Nama organisasi pemilik
  • Registrant Email: Alamat email pendaftar (sering menggunakan privacy protection)
  • Admin/Technical Contact: Informasi kontak teknis

WHOIS via Web

Reverse WHOIS

Jika target menggunakan privacy protection, lakukan reverse WHOIS untuk mencari domain lain yang dimiliki oleh nama/email yang sama:

whois 1.2.3.4

Contoh Analisis WHOIS

$ whois nsa.gov
...
Domain Name: NSA.GOV
Created On: 01-Nov-1989
Expiration Date: 01-Nov-2026
Registrar: DOTGOV Registry
Registrant Organization: National Security Agency
Registrant State/Province: MD
Registrant Country: US
Name Servers: ns1.nsa.gov, ns2.nsa.gov

Domain yang baru didaftarkan (kurang dari 1 tahun) dan memiliki registrant organization berbeda dengan ekspektasi bisa menjadi indikasi typosquatting atau domain parkir.


2. DNS Reconnaissance

DNS menyimpan banyak informasi tentang infrastruktur target. Tiap record DNS memberi petunjuk berbeda.

Types of DNS Records

Record Fungsi Contoh
A IPv4 address 93.184.216.34
AAAA IPv6 address 2606:2800:220:1:248:1893:25c8:1946
MX Mail server mail.example.com
NS Name server ns1.example.com
CNAME Canonical/alias www ke domain utama
TXT Text (SPF, DKIM, DMARC, verifikasi) "v=spf1 include:_spf.google.com ~all"
SOA Start of Authority Informasi zona
SRV Service location _sip._tcp.example.com

Dig (Domain Information Groper)

dig adalah tool DNS paling powerfull di Linux.

# Query A record
dig example.com

# Query specific record type
dig example.com MX
dig example.com NS
dig example.com TXT
dig example.com ANY

# Short output
dig example.com +short

# Trace dari root
dig example.com +trace

# Query ke DNS server tertentu
dig @8.8.8.8 example.com

Contoh output dig MX:

$ dig google.com MX +short
10 smtp.google.com
20 alt1.smtp.google.com
30 alt2.smtp.google.com

Nslookup

Alternatif sederhana untuk query DNS.

# Query default
nslookup example.com

# Query spesifik
nslookup -type=mx example.com
nslookup -type=ns example.com
nslookup -type=txt example.com

# Gunakan server DNS berbeda
nslookup example.com 8.8.8.8

DNS Brute Force Subdomain

Mencari subdomain tersembunyi dengan wordlist:

# Menggunakan dig loop - format alternatif tanpa \$( )
for sub in `cat subdomains.txt`; do
result=`dig "$sub.example.com" +short`
if [ -n "$result" ]; then
echo "$sub.example.com -> $result"
fi
done

Tool khusus: dnsrecon, dnsenum, subfinder


3. IP Range & ASN Enumeration

Setelah mengetahui domain, langkah berikutnya adalah memetakan seluruh IP range yang digunakan target.

WhoIS untuk IP

whois 8.8.8.8

ASN (Autonomous System Number)

ASN adalah identitas unik jaringan di internet. Dengan mengetahui ASN, kita bisa menemukan semua IP range milik organisasi yang sama.

# Cari ASN dari IP
whois -h whois.radb.net 8.8.8.8

# Daftar prefix dari ASN
whois -h whois.radb.net -- '-i origin AS15169'

Tool ASN:

  • bgp.he.net - Hurricane Electric BGP Toolkit
  • ipinfo.io - Informasi IP + ASN
  • asnlookup.com - Lookup ASN berdasarkan organisasi

IP Range CIDR Calculator

# Di Linux
ipcalc 192.168.1.0/24
sipcalc 10.0.0.0/8

4. Web Technology Stack Detection

Teknologi apa yang digunakan target? Ini penting untuk menentukan attack surface.

Wappalyzer

Ekstensi browser yang otomatis mendeteksi:

  • CMS: WordPress, Joomla, Drupal
  • Framework: Laravel, React, Angular, Django
  • Web Server: Nginx, Apache, IIS
  • CDN: Cloudflare, Akamai, Fastly
  • Analytics: Google Analytics, Hotjar
  • Libraries: jQuery, Bootstrap, Font Awesome

BuiltWith

builtwith.com - Profil teknologi website secara detail termasuk:

  • Framework JavaScript
  • Library CSS
  • Widget dan plugin
  • Hosting provider
  • SSL/TLS certificate authority

whatweb (CLI)

whatweb example.com

Output:

http://example.com [200 OK] Apache[2.4.41], Country[UNITED STATES][US],
HTML5, HTTPServer[Apache/2.4.41 (Ubuntu)],
IP[93.184.216.34], JQuery, Script[text/javascript],
Title[Example Domain], UncommonHeaders[last-modified,etag]

curl Headers

curl -I https://example.com

Perhatikan header:

  • Server: Apache/2.4.41 (Ubuntu) - menunjukan web server dan OS
  • X-Powered-By: PHP/7.4 - menunjukan bahasa backend
  • Set-Cookie: PHPSESSID - sesi PHP aktif
  • X-Generator: Drupal 7 - CMS yang digunakan

5. Google Dorking

Google Dorking adalah teknik menggunakan operator pencarian lanjutan Google untuk menemukan informasi sensitif yang terekspos di publik.

Operator Dasar

Operator Fungsi Contoh
site: Batasi ke domain tertentu site:example.com
intitle: Cari di judul halaman intitle:"index of"
inurl: Cari di URL inurl:admin
filetype: Filter tipe file filetype:pdf
cache: Lihat versi cache Google cache:example.com
link: Cari backlink link:example.com
inanchor: Cari di anchor text inanchor:login
* Wildcard site:*.example.com

Dork Praktis untuk Pentest

File konfigurasi ekspos:

site:example.com filetype:env DB_PASSWORD
site:example.com filetype:xml config
site:example.com filetype:sql "INSERT INTO" password
site:example.com ext:cfg "db_password"

Direktori terbuka:

site:example.com intitle:"index of" /admin
site:example.com intitle:"index of" /backup
site:example.com intitle:"index of" /config
site:example.com intitle:"index of" /logs

Halaman login & admin:

site:example.com inurl:admin login
site:example.com intitle:"login" "password"
site:example.com inurl:wp-admin
site:example.com inurl:8080 OR inurl:8443

File ekspos (PDF, DOC, XLS):

site:example.com filetype:xls password
site:example.com filetype:pdf confidential
site:example.com filetype:csv "nama" "alamat" "telepon"
site:example.com filetype:docx "rahasia"

GHDB (Google Hacking Database): Koleksi dork siap pakai dari exploit-db.com:

site:exploit-db.com "GHDB"

6. Email & Employee Reconnaissance

Menemukan alamat email karyawan dan struktur organisasi.

theHarvester

theHarvester -d example.com -b google,linkedin,bing,yahoo

Output: email addresses, subdomains, IPs, virtual hosts.

hunter.io

https://hunter.io - Cari alamat email berdasarkan domain dengan pola: {first}.{last}@example.com

Phonebook.cz

Crawler yang mengumpulkan email, domain, dan URL dari sumber publik.


7. Metadata Extraction

File publik (PDF, DOC, XLS, gambar) sering menyimpan metadata seperti nama penulis, software version, path folder, dan bahkan username.

ExifTool

exiftool dokumen.pdf
exiftool foto.jpg

FOCA (Windows)

Tool GUI untuk mengekstrak metadata dari dokumen publik - sangat powerfull untuk menemukan struktur folder internal perusahaan.


Contoh Workflow Footprinting Lengkap

Target: example.com

1. WHOIS -> Dapatkan registrant, name server, expiry date
$ whois example.com

2. DNS -> Dapatkan A, MX, NS, TXT records
$ dig example.com ANY +short
$ dig example.com MX +short

3. Subdomain -> Cari subdomain tersembunyi
$ dnsrecon -d example.com -D subdomains.txt -t brt

4. IP Range -> Dapatkan ASN dan semua prefix IP
$ IP=`dig example.com +short` && whois -h whois.radb.net "$IP"

5. Teknologi -> Identifikasi stack teknologi
$ whatweb example.com

6. Google dork -> Cari file ekspos dan login pages
$ site:example.com filetype:pdf

7. Email -> Kumpulkan alamat email publik
$ theHarvester -d example.com -b google

Kesimpulan

Footprinting adalah fondasi pentest. Tanpa footprinting yang baik, pentester buta terhadap target. Semakin banyak informasi yang terkumpul di fase ini, semakin besar peluang menemukan celah keamanan di fase exploitation. Semua teknik di atas legal digunakan terhadap target yang sudah mendapatkan izin tertulis (written authorization).

PADA HALAMAN INI