InfoHound:一款針對域名安全的強(qiáng)大OSINT工具
關(guān)于InfoHound
InfoHound是一款針對域名安全的強(qiáng)大OSINT工具,在該工具的幫助下,廣大研究人員只需要提供一個Web域名,InfoHound就可以返回大量跟目標(biāo)域名相關(guān)的數(shù)據(jù)。
在網(wǎng)絡(luò)偵查階段,攻擊者會搜索有關(guān)其目標(biāo)的任何信息,以創(chuàng)建一個檔案,而這種檔案可以幫助他確定進(jìn)入目標(biāo)組織的可能方式。InfoHound使用了公開資源情報(bào)(OSINT)技術(shù)來對目標(biāo)域名執(zhí)行被動分析,且整個過程中不需要與目標(biāo)進(jìn)行直接交互,即可提取給定域名的大量有價值數(shù)據(jù)。
該工具支持檢索域名郵箱、相關(guān)人員信息、文件、子域名、用戶名和URL地址,并且之后還會對這些提取到的信息執(zhí)行后續(xù)詳盡分析,以嘗試提取出更多有價值的信息。
工具架構(gòu)
工具安裝
廣大研究人員可以使用下列命令將該項(xiàng)目源碼克隆至本地:
git clone https://github.com/xampla/InfoHound.git
然后切換到項(xiàng)目目錄中,重命名項(xiàng)目的配置文件:
cd InfoHound/infohound
mv infohound_config.sample.py infohound_config.py
然后啟動docker-compose即可:
cd ..
docker-compose up -d
現(xiàn)在,我們就可以在瀏覽器中訪問下列地址來使用InfoHound了:
http://localhost:8000/infohound/
需要注意的是,你必須要先在infohound_config.py文件中添加所需的API密鑰。
工具默認(rèn)模塊
InfoHound提供了兩種不同類型的操作模塊,一個負(fù)責(zé)檢索數(shù)據(jù),另一個則負(fù)責(zé)對檢索數(shù)據(jù)進(jìn)行深入分析以提取更多相關(guān)的信息。
檢索模塊
模塊名稱 | 模塊描述 |
Get Whois Info | 查詢相關(guān)的Whois信息 |
Get DNS Records | 查詢DNS記錄 |
Get Subdomains | 使用Alienvault OTX API、CRT.sh和HackerTarget作為數(shù)據(jù)源來搜索緩存的子域名 |
Get Subdomains From URLs | 檢查所有的URL以發(fā)現(xiàn)新的子域名 |
Get URLs | 搜索Wayback緩存的所有URL,并將其存儲到數(shù)據(jù)庫中,之后可以有助于發(fā)現(xiàn)其他類似文件或子域名之類的數(shù)據(jù)條目 |
Get Files from URLs | 循環(huán)搜索數(shù)據(jù)庫表中的URL以查找文件,并將其存儲到文件數(shù)據(jù)庫中已備后續(xù)分析,支持的文件類型包括:doc, docx, ppt, pptx, pps, ppsx, xls, xlsx, odt, ods, odg, odp, sxw, sxc, sxi, pdf, wpd, svg, indd, rdp, ica, zip, rar |
Find Email | 向Google和Bing發(fā)送查詢請求以查找郵箱/郵件 |
Find People from Emails | 找到郵箱/郵件之后,該模塊可以發(fā)現(xiàn)其背后的真實(shí)用戶,并查找其用戶名 |
Find Emails From URLs | 從URL路徑檢索所有的郵箱/郵件 |
Execute Dorks | 執(zhí)行Dork |
Find Emails From Dorks | 從Dork執(zhí)行嘗試檢索郵箱/郵件 |
分析模塊
模塊名稱 | 模塊描述 |
Check Subdomains Take-Over | 檢查子域名是否可以被接管 |
Check If Domain Can Be Spoofed | 檢查目標(biāo)域名是否可以執(zhí)行域名欺騙,以實(shí)現(xiàn)用戶偽裝 |
Get Profiles From Usernames | 從社交網(wǎng)絡(luò)或在線服務(wù)根據(jù)用戶名獲取用戶資料 |
Download All Files | 將文件數(shù)據(jù)庫中存儲的文件下載到"download_files" 文件夾中 |
Get Metadata | 從下載的文件中提取出所有的元數(shù)據(jù),并存儲到數(shù)據(jù)庫中 |
Get Emails From Metadata | 由于某些元數(shù)據(jù)可能包含郵箱/郵件信息,該模塊可以從所有元數(shù)據(jù)中檢索郵箱/郵件信息,并將其存儲到數(shù)據(jù)庫中 |
Get Emails From Files Content | 從下載的文件中檢索所有的郵件內(nèi)容 |
Find Registered Services using Emails | 檢查之前發(fā)現(xiàn)的郵箱是否注冊過下列在線服務(wù):Twitter, Adobe, Facebook, Imgur, Mewe, Parler, Rumble, Snapchat, Wordpress, Duolingo |
Check Breach | 檢查目標(biāo)郵箱是否在某次數(shù)據(jù)泄露事件中發(fā)生過泄漏 |
自定義模塊
InfoHound還允許我們創(chuàng)建自定義模塊,我們只需要將腳本添加到infohoudn/tool/custom_modules中即可。在下面的例子中,我們添加了一個自定義模塊,該模塊使用Holehe工具來檢查之前搜索到的郵箱是否曾在Twitter、Instagram、Imgur等120多個網(wǎng)站上注冊過:
# Import the packages you need
import trio
import httpx
import requests
from holehe import core
# Import the Django models you will work with
from infohound.models import Emails
MODULE_ID = "findRegisteredSitesHoleheCustomTask" # Set a module ID
MODULE_NAME = "Find sites with Holehe" # Set a module name
MODULE_DESCRIPTION = "Using Holehe tool, this task will find where an email has been used to create an account. Holehe checks more than 120 sites." # Set a description
MODULE_TYPE = "Analysis" # Set the type: Analysis or Retrieve
# This function is the only function it will be called by InfoHound
# Change its content and create other the functions if needed
def custom_task(domain_id):
trio.run(findRegisteredSitesHolehe, domain_id)
async def findRegisteredSitesHolehe(domain_id):
queryset = Emails.objects.filter(domain_id=domain_id)
for entry in queryset.iterator():
out = []
email = entry.email
modules = core.import_submodules("holehe.modules")
websites = core.get_functions(modules)
client = httpx.AsyncClient()
for website in websites:
await core.launch_module(website, email, client, out)
print(out)
await client.aclose()
services = []
for item in out:
if item["exists"]:
services.append(item["name"])
entry.registered_services = services
entry.save()
工具運(yùn)行截圖
許可證協(xié)議
本項(xiàng)目的開發(fā)與發(fā)布遵循AGPL-3.0開源許可證協(xié)議。
項(xiàng)目地址
InfoHound:【GitHub傳送門】
參考資料
https://github.com/megadose/holehe
https://github.com/soxoj/maigret
https://github.com/six2dez/reconftw
https://github.com/jakecreps/poastal
本文作者:Alpha_h4ck, 轉(zhuǎn)載請注明來自FreeBuf.COM