<span id="7ztzv"></span>
<sub id="7ztzv"></sub>

<span id="7ztzv"></span><form id="7ztzv"></form>

<span id="7ztzv"></span>

        <address id="7ztzv"></address>

            原文地址:http://drops.wooyun.org/tips/11305

            0x00 前言


            上篇我們成功在McAfee Application Control保護的系統上實現了代碼執行,而McAfee Application Control的其他保護功能同樣很強大,其中對文件讀寫操作的攔截很有特色,這一次我們接著試試能不能繞過:D

            這里寫圖片描述

            0x01 簡介


            當McAfee Application Control開啟了文件寫入保護和讀取保護,可以阻止任何對受保護文件的修改,具體保護細節如圖

            這里寫圖片描述

            簡單的說,如果開啟了寫入保護,那么對文件的任何修改操作都會被阻止并被日志記錄。

            如果開啟了讀取保護,那么無法讀取受保護文件的內容。

            可是深入了解之后,有趣的事情發生了。

            0x02 配置Write Protection


            操作系統:win7x86

            首先學習一下如何設置以及使用文件寫入保護。

            寫入保護可以指定文件夾、文件或者是驅動文件

            測試使用指定文件夾c:\test\write

            里面包含test.txt

            1.指定保護路徑

            #!bash
            sadmin write-protect -i c:\test\write
            

            2.查看保護路徑

            #!bash
            sadmin write-protect -l
            

            如圖 這里寫圖片描述

            隨后我們嘗試在c:\test\write下新建文件、刪除文件、修改文件,均失敗

            如圖 這里寫圖片描述

            這里寫圖片描述

            3.刪除保護路徑

            #!bash
            sadmin write-protect -r c:\test\write
            

            0x03 配置Read Protection


            接著測試讀取保護

            測試使用指定文件夾c:\test\read

            下面包含test.txt,里面保存有加密信息

            注:
            寫入保護默認開啟,而讀取保護默認關閉,所以先要開啟讀取保護功能

            1.開啟讀取保護功能

            #!bash
            sadmin features enable deny-read
            

            2.指定讀取保護路徑:

            #!bash
            sadmin read-protect –i c:\test\read
            

            3.查看讀取保護路徑:

            #!bash
            sadmin read-protect -l
            

            如圖 這里寫圖片描述

            嘗試讀取文件內容,失敗,如圖 這里寫圖片描述

            0x04 權限分配漏洞


            通過以上的測試可以發現:

            但是:

            McAfee Application Control會默認設定白名單進程用來為系統進行更新

            所以這些進程都具有操作文件的權限

            如果你仔細閱讀了上一篇文章并能加以思考

            那么其中的漏洞也顯而易見

            如果能夠利用白名單進程執行文件讀寫操作,那么自然能夠繞過防護

            0x05 漏洞利用


            利用思路:

            1.查看白名單進程列表

            執行

            #!bash
            sadmin updaters list
            

            如圖 這里寫圖片描述

            這里寫圖片描述

            這里寫圖片描述

            2.找到可被利用進程

            以下是我找到的比較通用并能被利用的進程:

            3.進程注入

            選取GoogleUpdate.exe

            使用《Powershell tricks::Code Execution & Process Injection》提到的Process Injection-Meterpreter.ps1

            可以在powershell的環境下粘貼代碼執行

            向GoogleUpdate.exe進程注入meterpreter

            如圖 這里寫圖片描述

            注:
            注入系統權限的進程需要管理員權限

            如圖 這里寫圖片描述

            彈回meterpreter

            發現沒有直接注入到GoogleUpdate.exe

            接著進程注入,如圖 這里寫圖片描述

            成功注入到GoogleUpdate.exe,理論上已經有了權限可以操作受保護的文件

            我們接著測試,如圖 這里寫圖片描述

            成功修改文件和刪除文件

            接著測試讀取文件,如圖 這里寫圖片描述

            成功讀取被保護的內容

            注: 通過進程注入獲得的權限可以用來執行腳本

            0x06 補充


            1.設置密碼

            McAfee Application Control可對操作設置密碼,增強其安全

            設置密碼:

            #!bash
            sadmin passwd 
            

            去掉密碼:

            #!bash
            sadmin passwd -d
            

            密碼文件保存在C:\Program Files\McAfee\Solidcore\passwd

            2.獲取密碼文件

            正常情況下C:\Program Files\McAfee\Solidcore\passwd無法被讀取、無法被復制,即使進程注入到白名單進程內也無法實現,如圖

            這里寫圖片描述

            但是我們依然有辦法:D

            這里可以借鑒導出域控ntds.dit文件的方法,使用NinjaCopy.ps1

            下載鏈接:
            https://github.com/3gstudent/NinjaCopy

            指定路徑為:

            #!bash
            Invoke-NinjaCopy -Path "C:\Program Files\McAfee\Solidcore\passwd" -LocalDestination "C:\test\trust\passwd"
            

            管理員權限運行NinjaCopy.ps1,成功復制passwd文件

            如圖 這里寫圖片描述

            3.解析密碼文件

            這里寫圖片描述 上圖為passwd的內容

            查看資料得知此處使用的是sha-512加密(mcafee-application-control-product-guide/Page68)

            如圖 這里寫圖片描述

            推斷cryptographic salt88daf0b4-790e-4eae-a926-b08788fbd1cb

            http://www.convertstring.com/Hash/SHA512驗證推斷

            輸入cryptographic salt和明文對比測試

            如圖 這里寫圖片描述

            passwd中的內容和我們自己加密的密文相同,判斷正確

            4.信任路徑

            McAfee Application Control為方便使用,可以指定信任路徑,在里面的所有操作均不會被攔截

            如果McAfee Application Control未設置密碼或者密碼被獲得,可以建立一個信任路徑,里面的操作均不會被攔截

            建立:

            #!bash
            sadmin trusted -i c:\test\trusted
            

            查看:

            #!bash
            sadmin trusted -l
            

            如圖程序成功執行 這里寫圖片描述

            5.日志

            日志默認被保存在C:\ProgramData\McAfee\Solidcore\Logs

            通過進程注入獲得的權限可以修改此文件

            6.防護建議

            0x07 小結


            “未知攻 焉知防”,即使做到以上幾點,我相信依然有繞過的方法:)

            本文由三好學生原創并首發于烏云drops,轉載請注明

            <span id="7ztzv"></span>
            <sub id="7ztzv"></sub>

            <span id="7ztzv"></span><form id="7ztzv"></form>

            <span id="7ztzv"></span>

                  <address id="7ztzv"></address>

                      亚洲欧美在线