BUUCTF-Crypto-看我回旋踢、变异凯撒、Quoted-printable
一、看我回旋踢
拿到题目得到这么一个东西
synt{5pq1004q-86n5-46q8-o720-oro5on0417r1}
观察“synt”这个东西,认为是凯撒密码

尝试了一下,更加肯定了这个想法,毕竟这是一道简单题。Crypto会有什么坏心思呢?

然而这并不正确。
百度到“synt”和“rot-13”有关系
使用http://www.rot13.de/index.php
解得flag为:
flag{5cd1004d-86a5-46d8-b720-beb5ba0417e1}
二、变异凯撒
拿到题目以为是维吉尼亚密码,但是并没有给出密钥。
所以抱着试试的心态尝试来暴力破解一下

得到的这个东西看上去没什么规律。一提交,果然错了。
既然题目说的很清楚,那么这个题还是逃不过凯撒密码。
一起来复习一下凯撒密码:
明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文。例如,当偏移量是3的时候,所有的字母A将被替换成D,B变成E,以此类推。
那么这个题目中有下划线,那么肯定不能是根据字母表来转换的。
所以尝试通过ASCII表来试一试。
题目给了提示格式是"flag{}"。那么"afZ_"和"flag"之间必然有某种转换关系。
列出ASCII的转换关系
|
密文 |
明文 |
偏移量 |
|
a(97) |
f(102) |
+5 |
|
f(102) |
l(108) |
+6 |
|
Z(90) |
a(97) |
+7 |
|
_(95) |
g(103) |
+8 |
由此推断出密码与明文之间的偏移量是逐位加一的
生产python脚本
Crypto = 'afZ_r9VYfScOeO_UL^RWUc'
j = 5
for i in Crypto:
print( chr(ord(i) + j) , end = "")
运行得到flag

flag{Caesar_variation}
三、Quoted-printable
题目到手是一串带等号的十六位进制字符
=E9=82=A3=E4=BD=A0=E4=B9=9F=E5=BE=88=E6=A3=92=E5=93=A6
尝试删掉等号再进行字符串转换,结果得到了一串乱码。
遂大失所望。
百度Quoted-printable
发现这是一种编码方式

于是利用在线工具进行解码

那你也很棒棒哦
中文flagflag{那你也很棒棒哦}
若有收获,就点个赞吧
本文来自博客园,作者:刘大炮不挂科,转载请注明原文链接:https://www.cnblogs.com/LiuDaPao2333/p/15993738.html

浙公网安备 33010602011771号