萬盛學電腦網

 萬盛學電腦網 >> Linux教程 >> Linux如何手動分析病毒樣本

Linux如何手動分析病毒樣本

  歡迎大家來到學習啦,本文教你Linux六大誤區,歡迎大家閱讀。

  原理:利用md5值的不同進行文件的對比。

  操作背景:

  XP安裝光盤;

  病毒樣本;

  U盤;

  Ubuntu 7.10 LiveCD

  所需的幾個對比md5和轉化二進制文件格式的程序

  操作過程:

  1. 全盤格式化,同時安裝Windows(也可采用ghost回去,但是一定注意其他磁盤可能的病毒感染)

  2. 在剛裝好的Windows下,導出注冊表。將導出文件放入C盤根目錄下。這裡我命名為1.reg

  3. 進入Ubuntu系統,注意,進入前f2選擇簡體中文模式

  4. 掛載C盤:

  mkdir /mnt/hdd1 (生產系統C盤掛載點)

  mount -t ntfs -o iocharset=cp936 /dev/hdd1 /mnt/hdd1 (將系統C盤掛載到/mnt/hdd1下,注意文件格式和設備號視具體情況而定)

  5. 掛載U盤:

  mkdir /mnt/usb (生成U盤掛載點)

  mount -t vfat /dev/sda1 /mnt/usb (將U盤掛載到/mnt/usb下,同樣注意文件格式和設備號)

  6. 將導出的注冊表信息放入U盤:

  假設U盤上已經有test目錄,同時,在test目錄下有parse.sh,parseWinReg,ShowList 三個程序

  cp /mnt/hdd1/1.reg /mnt/usb/test (將導出注冊表拷貝至/mnt/usb/test目錄下)

  cd /mnt/usb/test (進入U盤test 目錄)

  ./parseWinReg 1.reg origreg (將導出注冊表進行格式轉換,生成origreg)

  7. 計算C盤所有文件md5值:

  rm /mnt/hdd1/pagefile.sys (這個文件太大影響計算速度,刪除)

  /mnt/usb/test/parse.sh /mnt/hdd1/ > /mnt/usb/origfile (計算磁盤文件md5值,並將結果導出至U盤test目錄下origfile)

  8. 重新進入Windows,同時,激發病毒文件

  注意:先將病毒文件放入磁盤,拔掉U盤,拔掉網線,再激發!

  9. 重復3,4,5,6,7步驟

  mkdir /mnt/hdd1

  mount -t ntfs -o iocharset=cp936 /dev/hdd1 /mnt/hdd1

  mkdir /mnt/usb

  mount -t vfat /dev/sda1 /mnt/usb

  cp /mnt/hdd1/2.reg /mnt/usb/test (這裡假設導出的注冊表是2.reg)

  cd /mnt/usb/test

  ./parseWinReg 2.reg newreg

  rm /mnt/hdd1/pagefile.sys

  /mnt/usb/test/parse.sh /mnt/hdd1/ > /mnt/usb/newfile

  10. 至此,我們得到了原始的系統信息:origreg, origfile,中病毒之後的信息:newreg, newfile

  11. 比較文件不同之處:diff -Nur origfile newfile > filediff

  12. 比較注冊表不同之處:diff -Nur origreg newreg > regdiff

  13. 分析filediff 和 regdiff,得到結論

  分析小技巧:

  一般情況下前面出現+的就是病毒釋放的,-就是有過改動的(感染的),如果是md5值是成雙成對出現(一個+和一個-),那那一行一般不是,如果前面沒有任何標記,那說明也不是。咱們把沒用的刪除,只留下有單個+或者單個-的,最好看文件路徑,即得到了病毒的產生文件或者是感染文件。

copyright © 萬盛學電腦網 all rights reserved