Ruy-Lopez 项目常见问题解决方案
Ruy-Lopez 项目地址: https://gitcode.com/gh_mirrors/ru/Ruy-Lopez
1. 项目基础介绍和主要编程语言
Ruy-Lopez 是一个开源项目,它提供了一种新的方法来完全阻止 DLL 文件被加载到新创建的进程中。该项目的主要目的是为了阻止防病毒(AV)和端点检测与响应(EDR)供应商的 DLL 文件加载,从而绕过基于用户空间的钩子检测。项目主要包括用于挂钩 NtCreateSection
函数的 PIC-Code,以及用于在挂起模式下创建新的 PowerShell 进程并注入 shellcode 的代码。
该项目主要使用以下编程语言:
- Nim:用于编写用于创建新进程和注入 shellcode 的代码。
- C:用于编写 PIC-Code 和挂钩函数。
2. 新手在使用这个项目时需要特别注意的3个问题和解决步骤
问题一:如何在项目中编译和运行代码
问题描述: 新手可能不清楚如何编译和运行项目中的代码。
解决步骤:
- 确保安装了 Nim 编译器和 GCC(推荐使用 mingw-w64 版本 10.2.0)。
- 在项目根目录下运行
nim c -o:BlockDll BlockDll.nim
命令来编译 Nim 代码。 - 使用
make
命令编译 PIC-Code。 - 运行编译后的可执行文件,例如
BlockDll.exe
。
问题二:如何处理项目中的错误提示或崩溃
问题描述: 在编译或运行代码时,可能会遇到错误提示或程序崩溃。
解决步骤:
- 检查错误信息,确定错误来源。
- 如果错误与编译器版本相关,尝试使用推荐的编译器版本。
- 查看项目的
README.md
文件,了解已知的兼容性问题。 - 如果问题依然存在,可以在项目的 GitHub 仓库的 Issue 部分(https://github.com/S3cur3Th1sSh1t/Ruy-Lopez.git/issues)搜索类似问题或创建新 Issue 以寻求帮助。
问题三:如何在项目中添加新的 DLL 阻止规则
问题描述: 新手可能不清楚如何为项目添加新的 DLL 阻止规则。
解决步骤:
- 打开
BlockDll.nim
文件。 - 查找负责加载 DLL 的部分代码。
- 在相应位置添加新的 DLL 名称。
- 重新编译和运行程序以测试新规则是否生效。
请注意,修改项目代码时应谨慎行事,确保对项目有足够的了解,以避免引入新的错误。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考