Whitecat18/Rust-for-Malware-Development

GitHub: Whitecat18/Rust-for-Malware-Development

收集了大量高级红队攻击技术与恶意软件攻防技巧的Rust实现代码库,涵盖进程注入、系统调用绕过、加密混淆等多个领域。

Stars: 3484 | Forks: 237

# Rust 恶意软件开发
Rust for Malware Development Logo

Rust for Malware Development

This repository contains source codes of various techniques used by malware authors, red teamers, threat actors, state-sponsored hacking groups etc. These techniques are well-researched and implemented in Rust.


Language: Rust OS: Windows Maintained: Yes zread
## 目录 - [代码库](https://github.com/Whitecat18/Rust-for-Malware-Development) - [教程](#walkthrough) - [恶意软件技术](#malware-techniques) - [加密技术](#encryption-techniques) - [相关博客](#related-blogs) - [下载仓库](#download-as-zip-file) - [贡献](#contributing-to-rust-for-malware-development) - [致谢/参考](#Credits-/-References) ## 恶意软件技术 | 技术 | 描述 | |-----------|-------------| | [进程注入](Process-Injection) | 进程注入技术 | | [进程注入 2](Process) | 额外的进程注入代码片段。 | | [进程幻影](GhostingProcess) | 进程幻影技术 | | [进程催眠](Process/hypnosis.rs) | 进程催眠技术 | | [进程 Herpaderping](Process/Herpaderping) | 进程 Herpaderping | | [父进程欺骗](Persistence/PPid_spoofing/) | 创建看起来像是从其他父进程启动的进程 | | [等待线程劫持](WaitingThreadHijacking) | 通过覆盖等待线程的返回地址进行注入 | | [NtCreateUserProcess](NtCreateUserProcess) | 使用 NtCreateUserProcess API 启动进程。 | | [Dirty Vanity](Dirty_Vanity/) | 通过进程分叉执行 Shellcode 来绑过 EDR | | [自定义 Shellcode](https://github.com/Whitecat18/Rust-for-Malware-Development/tree/main/Custom_Shellcode) | 用于测试的自定义 Shellcode。 | | [Tartarus Gate](syscalls/TartarusGate) | 通过解钩函数绑过 EDR | | [Recycle Gate](syscalls/RecycledGate) | 结合 Hells、Halos、Tartarus Gate | | [命名管道](Named_Pipe) | Windows 上的进程间通信使用命名管道。 | | [API 钩子](Api_Hooking) | 使用跳板实现 API 钩子。 | | [PE 分析器](https://github.com/Whitecat18/PE-Analyzer.rs) | 通过 CLI 提取 PE 信息。 | | [PEB 偏移查找器](PEB_Offset_finder) | 查找用于隐形操作的 PEB 偏移 | | [句柄阻止](BlockHandle) | 使用 SDDL PoC 阻止句柄。 | | [动态导出表 PEB](base_addr_locator) | 通过搜索内存调用 Windows 函数。 | | [动态解析器](https://github.com/Whitecat18/Rust-for-Malware-Development/tree/main/Dynamic_Resolver) | 动态解析和调用 WinAPI 函数 | | [API 锤击](api_hammering) | API 锤击技术。 | | [早期级联注入](Early%20Cascade%20Injection) | Rust 中的早期级联注入 PoC。 | | [加密方法](Encryption%20Methods) | 加密和执行有效载荷的方法。 | | [枚举](Enumeration) | 用于提高效率的枚举模块。 | | [恶意软件样本](Malware-Samples) | 基于真实活动的恶意软件。 | | [元数据修改](Metadata_Modification) | 在二进制文件中提取和嵌入自定义元数据。 | | [键盘记录器](https://github.com/Whitecat18/Rust-for-Malware-Development/tree/main/Keyloggers) | Rust 中的自定义键盘记录器实现。 | | [DLL 注入](dll_injection) | Rust 中的 DLL 注入。 | | [DLL 注入器](DLL_Injector) | Rust 中的多功能 DLL 注入器。 | | [代码片段](Malware_Tips) | 用于恶意软件操作的代码片段。 | | [NTAPI 实现](NtApi) | NTAPI 使用代码片段。 | | [早期异常处理](KiUserExceptionDispatcherStepOver) | 用于绑过 EDR 的自定义异常处理程序 | | [提取 WiFi 密码](Recon/extract_wifi) | 提取 Windows 上存储的 WiFi 密码。 | | [反向 Shell](Reverse%20Shell) | Rust 中的客户端-服务器反向 Shell。 | | [线程劫持](Threads) | 线程劫持代码片段。 | | [自删除](Self-Deletion-Techniques) | 自删除二进制文件的技术。 | | [位置无关系列](position%20independent) | Rust 中的位置无关代码。 | | [Shellcode 执行](shellcode_exec) | 使用 WinAPI 执行 Shellcode。 | | [睡眠混淆](Sleep_Obfuscations/Ekko) | 睡眠混淆实现。 | | [直接系统调用](syscalls/direct_syscalls) | 使用 STUB 方法实现直接系统调用。 | | [间接系统调用](syscalls/indirect_syscalls) | 使用 STUB 方法实现间接系统调用。 | | [并行系统调用](syscalls/parallel_syscalls/) | 并行系统调用实现。 | | [BSOD](BSOD) | 触发蓝屏死机。 | | [持久化](Persistence) | 持久化技术。 | | [UAC 绕过 CMSTP](uac-bypass-cmstp) | 通过提升 CMSTP.exe 绕过 UAC。 | | [恶意软件 DSA](shellcode_exec/DSA_Exec) | 使用数据结构和算法的恶意软件。 | | [Shellcode 混淆](obfuscation) | 使用 IPv4、IPv6、MAC、UUID 格式混淆 Shellcode。 | | [EDR 检查器](EDRChecker) | 检测 EDR 工具、AV 软件和安全应用程序。 | | [定时器](timer) | 基于时间的执行控制机制。 | | [键盘记录器下载器](keylog_dropper) | 在后台下载并执行键盘记录器。 | | [Rand_Fill](Malware_Tips/rand_fill) | 删除文件并用随机字节填充磁盘。 | | [Encryfer-X](Malware-Samples/Encryfer/Encryfer-X) | 结合多种 PoC 技术的勒索软件。 | | [GitHub 窃取器](stealer/GitHub_API) | 使用 GitHub API 窃取凭据。 | | [Telegram 操作器](stealer/Telegram%20Operator/) | Telegram 操作器用于运行 EXE 和执行命令 | | [AMSI 绕过技术](AMSI%20BYPASS) | AMSI 绕过技术。 | | [手动资源数据获取](ManualRsrcDataFetching) | 替换 FindResource 和 LoadResource 以及 LockResource 和 SizeofResource Windows API 的函数。 | | [反虚拟机 CPU 风扇检测](Evasion/CPU_FAN_DETECTION) | 检测系统是否有 CPU 风扇。仅在 PC 上有效。 | | [代理 DLL 加载](https://github.com/Whitecat18/Rust-for-Malware-Development/tree/main/Proxy-DLL-Loads) | 代理 DLL 加载的 PoC 以隐藏 ETWTI 堆栈跟踪 | | [反调试](./AntiDebugging/) | 反调试方法 | | [ETW](./Etw/) | ETW 方法 | | [调试库](./Debug/) | 简单的调试代码,仅在调试构建时打印语句 | ## 加密技术 | 技术 | 描述 | |-----------|-------------| | [AES 加密](Encryption%20Methods/Aes_Encryption) | 使用 AES 加密/解密 Shellcode。 | | [RC4 加密](Encryption%20Methods/rc4_shellcode_encrypt.rs) | 使用 RC4 加密/解密 Shellcode。 | | [XOR 加密](Encryption%20Methods/xor_encrypt.rs) | 使用 XOR 加密/解密 Shellcode。 | | [Khufu 加密](Encryption%20Methods/Khufu_encryption) | 使用 Khufu 算法加密/解密。 | | [ECC 加密](Encryption%20Methods/ecc_shellcode_exec) | 使用 ECC 加密/解密 Shellcode。 | | [Camellia 密码](Encryption%20Methods/camellia_cipher) | 使用 Camellia 密码加密。 | | [NullxFigure](Encryption%20Methods/nullxfigure) | 将空字节解析到 Shellcode 中。 | | [A5/1 密码](Encryption%20Methods) | 使用修改的 A5/1 密码加密 Shellcode。 | | [Madryga 算法](Encryption%20Methods/Madryga_encryption) | 使用 Madryga 算法加密/解密 Shellcode。 | | [Lucifer 算法](Encryption%20Methods/lucifer_algorithm.rs) | 使用 Lucifer 算法加密/解密 Shellcode。 | | [DFC 算法](Encryption%20Methods/dfc_algorithm.rs) | 使用 DFC 算法加密/执行有效载荷。 | | [有效载荷混排](Encryption%20Methods/payload_shuffling) | 有效载荷混排技术。 | | [SystemFunction032/033](Encryption%20Methods/SystemFunction032_033) |未文档化的 WinAPI 加密/解密 Shellcode。 | ## 自定义 Crates | 名称 | 描述 | |-----------|-------------| | [静态加密](https://github.com/Whitecat18/static_encrypt) | 在编译时使用不同算法加密字符串字面量 | | [动态 API 解析](https://github.com/Whitecat18/apiparser) | 解析 PEB 以在运行时定位 ntdll.dll 导出,并使用哈希解析 API。 | | [LazyDLLSideload](https://github.com/Whitecat18/LazyDLLSideload.git) | 生成 DLL 代理/侧加载项目。 | | [Dyncvoke](https://github.com/Whitecat18/Dyncvoke.git) | 动态 Windows API 调用。 | ## 教程 - **Rust 新手?** 请遵循[编译指南](deps.md)。 - **编译源代码**:请参阅 [README](deps.md)。 - **递归清理 PoC**:请使用[命令](CLEAN.md)。 - **使用 Docker 交叉编译**:请参阅 [README](docker.md)。 ## 相关博客 - [恶意软件开发基础第 1 部分](https://medium.com/system-weakness/malware-development-essentials-part-1-5f4626652ed9) - [使用 Rust 进行 DLL 注入](dll_injection) - [Rust 在网络安全和红队中的应用](https://infosecwriteups.com/rust-for-cyber-security-and-red-teaming-275595d3fdec) - [Windows 高级 Rust 策略](https://x.com/5mukx/status/1927796297123221904) ## 下载为 .Zip 文件 下载仓库:[链接](https://download.5mukx.site/#/home?url=https://github.com/Whitecat18/Rust-for-Malware-Development) ## 为 Rust 恶意软件开发贡献 我们欢迎为 [Rust 恶意软件开发仓库](https://github.com/Whitecat18/Rust-for-Malware-Development) 做出贡献。请按照以下步骤贡献: 1. Fork 仓库。 2. 创建新分支:`git checkout -b `。 3. 进行更改并提交:`git commit -m ''`。 4. 将更改推送到您的分支:`git push origin `。 5. 提交 pull request。 如果您对贡献有任何疑问,请参阅 [GitHub 文档](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests)。 ## 致谢 / 参考 我要向杰出项目和精彩技术的创作者们表达衷心的感谢,他们为我提供了创建这个非凡仓库所需的工具和灵感。 * [MemN0ps](https://github.com/MemN0ps) * [hasherezade](https://github.com/hasherezade) * [vxunderground](https://github.com/vxunderground) * [NUL0x4C](https://github.com/NUL0x4C) * [mrd0x](https://github.com/mrd0x) * [Cracked5pider](https://github.com/Cracked5pider) * [trickster0](https://github.com/trickster0) * [João Victor](https://github.com/joaoviictorti) * [Maldev-Academy](https://github.com/Maldev-Academy/) 每个 PoC 都包含一个 [致谢/资源](#) 部分,以感谢和尊重原始创作者及其对社区的贡献。 ### 其他必备资源: * https://ired.team * https://github.com/microsoft/windows-rs * https://github.com/retep998/winapi-rs * https://github.com/MSxDOS/ntapi * https://github.com/janoglezcampos/rust_syscalls * https://github.com/rust-osdev/uefi-rs * https://discord.gg/rust-lang-community * https://github.com/anvie/litcrypt.rs * https://balwurk.com/shellcode-evasion-using-webassembly-and-rust ## 许可证 本项目根据 [**MIT 许可证**](/LICENSE) 授权。
标签:APT, Conpot, DNS 反向解析, DNS 解析, HTTP工具, PE 加载器, Rust, Windows安全, 云资产清单, 加密勒索, 勒索软件, 协议分析, 可视化界面, 后门, 命令控制, 威胁情报, 开发者工具, 开源恶意软件, 恶意代码, 恶意软件, 搜索语句(dork), 攻击技术, 数据包嗅探, 数据展示, 数据窃取, 数据采集, 无线安全, 权限提升, 横向移动, 端点可见性, 系统入侵, 红队, 编程规范, 网络安全, 网络安全审计, 网络流量审计, 逆向工程, 通知系统, 隐私保护, 隐蔽通信, 高级持续性威胁