因为python是解释型语言,所以反编译的难度相对于其他编译型的语言低了很多

总的来说,反编译分为两步:

1、将.exe反编译成.pyc的二进制文件
2、将.pyc文件反编译成.py文件

接下来具体说一下步骤:

一、将.exe反编译成.pyc的二进制文件

1、获取archive_viewer.py文件

这个文件在pyinstaller库里,还没有安装的需要安装一下(已经安装的跳过安装)

pip install pyinstaller

安装完成后在python安装路径下的\Lib\site-packages文件夹搜索archive_viewer.py文件

搜索文件

找到文件后可以复制到你想要放置的位置(不复制也行)

2、反编译出archive_viewer.pyc文件
python archive_viewer.py your_app.exe

这一步会把编译出的文件都罗列出来,像这样

image.png

但是我们只需要找到我们exe对应的名字的文件就好了,确认存在之后滑到最下面,会发现有个?号用于输入接下来的命令,在这边我们输入

x your_app(your_app是exe文件的文件名,不带.exe后缀)

会显示 to filename?让你输入需要输出的pyc文件名称,这边输入 your_app.pyc回车就好了
接下来又会显示?号,接着输入x struct回车,输入struct文件名称struct回车

3、修改pyc文件前面字节

由于用PyInstaller打包后,pyc文件的前8个字节会被抹掉,所以最后要自己添加回去。前四个字节为python编译的版本,后四个字节为时间戳。
这边使用Hex Editor Neo软件同时打开.pyc文件和struct文件,复制struct文件前面8个字节插入到.pyc文件的前面:

1)复制struct文件前8个字节
image.png

2)在pyc文件中右键选择insert模式
3)选中第一个字节,输入八个空字节00
4)选中插入的前八个字节,右击粘贴
5)保存pyc文件

这样我们就得到了完整的pyc文件

4、使用uncompyle 反编译出py文件

安装uncompyle库

pip install uncompyle6

反编译

uncompyle6 your_app.pyc > your_app.py

http://www.taodudu.cc/news/show-1968823.html

相关文章:

  • Python制作反编译APK工具
  • python反编译软件下载_python批量反编译软件
  • python反编译命令_Python 反编译模块dis
  • python反编译_反编译 python
  • 基于WEB的达内学子书城/商城源代码
  • 学子商城项目用springboot后端框架搭建(IDEA)
  • Web初学者-作业-[学子商城-收藏页]
  • ssm-学子商城-项目第八天
  • ssm-学子商城-项目第七天
  • ssm-学子商城-项目第十三天最后一天完成项目
  • ssm-学子商城-项目第十一天
  • ssm-学子商城-项目第十二天
  • ssm-学子商城-项目第五天
  • ssm-学子商城-项目第三天
  • ssm-学子商城-项目第一天
  • ssm-学子商城-项目第六天
  • 山寨版学子商城——成功上线!
  • 达内学子商城项目简述(SSM+ecplise+tomcat8+mysql)
  • 学子商城代码2(项目 第十六阶段)
  • JAVA学子商城项目问题集锦(springboot)
  • 学子商城项目1(项目 第十六阶段)
  • web前端实训day06——学子商城登录页面实现
  • java项目实战达内代码_2018最新达内学子商城项目静态页面+sql+java代码
  • 学子商城实训项目总结
  • 学子商城电子产品销售系统
  • 学子商城
  • VUE day_07(7.25)学子商城项目简略版
  • 项目导入-学子商城
  • VUE day_08(7.26)学子商城项目详细版
  • jy-12-SPRINGMYBATIS02——学子商城-@成恒

