<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/14568

            0x00 借問酒家


            有什么東西想拿卻拿不出來?不妨開開腦洞。

            緣起是2014年底的時候看到金山做的在線惡意代碼分析系統“Fire eye”(https://fireeye.ijinshan.com/)。感覺很新鮮,丟了自己攢的幾個樣本丟了上去,分析的結果還算可以。從分析報告來看,它也是一類沙箱檢測工具,把樣本丟到虛擬機里跑,再在虛擬機內外布控,監測樣本的各種行為,最后生成分析報告并給出判斷是否惡意樣本,分析報告里還包含樣本運行時的截圖。

            0x01 柳暗


            于是我開始有點好奇,這個沙箱大概是個什么樣的,于是自己寫了一些小的檢測程序丟進去,把環境變量、系統信息、網絡配置、進程列表、服務和驅動什么的讀出來顯示在窗體上,這樣從分析報告里的樣本截圖就能讀到這些信息了。

            嘛,這里先說一下,本人并不會挖漏洞和逆向,說來慚愧,大學時候的匯編都是補考才過的。就是個小小的.net碼農而已。

            然后我在系統環境變量里發現一個別的地方沒有的玩意:%FEKERNEL%,指向c:\mon\文件夾,想來應該是“FIRE EYE KERNEL”,即包含沙箱內部監控程序的核心文件夾。

            有了這個發現自然不會放過,另外專門編寫了程序去枚舉和讀取FEKERNEL里的東西,然而發現只要碰了那個文件夾,樣本分析報告就會被隱去大部分內容,和FEKERNEL文件夾直接和間接(比如復制出來之后再讀取復制的文件)相關的內容都被刪掉了,想來應該是做了某種自我保護。只有讀取文件夾大小的操作沒被攔截。

            0x02 花明


            不過既然有了目標,路就好找了。試了幾次找到了繞過保護的辦法,成功讀取到了FEKERNEL里的文件并把詳細信息。下一步當然就是如何拿到里面的東西咯。

            里面是大概幾十MB的二進制文件,有EXE有DLL有SYS甚至還有PDB,估計是開發人員方便調試直接把符號文件也一起扔里面了。這么多東西怎么拿出來呢?最初的想法是通過網絡傳出來,然而沙箱的網絡和互聯網是不通的,對用戶的唯一輸出僅限樣本分析報告。

            然后我發現早幾年前有人通過編寫樣本在注冊表里寫入HTML代碼內容的鍵值在分析報告頁面成功實施了XSS,覺得這個思路是可行的。然而幾十MB的東西即便壓縮成十幾MB再按BASE64編碼,寫到一個監控程序會監控的地方,仍然沒法全部拿出來,因為太多了。就算畫在窗體上也…………

            ……慢著,畫在窗體上?

            腦袋靈光一閃,這辦法可以啊!我先想到的是把BASE64串按能分辨的最小字號寫在窗體上,然后進一步想到干脆利用窗體上的像素,一個像素表示一個字節,然后直接想到干脆一個像素用RGB分量存儲三個字節,這樣可輸出的數據量就成幾何級數上升。稍微計算了一下,按最高密度的數據傳輸方案,一個窗體能被截圖下來的最大面積足夠“畫下”壓縮過的完整目標數據。

            思路有了,東西直接就搞出來了。由于FE只能上傳單個可執行文件樣本,于是把所有用到的東西打包成一個自解壓RAR,并附帶解壓后執行腳本,先繞過保護讀取到FEKERNEL里的所有內容并復制到另外的位置,然后用自帶的WINRAR.EXE通過命令行將其壓縮,最后把壓縮包以二進制打開,把內容“畫”在自己窗體上。

            這樣我就順利拿到了FEKERNEL里的所有東西。當然這還得感謝FE在處理樣本截圖的時候沒有做任何有損壓縮,雖然是JPEG格式。

            這個漏洞我已在去年提交給烏云:火眼惡意代碼分析系統自保機制繞過導致二進制泄露

            0x03 又一村


            總結:如果有什么東西你知道在哪,但沒法直接拿到,不妨冷靜分析一下:

            1. 你能控制的輸入因素有哪些;
            2. 阻攔你拿到數據的限制因素有什么,有沒有繞過的辦法;
            3. 你能拿到的輸出數據有哪些,其中哪些可以通過輸入數據直接或間接控制,哪些輸出數據包含的信息量最大。

            綜合考慮這三方面因素,并仔細分析,就不難達成目標了。

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

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

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

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

                      亚洲欧美在线