Konteks Etis & Legal

Google Dorks memanfaatkan mesin pencari Google untuk menemukan informasi yang terindeks secara publik. Tidak ada eksploitasi, tidak ada bypass otentikasi, tidak ada akses ilegal. Namun, informasi yang ditemukan bisa sangat sensitif (dokumen internal, kredensial, database backup). Menggunakan informasi itu untuk mengakses sistem tanpa izin adalah ilegal. Pembahasan ini sepenuhnya defensif: agar defender tahu apa yang bisa dilihat penyerang dan bagaimana menutup celah.


🧬 Apa Itu Google Dorks?

Google Dorks (atau β€œGoogle Hacking”) adalah penggunaan operator pencarian lanjutan Google untuk menemukan informasi yang tidak dimaksudkan untuk publik, tetapi secara tidak sengaja terindeks oleh crawler Google. Ini adalah teknik OSINT paling sederhana namun paling mematikan: tanpa mengirim satu byte pun ke server target, penyerang dapat menemukan halaman login, file konfigurasi, backup database, kamera pengawas, dokumen rahasia pemerintah, dan banyak lagi.

Inti dari Google Dorks adalah search operators β€” kata kunci sintaks yang mempersempit pencarian ke parameter spesifik:

  • site: β€” membatasi pencarian ke domain tertentu.
  • filetype: β€” mencari jenis file tertentu (pdf, xls, sql, bak, log, env).
  • intitle: β€” mencari kata dalam tag <title> halaman.
  • inurl: β€” mencari string di dalam URL.
  • intext: β€” mencari string di dalam body halaman.
  • cache: β€” melihat versi tersimpan Google dari suatu halaman.
  • link: β€” (deprecated) mencari halaman yang menautkan ke URL tertentu.
  • related: β€” mencari situs yang mirip.
  • before: / after: β€” filter tanggal.
  • .. β€” range numerik (misal: site:target.com port: 1..65535).

Operator-operator ini bisa dikombinasikan untuk membuat query yang sangat presisi dan kuat.


πŸ” Operator Esensial & Kombinasinya

1. site: β€” Membidik Satu Domain atau TLD

Membatasi pencarian ke domain atau top-level domain tertentu.

  • site:target.com β†’ semua halaman dari target.com yang diindeks Google.
  • site:go.id β†’ seluruh situs pemerintah Indonesia.
  • site:mil β†’ situs militer AS.
  • site:ac.id β†’ universitas di Indonesia.

2. filetype: β€” Mencari File yang Tidak Seharusnya Publik

Membatasi hasil ke tipe file tertentu. Google mendukung puluhan ekstensi: pdf, doc, xls, ppt, sql, bak, log, txt, env, cfg, conf, ini, dbf, mdb, rar, zip, tar, tgz, php, asp, aspx, jsp, json, xml, rss, wsdl, wadl.

  • filetype:sql β†’ file dump database SQL.
  • filetype:bak β†’ file backup.
  • filetype:env β†’ file environment variables (sering mengandung API keys, database passwords).
  • filetype:log β†’ file log aplikasi.
  • filetype:pem atau filetype:key β†’ kunci privat SSL.
  • filetype:pdf intext:"classified" β†’ dokumen rahasia.

3. intitle: / allintitle: β€” Judul Halaman yang Memberi Petunjuk

Mencari teks di dalam <title> HTML.

  • intitle:"Index of" β†’ listing direktori Apache/Nginx.
  • intitle:"phpMyAdmin" β†’ panel admin database.
  • intitle:"Dashboard [Jenkins]" β†’ Jenkins CI/CD.
  • intitle:"Webcam" β†’ antarmuka webcam.
  • intitle:"login" β†’ halaman login apa pun.

4. inurl: / allinurl: β€” String di URL

Mencari kata atau pola di URL. Sangat berguna untuk menemukan panel admin, file konfigurasi, atau endpoint API.

  • inurl:admin β†’ halaman dengan β€œadmin” di URL.
  • inurl:login β†’ halaman login.
  • inurl:phpmyadmin β†’ instalasi phpMyAdmin.
  • inurl:wp-content β†’ direktori upload WordPress.
  • inurl:api/v1 β†’ endpoint API.
  • inurl:backup β†’ direktori atau file backup.

5. intext: β€” Pencarian di Body Halaman

Mencari teks di dalam konten halaman.

  • intext:"password" filetype:txt β†’ file teks yang berisi kata β€œpassword”.
  • intext:"SELECT * FROM" filetype:php β†’ kode PHP dengan query SQL.
  • intext:"API_KEY" β†’ halaman yang secara tidak sengaja menampilkan API key.

