曲速未來 消息:一個例子的差異惡意軟體分析
1 人贊了文章
區塊鏈安全諮詢公司 曲速未來 表示:分析惡意軟體的方法有很多種。在這篇文章中,我們舉例說明了一種典型的分析方法:將未知樣本與已知樣本進行比較,以確定未知樣本是否為惡意樣本。
據悉,在一次約會中,遇到了一個觸發反病毒的PDF文檔。引起了興趣的是,該文件具有與被認為良性的另一文件相同的標題和幾乎相同的大小。那防毒軟體找到了被攻佔的文件嗎?下面將揭曉。
通常,在執行PDF文檔分析時,首先是PDFiD:最起碼知道了可以在文檔中找到什麼。下面在這裡採取同樣的開端,但並不打算詳細研究PDFiD製作的報告。
首先,下面是比較已知和未知樣本的報告:
?
?
使用diffdump.py比較兩個報告可以知道這些報告是相同的(文件名除外,它包含在報告中)。然後可以更進一步,使用選項-a為PDF中找到的所有名稱生成報告,而不是僅顯示可能表示惡意行為的名稱。
?
?
?
但有相同的結果:報告是相同的。從辭彙PDF語言的角度來看,這些文檔是相同的。但知道它們並不是,它們有一個不同的加密哈希,觸發了反病毒,而另一個沒有。
是時候在pdf-parser的幫助下深入研究這些文檔的語法和語義。pdf-parser有一個鮮為人知的選項(-a)來計算PDF文檔中找到的元素和對象的統計信息:
?
?
比較了2個樣本的統計數據,發現它們是相同的:
?
這是重要的信息:說明樣本和原始文檔具有相同數量和類型的元素和對象,強烈表明它們是相關的。
為了嘗試更多地了解這些差異,就讓pdf-parser為這兩個文檔生成完整的報告:
?
?
除了報告開頭的一些字元之外,報告幾乎完全相同。這是關於這些文件差異的第一個重要線索。而且當比較這些文件開頭的注釋時,更令人注意到它們是相同的,除了行尾字元:
表示樣本,
表示原始字元:
?
?
在Windows上,行尾定義為2個字元:回車+換行符(0x0D 0x0A或
)。在Linux上,它是一個單一字元:換行符。
也許因為示例是在Linux機器上以某種方式處理的原始文檔的版本,從而導致行尾字元的更改。定義和測試假設的時間:文檔是相同的,除了行尾字元。
使用流編輯器sed用
替換原始文檔中的所有
實例,然後將樣本與已轉換的原始文件進行比較:
?
文件完全相同!
結論
區塊鏈安全諮詢公司 曲速未來 表示通過此分析得出:明顯顯示兩個文檔是相同的,除了行尾字元。相信這些原來的並不是惡意的,因為可以很簡單地將原始版本轉換為具有eol轉換的樣本,所以能得出結論,樣本不能是惡意的。通常,差異分析不會那麼明確,但它仍然是逆向工程師的重要方法。
本文內容由 曲速未來 (http://WarpFuture.com) 安全諮詢公司編譯,轉載請註明。 曲速未來提供包括主鏈安全、交易所安全、交易所錢包安全、DAPP開發安全、智能合約開發安全等相關區塊鏈安全諮詢服務。
推薦閱讀:
※安卓手機惡意軟體卸載教程
※惡意軟體中的逃避技術,十八般武藝樣樣齊全
※使用雲伺服器該怎麼防範惡意軟體的攻擊?
※話題 | 中國警方逮捕盜取加密貨幣惡意軟體開發人員