buuctf 逆向pyre

最近看到不少py逆向,记录一道题
下载原件发现是pyc文件,先利用uncompyle生成py文件(之前用py3.8.6的版本下载死活不行,在老学长的帮助下发现uncompyle库不支持最新版本,没办法含泪删掉重下)
下载指令

pip install uncompyle

下载成功后生成py文件,比如想把1.pyc 生成 2.py文件用指令

uncompyle6 1.pyc > 2.py

一般都可以成功,看这道题,用上面的方法得到py文件

# uncompyle6 version 3.7.4
# Python bytecode 2.7 (62211)
# Decompiled from: Python 3.7.4 (tags/v3.7.4:e09359112e, Jul  8 2019, 19:29:22) [MSC v.1916 32 bit (Intel)]
# Embedded file name: encode.py
# Compiled at: 2019-08-19 21:01:57
print 'Welcome to Re World!'
print 'Your input1 is your flag~'
l = len(input1)
for i in range(l):num = ((input1[i] + i) % 128 + 128) % 128code += numfor i in range(l - 1):code[i] = code[i] ^ code[(i + 1)]print code
code = ['\x1f', '\x12', '\x1d', '(', '0', '4', '\x01','\x06', '\x14', '4', ',', '\x1b', 'U', '?', 'o','6', '*', ':', '\x01', 'D', ';', '%', '\x13']
# okay decompiling 1.pyc

逻辑比较简单,直接给出脚本

code = ['\x1f', '\x12', '\x1d', '(', '0', '4', '\x01','\x06', '\x14', '4', ',', '\x1b', 'U', '?', 'o','6', '*', ':', '\x01', 'D', ';', '%', '\x13']
s=''
encode=[]
l=len(code)
print(l)
encode.append('\x13')
for i in range(l-1):code[l-i-2]=chr(ord(code[l-i-2])^ord(code[l-i-1]))
print(code)
for i in range(l):code[i]=(ord(code[i])-i)%128
for i in range(l):s+=chr(code[i])
print(s)

这道题就结束了

buuctf pyre相关推荐

  1. BUUCTF pyre

    BUUCTF pyre 拿到的文件是一个后缀是.pyc的文件,有点迷糊,百度了一下发现可以用网上的python反编译在线工具反编译,反编译之后得到代码: #!/usr/bin/env python # ...

  2. buuctf——pyre

    1得到.pyc文件. 反编译pyc文件,首先要下载uncompyle (打开cmd 输入命令:pip install uncompyle) 在cmd窗口输入命令:uncompyle6 文件名.pyc& ...

  3. BUUCTF Reverse/[GWCTF 2019]pyre

    BUUCTF Reverse/[GWCTF 2019]pyre 下载得到一个pyc文件,用这个在线反编译pyc,pyo反汇编出代码 print 'Welcome to Re World!' print ...

  4. [BUUCTF]REVERSE——[GWCTF 2019]pyre

    [GWCTF 2019]pyre 附件 步骤: 1.附件是pyc文件,用python打不开,百度后得知用python反编译工具打开,分享一个python反编译在线网站 反编译后是这段代码 #!/usr ...

  5. buuctf GWCTF2019 pyre

    (36条消息) GWCTF 2019 pyre YuSec_顾殇の点的博客-CSDN博客https://blog.csdn.net/weixin_43859686/article/details/10 ...

  6. buuctf/re/近日总结/rome,pyre等(详细解释)

    rome: 检测到无壳,32位 直接用IDA打开,转到main函数 int func() {int result; // eaxint v1[4]; // [esp+14h] [ebp-44h]uns ...

  7. BUUCTF 逆向工程(reverse)之[GWCTF 2019]pyre

    下载好题目后,发现后缀名为:.pyc 所以使用python这些反编译工具:https://tool.lu/pyc/ 利用这个网站反编译一下就可以得到Python的源代码 #!/usr/bin/env ...

  8. buuctf GWCTF 2019 pyre

    下载题目发现是一个pyc文件,关于pyc的详细解释,我看到了这篇文章(6条消息) .pyc是什么?_loveliuzz的博客-CSDN博客_.pyc pyc文件是PyCodeObject的一种持久化保 ...

  9. BUUCTF Reverse pyre

    这道题算是比较简单的逆算法了,初入逆向,想借这个题来理理自己的思路 拿到附件,发现是一个.pyc文件,这里简单介绍一下 详细介绍可以参考大佬博客:什么是pyc文件,把python的py文件编译成pyc ...

最新文章

  1. node.js实现国标GB28181流媒体点播(即实时预览)服务解决方案
  2. LeetCode Linked List Cycle
  3. MATLAB-基本语法
  4. c++多字节与宽字节字符串转换(windows平台)
  5. linux deepin 升级内核命令
  6. html盒模型向上浮动,HTML5盒模型、浮动和定位
  7. 全民学后端快餐教程(1) - 只不过是写个Java程序
  8. android java 指针异常处理,Android自定义抛出异常的方法详解
  9. 美国《预防》杂志近期帮大家总结了11种自然疗法来对抗高血压
  10. 带撤销贪心——cf1148F好题
  11. 宝塔 php redis not found in_PHP之PSR-4规范:自动加载
  12. Qt Supported Databases
  13. html win10虚拟键盘,win10专业版打开虚拟键盘的方法
  14. python项目实战:控制Windows电脑桌面壁纸
  15. java工程师简历的潜规则你知道吗?
  16. 【C/C++】泛型栈
  17. 本地git的分支名称变空的处理方法
  18. FILE NAME(filename)文件名的理解
  19. 使用python进行分布分析(算数平均、几何平均、偏度、峰度,绘制直方图),以2022年上半年沪深300指数为例
  20. 最新opencv-c++安装及配置教程(VS2019 C++ opencv4.4.0)

热门文章

  1. Ubuntu18.04下VScode调试方法
  2. 小程序带你重温那些年我们玩过的小游戏
  3. 【电气专业知识问答】问:大型发电机励磁电源的种类、要求和适用范围是什么?
  4. Spring Boot 热部署
  5. Day 33 图的广度优先遍历
  6. Python数据可视化 Pyecharts 图表渲染
  7. 文字的检测与识别资源
  8. QT多线程(三)线程互斥与同步
  9. 硬盘结构详细易懂图解讲解
  10. 几十本书籍、固态硬盘、蓝牙音箱等礼品免费送!