南邮CTF逆向题第三道Py交易解题思路
来源:互联网 发布:金庸武侠知乎 编辑:程序博客网 时间:2024/06/11 18:50
首先看题
下载后显示为Py.pyc 尝试notepad++打开显示乱码
所以直接百度
选择https://tool.lu/pyc/ 进行解密
#!/usr/bin/env python# encoding: utf-8import base64def encode(message): #def定义了一个encode模块的变量 s = '' #为了存入最后的目标串 for i in message: #ord()函数主要用来返回对应字符的ascii码 x = ord(i) ^ 32 #将输入的字符串中每个字符ascii码都与32进行异或运算 x = x + 16 #每个都加上16 s += chr(x) #再将它们一个一个转为字符 return base64.b64encode(s) #最后再将新串进行一次base64加密correct = 'XlNkVmtUI1MgXWBZXCFeKY+AaXNt' #输入的串flag = '' #为了存入最后的目标串print 'Input flag:' #屏幕提示信息 请输入flagflag = raw_input() #获取输入if encode(flag) == correct: #如果加密后的flag与correct相同 输出correct print 'correct' else: #否则输出wrong print 'wrong'
所以我们只要将这个串"XlNkVmtUI1MgXWBZXCFeKY+AaXNt"解一次base64
再将每个字符ascii码都减下16
接着与32异或即可得到flag
解密代码如下:
import base64 correct ='XlNkVmtUI1MgXWBZXCFeKY+AaXNt' s = base64.b64decode(correct) flag ='' for i in s: i = chr((ord(i)-16)^32) flag += i print flag
运行结果:
阅读全文
0 0
- 南邮CTF逆向题第三道Py交易解题思路
- 南邮CTF逆向题第二道ReadAsm2解题思路
- 南邮CTF逆向题第四道WxyVM解题思路
- 南邮CTF逆向题第五道maze解题思路
- 南邮CTF逆向题第六道WxyV2解题思路
- 南邮CTF逆向题第一道Hello,RE!解题思路
- 南邮ctf逆向最后一题
- CTF安卓逆向练习第三弹
- 看雪CTF 2017 第六题设计思路和解题思路
- leetcode 第三题题目及解题思路
- 170707 逆向-南邮CTF逆向(WxyVM1)
- 170708 逆向-南邮CTF逆向(maze)
- WHCTF 2017 逆向题 CRACKME、BABYRE、EASYHOOK 的解题思路
- 170706 逆向-南邮CTF平台(1-3)
- 170818 逆向-南邮CTF(WxyVM2)
- 一道逆向CTF题-read asm详解
- 实验吧CTF逆向题1000writeup
- 逆向CTF (linux)
- 论坛换页html、css
- 使用zsh的十大优点
- 习题7.5
- rehat 6.5 iso中安装gcc
- java面试必问面试题
- 南邮CTF逆向题第三道Py交易解题思路
- 数据结构实验之排序七:选课名单
- 函数、排序、线性数据结构
- Arduino寻迹与识别红绿灯
- java面向对象
- 2017 ccpc 秦皇岛C Crusaders Quest
- java基础复习(类和对象)
- selenium得到一个动态页面
- Java多线程下的网络通信编程--图片传输