Hooka - 多功能Shellcode加载器生成器

admin 2024年12月8日22:41:26评论18 views字数 3189阅读10分37秒阅读模式

介绍

Hooka 是一款多功能的 Shellcode 加载器生成器,能够生成具有多种功能的加载器。它继承了其他工具的优点,如 BokuLoader、Freeze 或 Shhhloader,并尝试实现更多的规避功能。Hooka 的开发语言是 Go 语言,这使得它在性能和可扩展性上具有优势。

Hooka - 多功能Shellcode加载器生成器

为什么选择 Golang?

Golang 是一门高效、简洁的编程语言,非常适合开发高性能的工具。而 Hooka 也正是基于 Golang 开发,使得它在各种执行环境下都能够高效运行。

主要功能

Hooka 提供了强大的功能,以下是其关键特性:

多种 Shellcode 注入技术

  • SuspendedProcess:通过挂起的进程注入 Shellcode。
  • ProcessHollowing:使用进程空洞技术进行注入。
  • NtCreateThreadEx:通过 NtCreateThreadEx 创建线程进行注入。
  • EtwpCreateEtwThread:通过 ETW 线程注入。
  • NtQueueApcThreadEx:利用 APC 线程队列进行注入。
  • No-RWX:无可执行权限区的技术。

支持多种 Shellcode 来源

  • 从原始文件、PE 文件、DLL 或 URL 获取 Shellcode。

输出格式支持 EXE 和 DLL

可以生成 EXE 或 DLL 格式的加载器,方便在不同的场景下使用。

加密和混淆 Shellcode

  • 支持多种加密算法:AES、3DES、RC4、XOR。
  • 默认启用 AMSI 和 ETW 补丁。
  • 使用 Shikata Ga Nai 混淆技术。

高级防御和规避功能

  • 反沙箱检测:多种沙箱检测技术。
  • ACG Guard 保护:防止 AV/EDR 修改已存在的可执行代码。
  • DLL 注入保护:阻止非 Microsoft 签名的 DLL 注入到创建的进程。
  • 用户模式挂钩解除:使用多种技术解除用户模式挂钩,包括经典解除、DLL 全面解除、Perun’s Fart 技术等。
  • 事件日志线程挂起:通过 Phant0m 技术挂起事件日志线程。

其他功能

  • 签名:可以用真实或伪造证书签名生成的加载器。
  • 字符串混淆:通过 Caesar 加密法混淆字符串。
  • 压缩代码:使用 Golang 编译和 UPX 压缩生成的加载器。
  • 二进制熵计算:计算生成加载器的熵。
  • 哈希计算:支持 MD5、SHA1 和 SHA256 校验和计算。

安装

1 克隆仓库:

  1. git clone https://github.com/D3Ext/Hooka

2 进入目录并构建:

  1. cdHooka
  2. make

3 在 build/ 目录中找到生成的二进制文件。

使用方法

帮助面板

  1. UsageofHooka:
  2. REQUIRED:
  3. -i,--input string payload to injectinraw format,as PE,as DLL or from a URL
  4. -o,--output string name of output file(i.e.loader.exe)
  5. -f,--format string format of the payload to generate(available:exe,dll)(default exe)
  6. EXECUTION:
  7. --proc string process to spawn(insuspended state)when neededforgiven execution technique(default notepad.exe)
  8. --exec string technique used to load shellcode(default"SuspendedProcess"):
  9. SuspendedProcess
  10. ProcessHollowing
  11. NtCreateThreadEx
  12. EtwpCreateEtwThread
  13. NtQueueApcThreadEx
  14. No-RWX
  15. AUXILIARY:
  16. -a,--arch string architecture of the loader to generate(default amd64)
  17. -c,--cert string certificate to sign generated loader with(i.e.cert.pfx)
  18. -d,--domain string domain used to sign loader(i.e.www.microsoft.com)
  19. ENCODING:
  20. --enc string encrypts shellcode using given algorithm(available:aes,3des,rc4,xor)(default none)
  21. --sgn useShikataGaNaito encode generated loader(it must be installed on path)
  22. --strings obfuscate strings usingCaesarcipher
  23. EVASION:
  24. --unhook string unhooking technique to use(available:full,peruns)
  25. --sandbox enable sandbox evasion
  26. --no-amsi don't patch AMSI
  27. --no-etw don't patch ETW
  28. --hashing use hashes to retrievefunctionpointers
  29. --acg enable ACGGuardto prevent AV/EDR from modifying existing executable code
  30. --blockdlls prevent non-MicrosoftsignedDLLsfrom injectinginchild processes
  31. --phantom suspendEventLogthreads usingPhant0mtechnique.Highprivileges needed,otherwise loader skips this step
  32. --sleep delay shellcode execution using a custom sleepfunction
  33. EXTRA:
  34. --calc use a calc.exe shellcode to test loader capabilities(don't provide input file)
  35. --compress compress generated loader using Golang compiler and UPX if it's installed
  36. -r,--rand use a randomsetof parameters to create a random loader(justfortesting purposes)
  37. -v,--verbose enable verbose to print extra information
  38. -h,--help print help panel

使用示例

生成一个简单的 EXE 加载器:

  1. hooka-i shellcode.bin-o loader.exe

生成一个 DLL 加载器:

  1. hooka-i shellcode.bin-o loader.dll-f dll

使用自定义配置:

  1. hooka -i shellcode.bin -o loader.exe --exec NtCreateThreadEx --unhook full --sleep 60 --acg

待办事项

  • 添加直接和间接的系统调用支持。
  • 添加 Chacha20 加密算法支持。
  • 更多 OPSEC 功能。
  • 整体改进。

官方 Golang 包提供了大部分上述功能,详情请参考 官方文档

参考资料

  • C-Sto/BananaPhone
  • timwhitez/Doge-Gabh
  • Ne0nd0g/go-shellcode
  • optiv/Freeze
  • f1zm0/acheron
  • Enelg52/OffensiveGo
  • trickster0/TartarusGate

项目地址

项目地址:https://github.com/D3Ext/Hooka

免责声明

使用本工具时,请自行承担风险!作者对工具的任何不当使用不承担责任。

原文始发于微信公众号(sec0nd安全):Hooka - 多功能Shellcode加载器生成器

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年12月8日22:41:26
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Hooka - 多功能Shellcode加载器生成器https://cn-sec.com/archives/3483064.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息