6. Operator Logika & Wildcard

  • OR (atau |) β€” Gabungan alternatif: site:target.com (filetype:pdf OR filetype:docx)
  • - (minus) β€” Mengecualikan kata: site:target.com -filetype:html
  • * β€” Wildcard: site:target.com inurl:"*backup*" (mencari backup, backups, backup-old, dll.)
  • .. β€” Range numerik: site:target.com inurl:"id=1..1000"
  • " " β€” Kutip untuk frasa persis: "Index of /backup"

☠️ Dorks Paling Mematikan: Kategorisasi & Contoh Nyata

Kategori A: File Konfigurasi & Kredensial

QueryTujuan
intitle:"Index of" ".env"File environment Laravel/Symfony yang mengandung DB password, APP_KEY, API secret.
filetype:sql "password"Dump database dengan hash atau plaintext password.
filetype:pem intext:"BEGIN RSA PRIVATE KEY"Kunci privat SSL.
intitle:"index of" "config.php"File konfigurasi PHP dengan kredensial database.
inurl:/.git/configFile konfigurasi Git repositori, mungkin mengandung remote origin dengan token.
filetype:tfstateTerraform state file, sering berisi AWS keys, IP internal, arsitektur cloud.
filetype:yml intext:"password"File YAML dengan password (Ansible playbook, docker-compose).
filetype:json intext:"private_key"JSON yang memuat private key.

Kategori B: Panel Administrasi & Layanan Terbuka

QueryTujuan
intitle:"phpMyAdmin" intext:"Welcome to phpMyAdmin"Instalasi phpMyAdmin tanpa proteksi.
intitle:"Dashboard [Jenkins]"Jenkins CI/CD tanpa otentikasi.
intitle:"Grafana"Dashboard monitoring Grafana publik.
intitle:"Kibana"Instalasi Kibana elastis.
inurl:admin intitle:loginHalaman login panel admin.
intitle:"Apache Tomcat"Apache Tomcat console.
intitle:"Internet Information Services"IIS server default page.
intitle:"MongoDB Express"Mongo Express panel.
intitle:"RabbitMQ"RabbitMQ management interface.

Kategori C: Informasi Pribadi & Data Breach

QueryTujuan
filetype:xls intext:"email" intext:"password"Spreadsheet Excel berisi daftar email dan password.
filetype:csv "credit card"Data kartu kredit dalam CSV.
intitle:"index of" "passport"Scan paspor yang tersimpan di direktori publik.
filetype:pdf "social security number"Dokumen PDF dengan nomor SSN (AS).
site:pastebin.com intext:"@target.com" "password"Kredensial target yang bocor di Pastebin.

Kategori D: Informasi Infrastruktur & Jaringan Internal

QueryTujuan
site:target.com intitle:"networking" "IP address"Diagram jaringan internal.
intitle:"index of" "network"Listing direktori yang berisi peta jaringan.
filetype:vsd intext:"firewall"Diagram Visio infrastruktur.
filetype:pdf "internal use only"Dokumen yang ditandai internal.
inurl:server-statusHalaman status Apache, mengungkapkan request URL, IP klien, dan path internal.
intitle:"index of" "ssh"Kunci SSH yang terpapar.

Kategori E: Perangkat IoT & Kamera Publik

QueryTujuan
intitle:"Live View" intitle:"Webcam"Webcam publik.
intitle:"Network Camera"Kamera jaringan.
inurl:view.shtmlKamera IP.
intitle:"WebcamXP"WebcamXP software.
intitle:"scada"Perangkat SCADA (industri).
intitle:"BACnet"Perangkat BACnet (building automation).
inurl:"/cgi-bin/webproc"Router/modern interface.

πŸ”¬ Teknik Lanjutan: Menggabungkan Dorks untuk Presisi

Query Bertingkat

Daripada satu dork besar, kombinasikan secara presisi:

site:target.com (filetype:bak OR filetype:old OR filetype:backup) intext:"<?php"

Mencari file backup PHP yang mengandung kode sumber.

site:target.com inurl:backup filetype:sql

Mencari file backup database di domain target.

site:target.com intitle:"index of" "parent directory" "wp-config"

Mencari direktori terbuka yang mengandung file konfigurasi WordPress.

Wildcard & Ranges untuk Fuzzing

site:target.com inurl:"page=*"

Mencari parameter page yang mungkin rentan terhadap LFI/RFI.

site:target.com inurl:"id=1..999"

Enumerasi ID numerik pada parameter URL.

Google Dorks untuk Bug Bounty & Red Team

  • Subdomain Enumeration: site:*.target.com -www β†’ menemukan subdomain selain www.
  • File Upload Discovery: site:target.com inurl:upload β†’ menemukan endpoint upload file.
  • Backend Technology: site:target.com inurl:jsp atau inurl:asp atau inurl:php β†’ mengidentifikasi teknologi backend.
  • Error Messages: site:target.com intext:"SQL syntax" β†’ SQL errors yang bocor struktur database.
  • Debug Mode: site:target.com intext:"Debug mode" β†’ aplikasi dalam mode debug.

