這篇文章主要介紹了DNSFookup是一款什么工具,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
10年積累的網(wǎng)站建設(shè)、成都網(wǎng)站制作經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶(hù)對(duì)網(wǎng)站的新想法和需求。提供各種問(wèn)題對(duì)應(yīng)的解決方案。讓選擇我們的客戶(hù)得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站設(shè)計(jì)后付款的網(wǎng)站建設(shè)流程,更有彭山免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
DnsFookup是一款功能強(qiáng)大的DNS重綁定工具,廣大研究人員可以使用該工具來(lái)對(duì)目標(biāo)DNS服務(wù)器進(jìn)行安全測(cè)試。
本質(zhì)上來(lái)說(shuō),DnsFookup是一款DNS重綁定框架,該框架包含下列組件:
1、一個(gè)DNS服務(wù)器;
2、Web API,用于創(chuàng)建新的子域名,控制DNS服務(wù)器和查看日志等;
3、整合了React App,讓工具使用更加方便;
該工具可以幫助我們創(chuàng)建DNS綁定,其功能類(lèi)似一個(gè)Burp Collaborator,但是DnsFookup能提供的功能更加豐富和強(qiáng)大:
在工具界面中,你可以指定DNS服務(wù)器需要解析的IP地址以及重復(fù)次數(shù),目前版本的DnsFookup只支持A記錄。接下來(lái),你就可以直接在日志記錄中查看到請(qǐng)求來(lái)源,以及解析結(jié)果了。
廣大研究人員可以使用下列命令將該項(xiàng)目源碼克隆至本地:
git clone https://github.com/makuga01/dnsFookup.git
首先,我們需要檢查.py文件中的參數(shù)配置信息,相關(guān)配置信息一般使用下列形式進(jìn)行標(biāo)注:
"""*** CONFIG ***"""
當(dāng)然了,別忘了修改下列文件中的Docker以及redis密碼:
docker-compose.ymlapp.pydns_resources
接下來(lái),可以使用下列命令配置Postgres和Redis:
sudo docker-compose up
切換到./BE中,運(yùn)行下列命令:
pip3 install -r requirements.txtpython3 dns.py # to start the dns server
如果僅出于測(cè)試目的的話(huà),開(kāi)發(fā)版服務(wù)器已經(jīng)足夠了:
FLASK_APP=app.pyFLASK_ENV=developmentflask run
接下來(lái),在./FE中運(yùn)行下列命令:
npm installnpm start
為了登錄和使用API,你需要使用令牌來(lái)完成身份驗(yàn)證,并在application/json中設(shè)置Content-Type。
POST /auth/signup
JSON主體:
{ "username": "marek", "password": "ffffffff"}
響應(yīng):
{ "name": "marek", "access_token": "eyJuYW1lIjoiMTMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzNyBTZUtyM1QgVDBLM24ifQo="}
POST /auth/signup
JSON主體:
{ "username": "marek", "password": "ffffffff"}
響應(yīng):
{ "name": "marek", "access_token": "eyJuYW1lIjoiMTMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzNyBTZUtyM1QgVDBLM24ifQo="}
POST /auth/logout
響應(yīng):
{ "message": "Access token has been revoked"}
GET /api/user
響應(yīng):
{ "name": "marek"}
POST /api/fookup/new
JSON主體:
{"name":"dsads","ip_props":{"1":{"ip":"123.0.0.1","repeat":13},"2":{"ip":"3.2.1.1","repeat": "4ever"}}}
響應(yīng):
{ "subdomain": "0dd4d9083d7647e1a5fd5f1444e655ce.gel0.space"}
假設(shè),我們向工具提供下列內(nèi)容:
{"name":"dsads","ip_props":{"1":{"ip":"1.1.1.1","repeat":2},"2":{"ip":"2.2.2.2","repeat": 1}}}
接下來(lái),針對(duì)該域名使用host命令來(lái)進(jìn)行測(cè)試:
$host {domain}{domain} has address 1.1.1.1$host {domain}{domain} has address 1.1.1.1$host {domain}{domain} has address 2.2.2.2$host {domain}{domain} has address 1.1.1.1$host {domain}{domain} has address 1.1.1.1$host {domain}{domain} has address 2.2.2.2...
{"name":"dsads","ip_props":{"1":{"ip":"1.1.1.1","repeat":2},"2":{"ip":"2.2.2.2","repeat": "4ever"}}}
Host命令的輸出如下:
$host {domain}{domain} has address 1.1.1.1$host {domain}{domain} has address 1.1.1.1$host {domain}{domain} has address 2.2.2.2$host {domain}{domain} has address 2.2.2.2$host {domain}{domain} has address 2.2.2.2$host {domain}{domain} has address 2.2.2.2$host {domain}{domain} has address 2.2.2.2
這個(gè)API可以幫助我們返回所有的日志文件:
GET /api/fookup/logs/all
響應(yīng):
[ { "uuid": "0dd4d9083d7647e1a5fd5f1444e655ce", "resolved_to": "123.0.0.0", "domain": "0dd4d9083d7647e1a5fd5f1444e655ce.gel0.space", "origin_ip": "127.0.0.1", "port": "41095", "created_date": "2019-09-17 20:38:44.769560" },...snip... { "uuid": "ffffffffffffffffffffffffffffffff", "resolved_to": "99.123.64.19", "domain": "0dd4d9083d7647e1a5fd5f1444e655ce.gel0.space", "origin_ip": "127.0.0.1", "port": "51515", "created_date": "2019-09-17 20:38:50.321975" }]
這個(gè)API可以幫助我們獲取到前端App的統(tǒng)計(jì)數(shù)據(jù):
GET /api/statistics
響應(yīng):
{ "request_count": 420, "created_bins": 69}
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“DnsFookup是一款什么工具”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來(lái)學(xué)習(xí)!