sisoma2/ShellcodeLoader

GitHub: sisoma2/ShellcodeLoader

一款轻量级的 Windows shellcode 和 PE 加载调试工具,用于恶意软件分析场景下快速验证和调试提取的二进制代码。

Stars: 83 | Forks: 17

# ShellcodeLoader ShellcodeLoader 的构建目的是为了在恶意软件分析中,能够在可执行文件的上下文中快速调试提取出的 shellcode。 ShellcodeLoader 的功能是从磁盘读取二进制文件到内存,并跳转到基址或指定的入口点以执行该文件。 它会自动检测是否正在被调试,并询问用户是否希望在执行 shellcode 之前设置断点。 支持 x86 和 x64 系统。 ## 发布版本 前往 Releases 标签页下载已编译的可执行文件。 ## 用法 文件参数是必需的。其他参数为可选。 ``` ShellcodeLoader.exe [-e --entrypoint ENTRYPOINT] [-a --address ADDRESS] [-r --run] [-b --break] FILE ``` 加载文件并在指定的偏移量处执行代码 ``` ShellcodeLoader.exe -e 1000 shellcodex86.bin ``` 读取文件并尝试在指定地址分配内存,将 shellcode 复制到该区域并执行 ``` ShellcodeLoader.exe -a 30000 shellcodex86.bin ``` 运行 shellcode 而不停止或中断。__警告:__ shellcode 将在您的机器上执行。 ``` ShellcodeLoader.exe -r shellcodex86.bin ``` 尝试将 shellcode 复制到指定区域,并在跳转到指定入口点之前设置断点 ``` ShellcodeLoader.exe -a 30000 -e 1000 -b shellcodex86.bin ``` ## 构建 __要求__ - 下载并安装 Microsoft Visual C++ Build Tools 或 Visual Studio __构建步骤__ - 克隆仓库并导航至该目录 - 打开 SLN 文件以在 Visual Studio 中打开项目 - 选择您要编译二进制文件的平台(x32 或 x64) - 前往 编译->编译解决方案 以生成 EXE 文件 ## Shellcode 示例 文件 shellcodex86.bin 和 shellcodex64.bin 是使用 NASM 编译的 shellcode,通过 WinExec Windows API 执行 calc.exe,用于测试本软件。 ## 反馈 如有任何问题、评论或请求,您可以在 Twitter 上找到我:[@sisoma2](https://twitter.com/sisoma2) 欢迎提交 Pull request!
标签:C/C++, Conpot, DAST, PE加载, Raspberry Pi, Shellcode调试, Shellcode运行器, UML, Windows安全, WinExec, x64架构, x86架构, 事务性I/O, 二进制分析, 云安全运维, 云资产清单, 内存执行, 安全测试, 快速连接, 恶意代码分析, 恶意软件分析, 攻击性安全, 无线攻击, 汇编语言, 漏洞利用分析, 端点可见性, 逆向工程, 配置文件