Hades:一款整合了多种规避技术的Go Shellcode加载器
新闻资讯
2023-07-02 09:04
105
0
关于Hades
Hades是一款整合了多种规避技术的Go Shellcode加载器,当前版本的Hades只是一个概念验证程序,旨在帮助广大研究人员尝试绕过流行AV/EDR的安全防御机制,并以此来验证安全防护产品的能力。
工具要求
由于该工具基于Go语言开发,因此我们首先需要在本地设备上安装并配置好最新版本的Go环境。接下来,广大研究人员可以使用下列命令将该项目源码克隆至本地,并使用make命令在Linux操作系统上完成项目代码构建:git clone https://github.com/f1zm0/hades && cd hades
make
工具使用
接下来,我们就可以将生成的可执行文件拷贝到x64 Windows主机中,并使用下列命令来运行Hades:PS > .\hades.exe -h
'||' '||' | '||''|. '||''''| .|'''.|
|| || ||| || || || . ||.. '
||''''|| | || || || ||''| ''|||.
|| || .''''|. || || || . '||
.||. .||. .|. .||. .||...|' .||.....| |'....|'
version: dev [11/01/23] :: @f1zm0
Usage:
hades -f <filepath> [-t selfthread|remotethread|queueuserapc]
Options:
-f, --file <str> Shellcode文件路径(默认.bin)
-t, --technique <str> 要使用的注入技术,包括[selfthread, remotethread, queueuserapc]
工具使用样例
使用queueuserapc技术注入Shellcode并执行calc.exe:.\hades.exe -f calc.bin -t queueuserapc
工具使用演示
使用系统调用RAV排序绕过用户模式钩子(NtQueueApcThread挂钩frida-trace和自定义Handler):使用间接系统调用实现指令回调绕过(注入的DLL来源于jackullrich的syscal-detect):
杂项-直接系统调用版本
在最新发布版本中,直接系统调用功能被替换成了acheron提供的间接系统调用。出于某些原因,你可能想要使用之前的加载器版本(使用直接系统调用),那么你需要显式地将direct_syscalls标签传递给编译器,编译器将决定在构建过程中需要包含或排除哪些文件:GOOS=windows GOARCH=amd64 go build -ldflags "-s -w" -tags='direct_syscalls' -o dist/hades_directsys.exe cmd/hades/main.go
许可证协议
本项目的开发与发布遵循GPL-3.0开源许可证协议。
项目地址
Hades:https://github.com/f1zm0/hades
https://github.com/f1zm0/acheronhttps://pkg.go.dev/unsafehttps://github.com/f1zm0/hades/blob/main/scripts/NtQueueApcThread.jshttps://docs.microsoft.com/enus/windows/win32/api/processthreadsapi/nf-processthreadsapi-queueuserapc
文章引用微信公众号"FreeBuf",如有侵权,请联系管理员删除!