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

pyc文件是PyCodeObject的一种持久化保存方式,当我们第二次运行Python程序时,编译器会运行pyc文件,直接载入,可能是直接载入第一次运行结果吧。

在网站  https://tool.lu/pyc/  将pyc文件进行还原,达到了Python的代码

#!/usr/bin/env python
# visit https://tool.lu/pyc/ for more information
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']

其中这里有提示,就是“Your input1 is your flag~”,经过查看代码,大概了解到input[]数组经过((input1[i] + i) % 128 + 128) % 128和code[i] = code[i] ^ code[i + 1]后变化为code[],结合提示,只需要将code[]进行逆运行即可得到flag,加密顺序为((input1[i] + i) % 128 + 128) % 128到code[i] = code[i] ^ code[i + 1],相应的逆运算即为code[i] = code[i] ^ code[i + 1]到((input1[i] - i) % 128 + 128) % 128。

code = ['\x1f', '\x12', '\x1d', '(', '0', '4', '\x01', '\x06', '\x14', '4', ',', '\x1b', 'U', '?', 'o', '6', '*', ':', '\x01', 'D', ';', '%', '\x13']flag = ''for i in range(len(code)-2, -1, -1): #按逆顺序异或code[i]=chr(ord(code[i])^ord(code[i+1]))for i in range(len(code)):flag+=chr((ord(code[i])-i)%128)print(flag)

buuctf GWCTF 2019 pyre相关推荐

  1. BUUCTF Reverse/[GWCTF 2019]pyre

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

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

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

  3. [GWCTF 2019]pyre.pyc [CISCN2018]2ex

    文章目录 [GWCTF 2019]pyre.pyc 反编译 脚本 [CISCN2018]2ex 查看txt 分析 [GWCTF 2019]pyre.pyc 反编译 uncompyle6 pyre.py ...

  4. buu Reverse学习记录(19) [GWCTF 2019]pyre

    题目链接:https://buuoj.cn/challenges#[GWCTF%202019]pyre 题目是个.pyc文件 现在python中安装 uncompyle 库 运行命令 uncompyl ...

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

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

  6. [BUUCTF]REVERSE解题记录 [GWCTF 2019]pyre

    1.首先这是一个python的项目,用从大佬那学习到的python反编译 - 在线工具打开 print 'Welcome to Re World!' print 'Your input1 is you ...

  7. BUUCTF Reverse [GWCTF 2019]pyre WriteUp

    pyre-WP 首先发现是pyc文件,使用在线工具进行反编译,得到源码 #!/usr/bin/env python # visit http://tool.lu/pyc/ for more infor ...

  8. GWCTF 2019 pyre YuSec

    pyre pyc文件,直接在线反编译得到 print 'Welcome to Re World!' print 'Your input1 is your flag~' l = len(input1) ...

  9. [GWCTF 2019]pyre

    通过这道题学到了许多东西,GNU 高精度算法库,密码学python两个常用的函数库 crypto和 gmpy2,以及python的binascii模块,采用yafu来分解n得到q和p,加深了对于RSA ...

最新文章

  1. java-集合做成逗号分隔的字符串-类似mkstring
  2. IBatis.Net学习笔记十三:在IBatis.Net中调用存储过程
  3. html 日历系统 源码,calendar.html
  4. Angular tsconfig.json 文件里的 paths 用法和 scoped module 定义
  5. 【APICloud系列|31】百度导航功能的实现
  6. Virtual Treeview 5 0 0的安装以及入门
  7. Object-C非正式协议与正式协议的区别
  8. Arthur J.Riel的61条面向对象设计的经验原则[ZT]
  9. [BZOJ2049] [SDOI2008] 洞穴勘测
  10. UVA 11806 Cheerleaders (容斥原理)
  11. powershell cs上线_BasUSB实现后台静默执行上线CobaltStrike
  12. RecyclerView,ListView,GridView等UI控件使用及其优化和图片错位--
  13. 语音识别(ASR) 阿里云
  14. linux服务器无法解析域名解决办法,Linux服务器内部无法解析域名
  15. 计算机无法删除ie,ie无法删除怎么办
  16. Linux使用tar命令进行磁带备份
  17. oracle创建编号函数,oracle函数初次尝试
  18. 立法保护关键信息基础设施意义重大
  19. 高中计算机期末试题,高中信息技术期末试卷
  20. HTML情人节表白代码,给女朋友的电子情书代码,女朋友表白代码

热门文章

  1. MATLAB代码:基于V2G技术的电动汽车实时调度策略 代码主要做的是基于V2G技术的电动汽车实时调度策略,请注意是实时调度策略而非日前调度策略
  2. 思想政治教育目的与教育目标的区别和关系
  3. Java实现空瓶换汽水
  4. 【电气专业知识问答】问:大型发电机励磁系统功率单元的特点和要求是什么?
  5. Python学习 Python3.5+PyQt5环境--------02、代码与界面GUI分离
  6. vmware 16 安装 macOS15
  7. php 给APP推送消息
  8. 使用LSTM网络做预报(Forecast)
  9. 2021最新版-1024-AWS亚马逊云EC2服务器创建CentOS7.8实例
  10. 算法5:队列——解密 QQ 号