看我如何利用發現的漏洞接管D-Link路由器
前言
我曾發現了D-Link路由器不同型號的多個漏洞,今天我要分享的是我最近發現的D-Link路由器的三個漏洞,綜合利用這三個漏洞,可以獲取D-Link路由器管理許可權,實現對其成功接管。
目錄遍歷漏洞 – CVE-2018-10822
CVSS v3評分:8.6
漏洞描述: D-Link路由器Web介面中存在的目錄遍歷漏洞
漏洞危害: 允許攻擊者利用HTTP請求,在“GET /uir” 後新增 /.. 或 //讀取任意檔案,漏洞存在原因在於D-Link路由器未完全修復的CVE-2017-6190
影響產品:
DWR-116型號中韌體版本低於 1.06 DIR-140L型號中韌體版本低於 1.02 DIR-640L型號中韌體版本低於 1.02 DWR-512型號中韌體版本低於 2.02 DWR-712型號中韌體版本低於 2.02 DWR-912型號中韌體版本低於 2.02 DWR-921型號中韌體版本低於 2.02 DWR-111型號中韌體版本低於 1.01
漏洞驗證:
$ curl <a href="http://routerip/uir//etc/passwd">http://routerip/uir//etc/passwd</a>
安全研究者Patryk Bogdan早前曾上報過該漏洞(CVE-2017-6190),但D-Link官方只在某些版本產品中進行了修復,一些新版產品中卻未完全修復。
明文密碼儲存漏洞 – CVE-2018-10824
漏洞描述: D-Link路由器存有使用者設定的明文密碼
漏洞危害: 攻擊者可以讀取存在於/tmp/目錄下的使用者明文密碼
影響產品:
DWR-116型號中韌體版本低於 1.06 DIR-140L型號中韌體版本低於 1.02 DIR-640L型號中韌體版本低於 1.02 DWR-512型號中韌體版本低於 2.02 DWR-712型號中韌體版本低於 2.02 DWR-912型號中韌體版本低於 2.02 DWR-921型號中韌體版本低於 2.02 DWR-111型號中韌體版本低於 1.01
漏洞驗證: 由於目前D-Link存在大量未修復的該漏洞相關產品,為了避免對使用者造成安全損害,我把具體的明文密碼儲存目錄用XXX作了隱藏代替,明文密碼具體儲存位置為/tmp/XXX/0 檔案中,具備上述目錄遍歷漏洞的攻擊者可以輕鬆獲取得到,從而實現提權。
$ curl <a href="http://routerip/uir//tmp/XXX/0">http://routerip/uir//tmp/XXX/0</a>
這條命令無需驗證,即可獲得一個二進位制的config配置檔案,其中包含了管理員的使用者名稱密碼和其它敏感配置資訊,從而獲取對D-Link路由器的控制權。
命令注入漏洞 – CVE-2018-10823
CVSS v3評分: 9.1
漏洞描述: 獲得身份驗證的攻擊者可以通過在chkisg.htm頁面中注入shell命令以執行任意程式碼,實現裝置的深入控制。
影響產品:
DWR-116型號中韌體版本低於1.06 DWR-512型號中韌體版本低於2.02 DWR-712型號中韌體版本低於2.02 DWR-912型號中韌體版本低於2.02 DWR-921型號中韌體版本低於2.02 DWR-111型號中韌體版本低於1.01
漏洞驗證:
1、登入路由器
2、請求以下連結:
$ curl <a href="http://routerip/chkisg.htm%3FSip%3D1.1.1.1%20%7C%20cat%20%2Fetc%2Fpasswd">http://routerip/chkisg.htm%3FSip%3D1.1.1.1%20%7C%20cat%20%2Fetc%2Fpasswd</a>
3、檢視響應的passwd檔案內容。
綜合利用
綜合利用以上三個漏洞,可以輕鬆獲得對D-Link路由器的程式碼執行和完全控制權。
CVSS v3綜合利用評分: 10.0
*參考來源: ofollow,noindex" target="_blank">sploit ,clouds編譯,轉載請註明來自FreeBuf.COM