这个工具折磨了我很久,搭配题目记录一下...

题目

Die

打包工具: PyInstaller

建议下载GitHub的:GitHub - extremecoders-re/pyinstxtractor: PyInstaller Extractor

单独的一个 pyInstaller.py 会很麻烦

步骤:

将exe拖到pyinstxtractor-master文件夹下面,打开cmd

python pyinstxtractor.py ezpy.exe

成功的话会出现一个类似ezpy.exe_extracted这样后缀的文件夹

点进去,能在文件下找到与exe同名的pyc文件

在早些的版本中,XX.exe_extracted文件下,是一个同名的无后缀的文件,需要我们自己补上

 注意!!!你要确保使用工具的环境是和Python version一样(我这里是需要3.11)

不然,ezpy.exe_extracted文件夹点进去,类似PYZ-00.pyz_extracted的文件夹会是空的!!

不过文件下同名的文件倒是不影响反编译成py

我使用的是新版本的pyinstxtractor,不用补magic

在Python3.7及以上版本的编译后二进制文件中,头部除了四字节Magic Number,还有四个字节的空位和八个字节的时间戳+大小信息,后者对文件反编译没有影响,全部填充0即可;
Python3.3 - Python3.7(包含3.3)版本中,只需要Magic Number和八位时间戳+大小信息
Python3.3 以下的版本中,只有Magic Number和四位时间戳。
———————————————

原文链接:https://blog.csdn.net/Myon5/article/details/134538103

本题目用uncompyle6反编译会报错(就是这里坑了我很久)

我没有pycdc,所以找了一个线上反编译工具

这里推荐两个(第一个有次数限制,第二个没有):

python反编译 - 在线工具 (tool.lu)

Pyc 转 Py - 百川在线工具箱 (chaitin.cn)

反编译ezpy.pyc

就是一个base64,肯定是换了表

发现需要 Litctfbase64 模块,这个是出题人自己定义的

去 PYZ-00.pyz_extracted 文件夹中找到

PYZ-00.pyz_extracted非常重要,一般一个稍微大一点的项目都会分成多个py文件,甚至会依赖其他模块,这些被依赖的文件解析后都会放入PYZ-00.pyz_extracted中,可以说这里放的是核心代码。

反编译Litctfbase64.pyc

得到了base64的换表

找一个在线自定义base64编解码网站

推荐:在线自定义base64编解码、在线二进制转可打印字符、在线base2、base4、base8、base16、base32、base64--查错网 (chacuo.net)

flag

LitCTF{61happy_LitCTF_nice_base64}

Pyinstaller打包exe的反编译——LitCTF 2024(公开赛道)ezpython!!!!!的更多相关文章

  1. 转载文章----初识Ildasm.exe——IL反编译的实用工具

    转载地址http://www.cnblogs.com/yangmingming/archive/2010/02/03/1662307.html Ildasm.exe 概要:(路径:C:\Program ...

  2. 初识Ildasm.exe——IL反编译的实用工具

    原文地址:http://www.cnblogs.com/yangmingming/archive/2010/02/03/1662307.html Ildasm.exe 概要: 一.前言: 微软的IL反 ...

  3. [No000013B]初识Ildasm.exe——IL反编译的实用工具

    Ildasm.exe 概要: 一.前言: 微软的IL反编译实用程序——Ildasm.exe,可以对可执行文件(ex,经典的控制台Hello World 的 exe 可执行文件)抽取出 IL 代码,并且 ...

  4. Python: pyinstaller打包exe(含file version信息)

    最近项目上一直都是用Spyder直接运行.py文件的方式来执行每日的自动化程序,每天都要手动去点击Run来执行一次,所以考虑把.py文件直接打包成exe,然后用windows的task schedul ...

  5. pyinstaller 打包exe程序读不到配置文件No such file

    挺久没更新博客的,一来之前是觉得才疏学浅,记录下来的太简单没人看.二来时间上不是很充裕(不是借口,有时间打游戏,没时间总结) 偶然有一次发现同事在搜索解决问题的时候正在看我博客的解决思路,很奇妙的感觉 ...

  6. python pyinstaller 打包exe报错

    今天用python 使用pyinstaller打包exe出现错误 环境pyqt5 + python3.6 在导入pyqt5包之前加上如下代码 import sysimport osif hasattr ...

  7. 利用PyInstaller打包exe文件

    前言 平常我们通过Python写完一些小脚本之后,如果使用不频繁的话,一般会选择在DOS界面直接跑脚本,或者在IDE中运行.但当我们需要频繁使用某些脚本,或者在没有Python环境的机器上也能顺利运行 ...

  8. Pyinstaller 打包exe 报错 "failed to execute script XXX"的一种解决方案

    最近用PyQt5写了一个界面小程序,需要打包成exe给到其他windows上使用,一开始使用python 3.7 64位,用pyinstaller打包exe,在64位机上运行正常. 但是目标电脑是32 ...

  9. Pyinstaller打包exe,丢失图标等问题

    Pyinstaller打包exe,丢失图标等问题 一.原因 exe运行时会解压一个名为'_MEI*'的资源文件夹到电脑的临时目录,程序结束时删除. 程序里使用'\图标.png'这样的路径,exe运行时 ...

  10. pyinstaller打包exe文件,运行时一闪而过

    pyinstaller打包exe文件出现命令窗口一闪而过 原因:exe运行过程中出错了,解决这些错误就可以了 解决方法: 通过 cd path >> xxx.exe 在命令行中运行exe文 ...

