為什麼要收集各個企業的 Email 信箱,透過了解企業公開在外的 Email,可以取得以下的資訊
從以上的資料可以透過 Google 或是工具進行蒐集,可能取得員工編號或是客服帳號。
實例
以自身經歷分享,曾經透過 Google Hacking 的手法,找到目標的信箱,可以從公告內容、網站底下的聯絡資料、活動主辦單位聯絡資料,取得帳號之後。
如圖模擬目標 mail2000 服務,該服務有可以設定密碼提示的欄位,許多人常忘記密碼因此會在密碼提示設定簡單好懂,如「四個A三個B兩個@一個1(AAAABBB@@1)」,讓自己一目了然,當然也讓檢測人員一目了然。
蒐集到的 mail 就可以做猜解密碼的動作,該次一連猜了十幾組帳號密碼,導致敏感資料外洩。
用來蒐集電子信箱,會針對不同的搜尋引擎下去蒐集。
查看參數說明
請注意一定要打大寫!
查看幫助清單:theHarvester -h
指令清單:theHarvester -d [domain] -b [搜尋引擎] -l [num]
示範指令:theHarvester -d gmail.com -b google -l 10
假設今天有敏感資料外洩,對應信箱跟密碼,而這個信箱剛好是這次的目標,可能就可以利用這個密碼進行滲透,若想知道自己的信箱有沒有外洩的紀錄,可以參考 https://haveibeenpwned.com/
輸入自己的信箱,確認是否曾經外洩過,此處的外洩,可能並非原服務安全問題,有可能使用第三方服務或安全性較低的網站,而密碼卻用相同的密碼,導致一組密碼外洩,很多服務都會外洩。
利用 Python 撰寫而成的工具,內含有許多模組可以使用,首先要確認版本,筆者示範版本為 Recon-ng 5。
啟動工具與查看版本
啟動工具:recon-ng
更新模組
指令:marketplace refresh
確認模組列表
指令:marketplace search
可在 github 專案中確認模組內容與資訊。
搜尋指定的模組
指令:marketplace search [keyword]
範例指令:marketplace search hibp
hibp 就是我們提到的 https://haveibeenpwned.com/
這個網站提供的 API。
可看到 路徑/版本/是否安裝/更新日期/
D 表示需要相依套件
K 表示需要 api_key 才可以使用
模組分類
模組名稱 | 說明 |
---|---|
Discovery | 掃描取得資訊 |
Exploitation | 掃描已知弱點 |
Import | 匯入資料 |
Recon | 取得電子信箱、域名或IP、GPS等 |
Report | 匯出報告 (.html 或 .csv) |
安裝指定模組
指令:marketplace install [模組名稱]
範例指令:marketplace install recon/contacts-credentials/hibp_breach
加入 api key
指令:keys add hibp_api [API key]
hibp api 每個月需要 3.5 美元,請到官方網站 API 申請。
載入安裝好的模組與顯示模組資訊
指令:modules load recon/contacts-credentials/hibp_breach
輸入:info
從 Options 中,可以看到只有一個參數可以設定,參數名稱為 SOURCE ,可以設定以下的格式:
欄位種類 | 說明 |
---|---|
Default |
預設的 SQL 字串 SELECT DISTINCT email FROM contacts WHERE email IS NOT NUL |
<string> |
單一字串 |
<path> |
檔案內包含多個信箱 |
query <sql> |
資料庫檔案包含多個信箱 |
進行搜尋
指令:options set SOURCE info@microsoft.com
指令:run
查詢找到的密碼
指令:show credentials
※針對域名可使用 recon/domains-hosts/hackertarget
新增工作空間
指令:workspaces create [name]
查看工作空間列表
指令:workspaces list
選擇其他工作空間
指令:workspaces select