google hacking 就簡單的說就是利用 google 強大的搜尋功能來找到一些『 潛在的攻擊目標 』。
就是下搜尋。
然後下面是它常見的 operator,然後每個組成的 query 又可以稱為 dork
。
intext :
intitle :
可以用網頁 title 來找。
cache :
可以找到某個網頁的 cache。
filetype :
可以找到某種類型的檔案。
inurl :
就可以用 keyword 找 url。
site
就可以在某個網頁內用 keyword 找,最後結果都是這個網頁的相關內容。
詳細的東西我建議看這一篇文章,我覺得他說的非常清楚。
Google Search Operators: The Complete List (44 Advanced Operators)
在你家的網站建立 robots.txt,詳細的規格請參考 google 的這份文件。然後以下為簡單的範例。
User-agent: Googlebot
Disallow: /nogooglebot/
User-agent: *
Allow: /
Sitemap: https://www.example.com/sitemap.xml
上面的內容主要是在說明 :
請求的 user-agent 如果為 Googlebot,則無法索引任何 https://example.com/nogooglebot/ 開頭的網址。
然後不是 googlebot 的都可以檢索整個網站。
sitemap 就是這個網站長的樣子。
https://developers.google.com/search/docs/crawling-indexing/robots-meta-tag
這三種方法的差別在於 :
robots meta : 以某個 html 為單位。
data-nosnippet : 以某個 html tag 為單位,例如你不想要某個 html tag 的內容被 google 檢索。
X-Robots-Tag HTTP header : 就是加在 http 的表頭。
然後這些還有幾個特點 :
它可以指定不要顯示在某個 google 中,例如不要顯示在 google 新聞中,然後比較專業的說法就是不要讓 googlebot-news 這個 bot 來抓這個頁面。
然後他還可以根據這份文件內容,來建立更多有效與你要的索引
https://www.exploit-db.com/google-hacking-database
上面這個完站提供了不少資安相關的 dork,簡單的說如果你們家的網站用這些搜尋有找到某些東西,那就代表有一些資安風險。
然後我簡單列出幾類,大概就可以理解是那些東西 :
Footholds ( 立足點 ) : 簡單的說這裡面的一下 google dork 就是可以讓你在 google 上找到一個系統攻擊的進入點,例如 inurl:adminpanel site:gov.*
就是政服機構的 admin 後台。
Files Containing Usernames ( 包含用戶名的文件 ) : 這個就是系統中可能包含用戶資訊的文件,例如 intitle:"index of" "contacts.txt"
。
Sensitive Directories ( 敏感目錄 ) : 就是機敏檔案可以在 google 上找到… ,例如intitle:"index of" ".env"
Web Server Detection ( 網絡服務器檢測 ) : 找出 web 類攻擊目標的資訊,例如inurl *:8080/login.php
Vulnerable Files ( 易受攻擊的文件 ) : 找出系統中的已知的漏洞或文件。
Vulnerable Servers ( 易受攻擊的伺服器 ) : 和上面的差不多,就是 servers 版本。
Error Messages ( 錯誤信息 ) : 系統所返回的錯誤信息,可以分析他,然後了解系統的運作。
然後還有其它類型的建議有可以去一個一個看,有些真的都很有意思。