Python代码打包与反编译防护工具

软件介绍

这是一个基于PyInstaller和UPX的Python代码打包工具,提供了直观的图形用户界面,方便用户将Python脚本打包为可执行文件,并集成了多种反编译防护功能,保护您的代码安全。

主要功能

  • ✅ 支持单文件和目录两种打包模式
  • ✅ 支持控制台应用和无控制台应用
  • ✅ 集成UPX压缩,减小可执行文件体积
  • ✅ 自动检测PyInstaller和UPX路径
  • ✅ 提供多种反编译防护选项
  • ✅ 实时日志显示和日志文件保存
  • ✅ 支持AES加密保护
  • ✅ 支持自定义图标
  • ✅ 支持添加额外数据文件


download
来源:蓝奏云 | 提取码:hfkq

系统要求

  • 操作系统: Windows 10/11 (64位)
  • Python版本: Python 3.8+ (已安装)
  • 依赖工具:
    • PyInstaller (将自动检测或手动指定)
    • UPX (可选,用于压缩可执行文件)

安装说明

  1. 下载工具

    • 从发布页面下载最新版本的工具压缩包
    • 解压到本地目录
  2. 安装依赖

    • 确保您已安装Python 3.8+
    • 安装PyInstaller (如果尚未安装):
      pip install pyinstaller
    • 可选: 下载UPX并解压到任意目录 (工具会自动检测或您可以手动指定)
  3. 运行工具(python版本)

    • 直接双击运行 pyinstaller_gui_packer.py
    • 或通过命令行运行:
      python pyinstaller_gui_packer.py

使用步骤

1. 基本设置

  1. 选择Python脚本

    • 点击”浏览…”按钮,选择您要打包的Python脚本文件 (.py)
  2. 选择输出目录

    • 点击”浏览…”按钮,选择打包结果的输出目录
    • 默认输出目录为当前目录下的 dist 文件夹
  3. 选择打包模式

    • 目录形式 (-D): 生成包含可执行文件和相关依赖的目录
    • 单文件 (-F): 生成单个可执行文件,所有依赖都嵌入其中
  4. 选择应用类型

    • 控制台应用: 运行时会显示控制台窗口
    • 无控制台应用: 运行时不显示控制台窗口 (适合GUI应用)
  5. UPX压缩选项

    • 勾选”使用UPX压缩”可减小可执行文件体积
    • 勾选”修改UPX标识防止解压”可增强反编译防护

2. 工具路径设置

  1. PyInstaller路径

    • 工具会自动检测PyInstaller路径
    • 如检测失败,点击”自动检测PyInstaller”或手动浏览选择
  2. UPX路径

    • 工具会自动检测UPX路径
    • 如检测失败,点击”自动检测UPX”或手动浏览选择

3. 防护选项

  1. PyInstaller防护

    • 剥离调试符号: 移除可执行文件中的调试信息
    • 运行时钩子: 可添加自定义运行时钩子文件
    • 排除模块: 排除不需要打包的模块,使用逗号分隔
    • 隐藏导入: 添加隐藏的模块导入,使用逗号分隔
  2. 高级防护

    • 添加多层混淆: 增加代码混淆层,提高反编译难度
    • 添加反调试代码: 防止调试器附加
    • 代码结构混淆: 混淆代码结构,使反编译后的代码难以理解
    • 字符串加密: 加密代码中的字符串,防止静态分析

4. 高级选项

  1. 图标文件

    • 点击”浏览…”选择自定义图标文件 (.ico)
  2. 额外数据

    • 点击”浏览…”选择需要随可执行文件一起打包的数据文件或目录
  3. AES加密

    • 勾选使用AES加密,可生成随机密钥或手动输入
    • 注意:请妥善保存加密密钥,丢失后无法恢复
  4. 日志级别

    • 选择日志输出级别:DEBUG、INFO、WARN、ERROR

5. 开始打包

  1. 确认所有设置无误后,点击”开始打包”按钮
  2. 打包过程中会显示实时日志
  3. 如需停止打包,点击”停止”按钮
  4. 打包完成后,会显示可执行文件位置
  5. 可选择打开输出目录查看结果

功能详解

UPX压缩

UPX是一款优秀的可执行文件压缩工具,可以大幅减小可执行文件的体积。工具支持:

  • 自动检测UPX路径
  • 手动设置UPX路径
  • 修改UPX标识防止解压

反编译防护机制

工具集成了多种反编译防护技术:

  1. UPX标识修改

    • 修改UPX压缩后的文件标识,防止UPX解压工具识别
    • 提高反编译难度
  2. 反调试保护

    • 检测调试器附加
    • 检测内存扫描工具
    • 检测虚拟机环境
    • 定期运行时检测
  3. 代码混淆

    • 多层代码混淆
    • 代码结构混淆
    • 字符串加密
  4. PyInstaller高级选项

    • 剥离调试符号
    • 自定义运行时钩子
    • 模块排除和隐藏导入

常见问题

Q: 打包失败,提示找不到PyInstaller

A: 请尝试以下解决方案:

  1. 确保已安装PyInstaller:pip install pyinstaller
  2. 点击”自动检测PyInstaller”按钮重新检测
  3. 手动浏览选择PyInstaller可执行文件路径

Q: 打包失败,提示找不到UPX

A: 请尝试以下解决方案:

  1. 下载UPX压缩包:解压upx-win64.zip到当前目录
  2. 拷贝upx-win64目录至C:\Program Files\PythonXXX\目录下
  3. 手动点击自动检测UPX

Q: 打包后的可执行文件无法运行

A: 请检查以下几点:

  1. 确保Python脚本本身可以正常运行
  2. 检查是否缺少必要的依赖
  3. 尝试使用目录模式打包,查看详细错误信息
  4. 查看打包日志,分析具体错误原因

Q: UPX压缩失败

A: 请检查以下几点:

  1. 确保UPX路径正确
  2. 尝试关闭UPX压缩选项
  3. 检查UPX版本是否与您的系统兼容

Q: 如何添加多个数据文件

A: 当前版本暂不支持添加多个数据文件,您可以:

  1. 将所有数据文件放入一个目录,然后选择该目录
  2. 手动编辑生成的spec文件,添加多个数据文件

注意事项

  1. 代码保护

    • 工具提供的防护功能可以提高反编译难度,但无法完全阻止专业的逆向工程
    • 建议结合其他代码保护措施,如代码混淆工具
  2. 性能影响

    • 启用UPX压缩会增加打包时间,但可减小可执行文件体积
    • 启用高级防护选项可能会略微影响程序运行性能
  3. 兼容性

    • 打包后的可执行文件仅在与打包环境相同的操作系统上运行
    • 建议在目标操作系统上进行测试
  4. AES加密

    • 请妥善保存加密密钥,丢失后无法恢复
    • 加密会增加可执行文件体积和启动时间
  5. 日志文件

    • 打包日志会保存到当前目录下的 logs 文件夹
    • 日志文件命名格式:packer_log_YYYYMMDD_HHMMSS.txt

更新日志

v1.0.0

  • 初始版本发布
  • 支持基本打包功能
  • 集成UPX压缩
  • 提供多种反编译防护选项
  • 实时日志显示和保存

技术支持

如果您在使用过程中遇到问题,或有任何建议,请:

  1. 查看打包日志,分析错误原因
  2. 检查常见问题部分
  3. 联系开发团队获取支持

许可证

本工具采用 MIT 许可证,详情请查看 LICENSE 文件。


感谢您使用Python代码打包与反编译防护工具!

THE END