shadow-rs 是一个用 Rust 编写的 Windows 内核 rootkit,展示了利用 Rust 的安全性和性能特性进行内核操作的高级技术。本项目仅用于教育和研究目的。
[!IMPORTANT]
该项目正在开发中。
Protected Processes (PP) 和 Protected Process Light (PPL)。DSE),以允许加载未签名的驱动程序。EtwTi)。ZwCreateThreadEx 将 shellcode 或 DLL 注入进程。APC)注入,在可告警线程中执行 shellcode 或 DLL。Thread Hijacking 在进程中执行 shellcode。导航到 driver 目录并构建内核驱动程序:
cargo make default --release
[!IMPORTANT]
注意:首次构建必须以管理员身份执行。后续构建不需要提升权限。
要启用对 kdmapper 等工具的映射支持,请使用以下命令编译:
cargo make default --release --features mapper
导航到 client 目录并构建用户模式客户端:
cargo build --release
为了与映射驱动兼容:
cargo build --release --features mapper
bcdedit /set testsigning on
你可以使用服务控制管理器或 OSR Driver Loader 来加载驱动程序。
使用 Windbg 附加到内核并监控驱动程序活动。
bcdedit /debug on
bcdedit /dbgsettings net hostip:<IP> port:<PORT>
要为 shadow-rs 贡献代码,请遵循以下步骤:
git checkout -b <branch_name>。git commit -m '<commit_message>'。git push origin <project_name> / <local>。或者,查阅GitHub 文档了解如何创建拉取请求。
本项目仅用于教育和研究目的。严禁并反对恶意使用该软件。对于因不当使用本软件而造成的任何损害,我不承担任何责任。
我想对这些启发我创建 shadow-rs 并为其贡献了一些功能的项目表示感谢:
这些资料和研究对于加深我对 Windows 内核开发的理解非常宝贵:
本项目基于 MIT 许可证 授权。有关详细信息,请参阅 LICENSE 文件。