πŸ›‘οΈ Countermeasures: Mengurangi Eksposur di Google

1. Robots.txt β€” Bukan Solusi Utama

File robots.txt meminta crawler untuk tidak mengindeks direktori tertentu. Namun, Google Dorks seringkali justru menargetkan file yang ada di Disallow karena penyerang bisa menggunakan inurl: untuk melihat URL yang diblokir. Contoh:

User-agent: *
Disallow: /admin/
Disallow: /backup/

Penyerang akan mencari site:target.com inurl:/admin/ untuk melihat apakah direktori ini memiliki file index. Robots.txt tidak mencegah pengindeksan sepenuhnya jika ada link eksternal menuju direktori tersebut.

2. Meta Tag noindex

Lebih kuat dari robots.txt. Tambahkan di <head>:

<meta name="robots" content="noindex, nofollow" />

Ini mencegah Google mengindeks halaman meskipun ada tautan dari luar. Namun, harus dikonfigurasi per halaman.

3. .htaccess / Nginx Authentication

Proteksi direktori sensitif dengan password (HTTP Basic Auth) sehingga Google tidak bisa mengaksesnya (kode status 401/403). Cek header response: jika server mengembalikan 403, Google tidak akan mengindeks.

4. Google Search Console β€” Remove URL

Jika data sensitif sudah terlanjur terindeks:

  1. Hapus file dari server.
  2. Kembalikan status 404 atau 410.
  3. Gunakan Google Search Console > Removals > Temporary Removals untuk menghapus URL dari indeks dengan cepat.
  4. Untuk penghapusan permanen, pastikan server mengembalikan 404/410 dan halaman tidak lagi di-link.

5. Data Leak Monitoring (Self-Dorking)

Lakukan pencarian dork terhadap domain Anda sendiri secara berkala:

site:domainanda.com filetype:sql
site:domainanda.com filetype:env
site:domainanda.com intitle:"index of"
site:domainanda.com inurl:backup

Ini adalah bagian dari External Attack Surface Management (EASM). Jika menemukan data sensitif, segera hapus dan de-indeks.

6. Harden Konfigurasi Server

  • Matikan directory listing (Options -Indexes di Apache, autoindex off di Nginx).
  • Jangan biarkan file backup dengan ekstensi .bak, .old, .backup di direktori publik.
  • Jangan commit file .env atau config.php ke repositori publik.
  • Gunakan .gitignore yang tepat, dan jika perlu, blokir akses ke /.git/ via server config.
  • Matikan server-status atau batasi akses ke IP internal.

7. Audit Sertifikat SSL

Google mengindeks isi sertifikat SSL melalui Certificate Transparency. Jangan cantumkan hostname internal di SAN sertifikat publik. Gunakan wildcard atau internal CA.


↔️ Dual-Use Spectrum

DEFENSE ◄────────────────────────────────────────► OFFENSE

Self-Dorking                Bug Bounty               Data Thief
β”‚                           β”‚                        β”‚
Memeriksa eksposur          Menemukan endpoint       Mencari file .sql
aset sendiri                rentan di program        bocor untuk dijual
β”‚                           bug bounty               β”‚
β”‚                           β”‚                        β–Ό
β–Ό                           β–Ό                        Identity Thief
Security audit              Red team:                Mencari spreadsheet
eksternal tanpa             menemukan                email:password untuk
biaya sepeser pun           dokumen internal         credential stuffing

Google Dorks adalah OSINT murni: tidak ilegal, tidak invasive, tidak meninggalkan jejak di server target (semua query ke Google, bukan ke target). Namun, hasilnya bisa digunakan untuk serangan yang sangat merusak.


πŸ”— Koneksi dalam Vault

  • shodan β€” Shodan mencari perangkat; Google Dorks mencari file dan direktori. Keduanya saling melengkapi: Shodan menemukan IP yang terbuka, Google Dorks menemukan apa yang ada di balik IP tersebut.
  • maltego β€” Maltego dapat menggunakan Google Dorks sebagai bagian dari transform untuk menemukan dokumen terkait domain atau email.
  • metasploit β€” Google Dorks dapat menemukan aplikasi rentan (misal: inurl:/struts/ untuk Apache Struts), yang kemudian dieksploitasi dengan Metasploit.
  • bloodhound β€” Tidak langsung, tetapi informasi dari dorks (dokumen internal, nama karyawan) bisa digunakan untuk social engineering dan mendapatkan akses awal ke AD.
  • burp-suite β€” Setelah menemukan aplikasi web dengan Google Dorks, Burp Suite digunakan untuk mengaudit dan mengeksploitasi lebih dalam.
  • pegasus β€” Operator Pegasus bisa menggunakan dorks untuk menemukan nomor telepon atau email target.

πŸ“š Referensi


Google Dorks Deep Dive | Advanced Search Operators for Exposed Data | Passive Reconnaissance OSINT