前言
查找资料的时候,意外翻出之前刷的一些ctf题目,算是简单记录一下,当然因为常用typeo去写md文件,所以其中有很多当时记录的图片都失效了,可惜了
题目1:一眼就解密
ZmxhZ3tUSEVfRkxBR19PRl9USElTX1NUUklOR30=
base64解密
flag:flag{THE_FLAG_OF_THIS_STRING}
题目2:MD5
md5解密: 这种观察一般e0开头的都是admin这种常见的
e00cf25ad42683b3df678c61f42c6bda
flag:flag{admin1}
题目3:Url编码
%66%6c%61%67%7b%61%6e%64%20%31%3d%31%7d
flag:flag{and 1=1}
题目4:看我回旋踢
synt{5pq1004q-86n5-46q8-o720-oro5on0417r1}
flag:
rot13:flag{5cd1004d-86a5-46d8-b720-beb5ba0417e1}
题目5:摩丝
.. .-.. --- ...- . -.-- --- ..-
flag:
这里最后要将字符转换为大写
flag{ILOVEYOU}
题目6:password
姓名:张三 生日:19900315
key格式为key{xxxxxxxxxx}
题解:
这里看到key中的格式为10个x代表就是10个数,那么联想到,可能是姓名加生日的组合 zs+生日 刚好10个数 flag{zs19900315}
题目7:变异凯撒
afZ_r9VYfScOeO_UL^RWUc
题解:
1、观察密文,afZ_r9VYfScOeO_UL^RWUc 由于密文中有下划线和阿拉伯数字,所以推测应该不是用的字母表进行的替换加密,很有可能是用的ASCII码表。
2、由题目可知其格式为flag{ },所以我们可以从flag和afZ_之间的对应关系找出规律。 密文 明文 变化规律 a (97) f (102) +5 f (102) l (108) +6 Z (90) a (97) +7 _ (95) g (103) +8 可以看出其偏移量是对每个字符:从第一个字符的偏移量为5,第二个字符的偏移量为6……第n个字符的偏移量为4+n。偏移量依次递增。
3、解密
Python解密代码:
cipher = 'afZ_r9VYfScOeO_UL^RWUc'
j = 5
for i in cipher:print(chr(ord(i) + j), end='')j += 1
flag:
flag{Caesar_variation}
题目8:Quoted-printable
=E9=82=A3=E4=BD=A0=E4=B9=9F=E5=BE=88=E6=A3=92=E5=93=A6
flag:
flag{那你也很棒哦}
题目9:Rabbit
U2FsdGVkX1/+ydnDPowGbjjJXhZxm2MP2AgI
flag:
flag{Cute_Rabbit}
题目10:篱笆墙的影子
星星还是那颗星星哟 月亮还是那个月亮 山也还是那座山哟 梁也还是那道梁 碾子是碾子 缸是缸哟 爹是爹来娘是娘 麻油灯呵还吱吱响 点的还是那么丁点亮 哦哦
flag{wethinkwehavetheflag}
题目11:RSA
在一次RSA密钥对生成中,假设p=473398607161,q=4511491,e=17 求解出d作为flga提交
这里先在右上角选择10进制,10进制下面的是填e的值,这里是填16进制,将17的转换为16进制,所以填入11
然后在分别在下面的p中和q中填入题目给的值,然后点击下面的d,得到d值
flag:
flag{125631357777427553}
题目12:缺失的MD5
import hashlib
for i in range(32,127):for j in range(32,127):for k in range(32,127):m=hashlib.md5()m.update('TASC'+chr(i)+'O3RJMV'+chr(j)+'WDJKX'+chr(k)+'ZM')des=m.hexdigest()if 'e9032' in des and 'da' in des and '911513' in des:print des
flag:
flag{e9032994dabac08080091151380478a2}