反编译python编写的exe文件的详细方法相关推荐

  1. 反编译python 生成的exe源码

    反编译python 生成的exe源码 记录反编译exe工具使用 工具准备 – pyinstxtractor.py – uncompyle6 – sublime Text(或者其他的二进制编辑工具) 一 ...

  2. Python反编译pyinstaller打包的exe文件 从0开始(未加密篇)

    因为pyinstaller方便.兼容性相对较好,所以我们会经常见到一些用pyinstaller打包的Python程序,在这里我们了解一下如何对这些打包好的exe文件进行反编译(即反编译出.py文件), ...

  3. Python打包成exe文件_详细操作

    Python打包成exe文件 前言 一.安装pyinstaller 1.1 安装pyinstaller,使用安装命令: 1.2 如果遇到需要更新版本请输入: 1.3 检查是否正确安装 1.4 稍等,水 ...

  4. exe反编译_反编译Python生成exe软件(Py3-polySML)

    反编译对象为一篇文献上的软件,反编译只是为了了解一些源代码的逻辑. 过程参考文章:python3.7.4反编译生成的.exe 反编译对象:polySML 此对象为python打包,且未进行加密加壳软件 ...

  5. 把python语言翻译出来_Python语言实现翻译小工具(Python打包成exe文件)

    本文主要向大家介绍了Python语言实现翻译小工具(Python打包成exe文件),通过具体的内容向大家展示,希望对大家学习Python语言有所帮助. 1.环境 windows10 python3.5 ...

  6. 【原创】用 Python 反编译 Python 软件

    [原创]用 Python 反编译 Python 软件 标 题: [原创]用 Python 反编译 Python 软件 作 者: Ptero 时 间: 2010-04-21,16:28:27 链 接: ...

  7. 超详细Pyinstaller打包exe+反编译Pyinstaller打包的exe教程+防止反编译教程

    在这里分享一些技巧和经验给大家.辛苦撰文分享,转载或引用请保留本文作者信息及文章链接. 作者的环境: win7+python3.5(anaconda3) 理论上,win7及以上的系统和python任意 ...

  8. python图标的演变_把Python脚本生成exe文件并添加版本信息和自定义图标

    pyinstaller和py2exe把Python脚本生成exe文件,并添加版本信息和自定义图标. 写了一个查找产品通道号的小程序,目前还没进行异常处理. 以下是程序源码. # -*- coding: ...

  9. 安卓反编译揭秘,伪加密APK文件如何被破坏

    2019独角兽企业重金招聘Python工程师标准>>> 1. 源码混淆 如上图,对Android APP的源码进行混淆后混淆器将代码中的所有变量.函数.类的名称加密为简短的英文字母代 ...

  10. jsc反编译工具编写探索之路

    对于经常做游戏安全逆向的读者来说,可能会经常遇到Cocos2dx编写的游戏.这个国产开源的游戏开发引擎支持多种编程语言进行游戏开发:发括主流的C/C++/JavaScript/Lua,之前,与大家讨论 ...

最新文章

  1. 使用 JavaCSV api 读取和写入 csv 文件
  2. VS Code竟然能约会,找对象不看脸,看编程水平
  3. 数据结构值排序算法(三)-快速排序
  4. 正则表达式提取字符串内所有的img标签下的src路径
  5. leetcode-72-编辑距离
  6. 亚马逊aws 服务器删除_AWS推出Apache Airflow全托管工作流MWAA
  7. 修改Jupyter Notebook默认工作目录
  8. 刚开完2019WWDC 苹果就被iOS开发者们集体起诉...
  9. c++ loadlibrary 初始化对象_C++构造函数和初始化表
  10. mysql php 类 缓存_记录一个实用的PHP缓存类
  11. rss客户端reeder(iphone)使用技巧
  12. 伟哥大数据入门教程一
  13. powerDesign导出数据库表结构
  14. Git之(三)辅助命令
  15. Python iter()函数
  16. 服装店铺装修有哪些窍门?做好这3点,顾客主动上门
  17. 2003服务器终极安全及问题解决方案
  18. Exchange ActiveSync 配置
  19. 个人头像-----资源
  20. 江南科友 hac linux shell,运维安全审计系统(HAC 1000E、HAC 1000P)

热门文章

  1. 27_多易教育之《yiee数据运营系统》数据治理-atlas部署使用篇
  2. 电子技术专业基础与实务(中级)考试经验
  3. hp服务器bios检测硬盘接口,惠普工作站UEFI BIOS如何检测硬盘
  4. Java -- Thread中start和run方法的区别
  5. 数字图像处理-空间域图像增强
  6. (最新版 易卷/自动出题平台)自动阅卷系统 | 自动阅卷机 | 网络阅卷系统
  7. DB2数据库常用命令
  8. vue进入页面加载数据缓慢实现loading提示
  9. 信息与通信工程学科面试准备——信号与系统
  10. 纯JavaScript实现鼠标拖尾效果