【51CTO.com 專家特稿】隨着惡意代碼的發展愈來愈普遍,以及其強大的破壞性和更多樣的傳播方式,給人 們帶來更多的危害。葉子在前面的文章中已經跟你們談過惡意代碼的基本概念以及對其的研究分析流程。在本篇文章中葉子將給你們介紹一下惡意代碼的傳播方式之 一的捆綁技術,以及常見的Winrar自解壓捆綁技術的實現過程。
捆綁技術是將兩個或兩個以上的文件捆綁在一塊兒成爲一個可執行文件,在執行這個文件的時候,捆綁在裏面的文件都被執行。須要捆綁在一塊兒的文件,能夠是 相同的文件格式,也能夠是不一樣的文件格式。捆綁技術被***們普遍應用在互聯網的惡意代碼傳播過程。經過發送一些用戶感興趣的文件,其中包含惡意軟件的程 序。當用戶看到感興趣的文件,點擊後則感染相應的惡意代碼。***們能夠利用惡意代碼來完成一些黑色經濟的收入。
目前網絡上流行的捆綁技術和方式主要有下面幾種狀況:
◆多文件捆綁。
捆綁技術中最簡單的捆綁方式,也是最流行的捆綁技術實現方式之一。文件捆綁也就是將A.exe文件(正常文件)和B.exe文件(惡意代碼)捆綁成 C.exe文件。當用戶點擊C.exe文件時,用戶看到的是A.exe文件的執行結果,而B.exe文件則在後臺悄悄執行。一個Win32下正常的文件中 包含以文件MZ開頭,DOS文件頭後面的PE頭以PE\0\0開頭。檢查是否被捆綁多文件,則能夠經過UltraEdit類的工具打開目標文件搜索關鍵字 MZ或者PE。若是找到兩個或者兩個以上,則代表此文件必定把捆綁了其它的文件。葉子將在後面的實例中介紹如何實現文件捆綁的操做過程。
◆資源融合捆綁。
瞭解Windows文件中PE結構的人都知道資源是EXE中的一個特殊的區段。這段區域能夠用來包含EXE調用的資源信息等相關內容。而咱們能夠利 用BeginUpdateResource 、UpdateResource、EndUpdateResource的API函數實現對資源內容的更新替換。編程人員只需先寫一個包裹捆綁文件的頭文 件,文件中只需一段釋放資源的代碼。而捆綁器用的時候先將頭文件釋放出來,而後調用以上的三個API函數將待捆綁的文件更新到這個頭文件中即完成了捆綁技 術的實現。
◆漏洞利用捆綁
目前比較流行的捆綁技術之一,利用word、excel、flash等一些應用產品中的安全漏洞,經過對漏洞的利用,而後調用惡意代碼進行執行。例 如當一些研究人員發現word產品的安全漏洞後,***編寫漏洞利用程序,並把惡意代碼植入word的宿主文件中。當用戶打開惡意的word文件時, word漏洞中的程序經過Shellcode調用惡意代碼,並執行之。
除了這幾種捆綁技術以外,固然還有更多的其它捆綁技術的實現方式。不過葉子的時間精力有限,沒法作更深刻的研究。若是有同道之人作了更深刻的研究,但願也能發佈出來進行共同進步。
接下來,葉子將經過一個實例進行講解Winrar的捆綁技術實現操做過程。
工具環境:
WinRAR:解壓縮工具。
Quick Batch File Compiler:快速批量文件編譯程序
File1.exe(hfs2.exe):正常文件
File2.exe(RCBF_03031406.exe):***
使用WinRAR程序和QBFC程序實現***捆綁過程:
◆運行Quick Batch File Compiler,輸入hfs2.exe,回車,再輸入RCBF_03031406.exe,如圖所示:
◆點擊「Project」->「Options」,設置「Ghost Application」
◆點擊「Build」,保存文件爲「binder.exe」
◆建立WinRAR自解壓文件,包含「binder.exe」、「hfs2.exe」、「RCBF_03031406.exe」文件。選擇這三個文件,點擊「add to archive」。
◆設置壓縮文件,壓縮文件名稱爲hfs.exe,選中「Create SFX archive」(自解壓選項)。
◆選擇「Advanced」,設置「SFX options」、
 |
圖1 |
◆設置「Setup Program」中的「Run after extraction」,名稱爲Quick Batch File Compiler工具生成的文件「Binder.exe」。
◆設置「Modes」中的「Silent mode」爲「Hide all」,「Overwrite mode」爲「Overwrite all files」。
◆最後「肯定」,捆綁生成的自解壓文件爲hfs.exe文件。點擊打開自解壓的hfs.exe文件時,程序在執行完hfs2.exe文件後,執行***RCBF_03031406.exe。若是***原來是免殺的,則能達到hfs.exe文件也爲免殺功能。
葉子簡單介紹了文件捆綁技術的實現方式。至於對文件捆綁的檢測和防範手段,葉子將在後面的文章中進一步的說明分析。