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

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

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

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
GoBfuscator — 通过 AES-256 字符串加密及运行时解密、标识符重命名和注释移除来混淆 Go 源代码,以阻碍逆向工程,同时保持运行时行为不变。 | Kitploit
工具/GitHubGitHub/luftwaffe66/gobfuscator
防御工具静态分析加密/解密工具代码分析逆向工程脚本与自动化密码学DevSecOps
GitHubluftwaffe66/gobfuscator

GoBfuscator

通过 AES-256 字符串加密及运行时解密、标识符重命名和注释移除来混淆 Go 源代码,以阻碍逆向工程,同时保持运行时行为不变。

查看仓库
10241年前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

🛡️ GoBfuscator - 高级 Go 代码混淆工具

Go Version License GitHub Stars GitHub Forks

GoBfuscator - obfuscate go scripts

🔍 概述

GoBfuscator 是一款专业级的混淆工具,专为 Go (Golang) 源代码设计。它提供多层保护,使逆向工程变得困难,同时保持 100% 的运行时功能。

主要特性:

  • ✨ AES-256 加密字符串,运行时解密
  • 🔀 全面的标识符重命名(函数、变量、类型)
  • 🧹 代码清理和注释移除
  • 🛡️ 防御常见的逆向工程技术
  • ⚡ 初始解密后零运行时性能开销

🚀 快速开始

安装

git clone https://github.com/luftwaffe66/GoBfuscator.git
cd GoBfuscator
pip install -r requirements.txt

基本用法

python3 obfuscator.py yourfile.go

这将生成应用了所有保护的 yourfile_obfuscated.go。

🛠️ 技术实现

多层混淆

  1. 标识符重命名:

    • 所有非保留标识符被替换为随机的 6 字符名称
    • 保留 Go 保留字和标准库导入
    • 处理方法接收者和包级声明
  2. 字符串加密:

    • 对每个字符串使用带随机 IV 的 AES-256-CBC
    • Base64 编码以便嵌入源代码
    • 运行时解密并自动移除 PKCS7 填充
  3. 代码清理:

    • 移除所有注释
    • 压缩空白字符
    • 规范化格式

安全特性

  • 🔑 每次运行生成唯一的加密密钥
  • 🛡️ 防御简单的字符串提取工具
  • 🔄 随机化命名防止模式识别
  • ⚠️ 保留重要的转义序列(\n、\t 等)

📊 基准测试结果

操作原始混淆后开销
启动时间12ms15ms+25%
内存使用8.2MB8.5MB+3.6%
运行时性能1.0x1.0x0%

测试在 Go 1.19、Intel i7-1185G7、16GB RAM 上进行

🧩 集成

CI/CD 流水线

steps:
  - name: Obfuscate Go Code
    run: |
      git clone https://github.com/luftwaffe66/GoBfuscator.git
      cd GoBfuscator
      python3 obfuscator.py $GITHUB_WORKSPACE/main.go
      mv main_obfuscated.go $GITHUB_WORKSPACE/main.go

高级选项

# Preserve specific identifiers
python3 obfuscator.py --preserve "Config,DBConn" main.go

# Custom encryption key (base64)
python3 obfuscator.py --key "dGhpcyBpcyBhIHNlY3JldCBrZXkh" main.go

📚 文档

工作原理

  1. 解析阶段:

    • 提取所有可重命名的标识符
    • 识别需要加密的字符串
    • 保留代码结构
  2. 转换阶段:

    • 为标识符生成随机名称
    • 使用 AES-256 加密字符串
    • 构建解密基础设施
  3. 输出阶段:

    • 生成干净、可运行的 Go 代码
    • 添加所需的解密函数
    • 保持原始功能

局限性

  • ❌ 不处理基于反射的代码分析
  • ❌ 无法混淆导出的包名
  • ❌ 可能破坏某些调试器功能

🤝 贡献

我们欢迎贡献!请遵循以下步骤:

  1. Fork 仓库
  2. 创建功能分支(git checkout -b feature/AmazingFeature)
  3. 提交更改(git commit -m 'Add some AmazingFeature')
  4. 推送到分支(git push origin feature/AmazingFeature)
  5. 打开 Pull Request

📜 许可证

在 MIT 许可证下分发。更多信息请参见 LICENSE。

📬 联系方式

项目维护者 - @luftwaffe66

🌟 致谢

  • 受各种开源混淆工具启发
  • 使用 PyCryptodome 实现 AES
  • 感谢所有贡献者和用户

🔐 立即保护你的 Go 代码! 给这个仓库点星 以支持该项目。

下载工具