随机推荐

  1. EasyNLP带你实现中英文机器阅读理解

    简介: 本⽂将提供对MacBERT模型的技术解读,以及如何在EasyNLP框架中使⽤MacBERT及其他预训练语言模型,进行中英文机器阅读理解任务的训练与预测. 作者:施晨.黄俊 导读 机器阅读理解是 ...

  2. 阿里巴巴大规模应用Flink的踩坑经验:如何大幅降低 HDFS 压力?

    众所周知 Flink 是当前广泛使用的计算引擎,Flink 使用 checkpoint 机制进行容错处理[1],Flink 的 checkpoint 会将状态快照备份到分布式存储系统,供后续恢复使用. ...

  3. 京东:Flink SQL 优化实战

    简介: 本文着重从 shuffle.join 方式的选择.对象重用.UDF 重用等方面介绍了京东在 Flink SQL 任务方面做的优化措施. 本文作者为京东算法服务部的张颖和段学浩,并由 Apach ...

  4. VSCode和PhpStorm配置进行PHP断点调试

    本文环境:php版本:5.4.45 (phpstudy),Xdebug 2.4.1(phpstudy文件夹中自带),phpstorm 2021.3 目录 PHP配置 关于Xdebug 浏览器配置(插件 ...

  5. Java中HTTP下载文件——并解决跨域

    1.常用的需要设置的MIME类型 任何文件(二进制文件) application/octet-stream .doc application/msword .dot application/mswor ...

  6. 五:大数据架构回顾-LambdaPlus架构

    Blink是阿里云在 Apache Flink 基础上深度改进的实时计算平台,Blink旨在将流处理和批处理统一,实现了全新的 Flink SQL 技术栈,在功能上,Blink支持现在标准 SQL 几 ...

  7. 一则current日志损坏的数据库恢复实例,隐藏参数的使用

    场景 之前写了一篇文章,是redo日志全部丢失的情况下,数据库实例恢复的方式.但是,这次特殊在,实例恢复失败的情况下.非常规打开数据库(数据库已经不一致了,但是可以通过expdp导出,导出重要的数据) ...

  8. gin框架获取参数

    目录 httpext包 获取header头里的参数: scene := httpext.GetHeaderByName(ctx, "scene") // online / dev ...

  9. 🔥🔥🔥httpsok-v1.8.0 SSL证书自动续签就应该这么简单

    httpsok-v1.8.0 SSL证书自动续签就应该这么简单 简介 一行命令,一分钟轻松搞定SSL证书自动续期 httpsok 是一个便捷的 HTTPS 证书自动续签工具,专为 Nginx 服务器设 ...

  10. JSON返回结果修改null为"";json字段为null时输出空字符串

    简介 (Introduction): 背景 json字符串返回的需要"",但是却是null,怎么处理呢,如下 结构图 1 [ 2 { 3 "1":{ 4 &qu ...