24-Malware 学院工具 - HellShe
大约 2 分钟安全开发
简介
学习到这里,大家应该已经牢牢掌握了使用加密(XOR/RC4/AES)和混淆(IPv4/IPv6/MAC/UUID)技术进行静态规避的诀窍。在恶意软件中实现一种或多种前面讨论过的规避技术可能会非常耗时。一个解决方案是构建工具并将其应用于有效载荷以执行加密或混淆方法。
本模块将演示由 Maldev Academy 团队制作的执行此类任务的工具。
工具特性
该工具具有以下特性:
- 支持 IPv4/IPv6/MAC/UUID 混淆
- 支持 XOR/RC4/AES 加密
- 支持填充 Payload
- 提供选定加密/混淆技术的解密函数
- 每次运行都会随机生成加密密钥
用法
若要使用 HellShell,下载源代码并手动编译。确保已将编译选项设置为“发布”。
#####
# HellShell - 由 MalDevAcademy @NUL0x4C | @mrd0x 设计 #
# HellShell - 由恶意软件开发学院 @NUL0x4C | @mrd0x 设计 #
#####
[!] 用法:HellShell.exe <输入有效负载文件名> <编码/混淆 *选项*>
[i] 选项可以是:
1.>>> "mac" ::: 将 Shellcode 作为 MAC 地址数组输出 [FC-48-83-E4-F0-E8]
2.>>> "ipv4" ::: 将 Shellcode 作为 IPv4 地址数组输出 [252.72.131.228]
3.>>> "ipv6" ::: 将 Shellcode 作为 IPv6 地址数组输出 [FC48:83E4:F0E8:C000:0000:4151:4150:5251]
4.>>> "uuid" ::: 将 Shellcode 作为 UUid 字符串数组输出 [FC4883E4-F0E8-C000-0000-415141505251]
5.>>> "aes" ::: 将 Shellcode 作为使用随机密钥和 IV 的 AES 加密 Shellcode 数组输出
6.>>> "rc4" ::: 将 Shellcode 作为使用随机密钥的 RC4 加密 Shellcode 数组输出
### 示例命令
* `HellShell.exe calc.bin aes` - 生成一个 AES 加密的有效负载并将其打印到控制台
* `HellShell.exe calc.bin aes > AesPayload.c` - 生成一个 AES 加密的有效负载并将其输出到 `AesPayload.c`
* `HellShell.exe calc.bin ipv6` - 生成一个 IPv6 混淆的有效负载并将其打印到控制台
### 演示
下图显示了 HellShell 使用 RC4 加密算法对有效负载进行加密,并输出到文件的过程。
![图片](https://maldevacademy.s3.amazonaws.com/images/Basic/hellshell.png)