[WMCTF2020]easy_re 题解

简介: [WMCTF2020]easy_re 题解

发现了一个base64编码的函数

提取base64编码表

base64_data=[0x40,0x2c,0x2e,0x31,0x66,0x67,0x76,0x77,0x23,0x60,0x2f,0x32,0x65,0x68,0x75,0x78,0x24,0x7e,0x22,0x33,0x64,0x69,0x74,0x79,0x25,0x5f,0x3b,0x34,0x63,0x6a,0x73,0x7a,0x5e,0x2b,0x7b,0x35,0x62,0x6b,0x72,0x41,0x26,0x3d,0x7d,0x36,0x61,0x6c,0x71,0x42,0x2a,0x2d,0x5b,0x37,0x30,0x6d,0x70,0x43,0x28,0x29,0x5d,0x38,0x39,0x6e,0x6f,0x44]
base64_table=''
for i in range(len(base64_data)):
    base64_table+=chr(base64_data[i])
print(base64_table)

得到编码表@,.1fgvw#`/2ehux$~"3dity%_;4cjsz^+{5bkrA&=}6alqB*-[70mpC()]89noD

编写解密脚本

import base64
str1 = "_r-+_Cl5;vgq_pdme7#7eC0="
base64_table = "@,.1fgvw#`/2ehux$~\"3dity%_;4cjsz^+{5bkrA&=}6alqB*-[70mpC()]89noD"
base64_str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
decoded_str = base64.b64decode(str1.translate(str.maketrans(base64_table, base64_str)))
print(decoded_str)

flag{change53233}

相关文章
|
15天前
|
Python
【Leetcode刷题Python】15. 三数之和
LeetCode "三数之和" 问题的Python实现代码,通过排序、双指针和跳过重复元素的方法找出所有和为0的不重复三元组。
10 0
|
10月前
|
存储
easy_Maze 题解
easy_Maze 题解
30 1
|
算法
LeetCode 热题 HOT 100题解 (easy级别)(一)
LeetCode 热题 HOT 100题解 (easy级别)
118 0
|
机器学习/深度学习
LeetCode 热题 HOT 100题解 (easy级别)(二)
LeetCode 热题 HOT 100题解 (easy级别)
88 0
|
算法 Python
[动态规划]Leetcode53.最大子序和(python)
[动态规划]Leetcode53.最大子序和(python)
|
C++ Python
LeetCode每日一题题解:15. 三数之和-题解-python && C++源代码
LeetCode每日一题题解:15. 三数之和-题解-python && C++源代码
|
算法 流计算
CTU Open Contest 2019 部分题解
CTU Open Contest 2019 部分题解
72 0
|
C++ Python
LeetCode每日一题题解:912. 排序数组-题解-python && C++源代码-快速排序代码模板
LeetCode每日一题题解:912. 排序数组-题解-python && C++源代码-快速排序代码模板
|
C++ Python
LeetCode每日一题题解:78. 子集-题解-python && C++源代码
LeetCode每日一题题解:78. 子集-题解-python && C++源代码
|
算法 C++ Python
LeetCode每日一题题解:260. 只出现一次的数字 III-题解-python && C++源代码
LeetCode每日一题题解:260. 只出现一次的数字 III-题解-python && C++源代码