運行時壓縮

數據壓縮

無損壓縮

無損壓縮:經過壓縮的文件能100%恢復

有損壓縮

有損壓縮:經過壓縮的文件不能恢復原狀,壓縮多媒體文件時大部分使用有損壓縮

運行時壓縮器

運行時壓縮器:針對可執行文件而言,可執行文件內部含有解壓縮代碼,文件在運行瞬間於內存中解壓縮後執行

壓縮器

  • 使用目的:縮減PE文件的大小、隱藏PE文件內部代碼與資源
  • 種類
    • 目的純粹的壓縮器:UPX、ASPack等
    • 目的不純的壓縮器:UPack、PESpin、NSAnti等

保護器

  • 使用目的:防止破解、保護代碼與資源
  • 種類
    • 商用:ASProtect、Themida、SVKP等
    • 公用:UltraProtect、Morphine等

運行時壓縮測試

以notepad.exe和UPX爲例,對比如下:

  • PE頭大小不變
  • 節區名稱改變(".text"–>".UPX0",".data"–>".UPX1")
  • 第一個節區的RawDataSize=0,即第一節區在磁盤文件中是不存在的
  • EP位於第二節區(原來位於第一節區)
  • 資源節區基本沒變化

調試

notepad.exe的EP代碼

在這裏插入圖片描述

notepad_upx.exe的EP代碼

在這裏插入圖片描述

參考文獻

《逆向工會核心原理》

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章