CryptoCTF Decode Me! writeup
身为第一次写wp、第二次参加CTF的菜鸟,希望可以给大家带来一点思路。写得不好的地方希望大家多多指出,谢谢( •̀ ω •́ )✧
0X00
首先看一下题目,题目完全没有提示,如果Decode Me! 算的话 ,不过并不影响我们解题。
题目:
D: mb xwhvxw mlnX 4X6AhPLAR4eupSRJ6FLt8AgE6JsLdBRxq57L8IeMyBRHp6IGsmgFIB5E :ztey xam lb lbaH
好吧完全看不懂,不过既然没有提示,就代表不需要想太多,可以直接尝试一些用传统密码的方式来解题。
0X01
针对传统密码,在这里推荐一款工具 —— CTFcrack (链接在最后)
通过这个软件,先对于题目进行凯撒密码的分析:
其中一行引起了我的注意o_o …
galf eht si sihO…倒过来不就是
Ohis is the flag????解出来了????
不过没这么简单…
0X02
首先,来展示一下完整的,经过一次凯撒密码解码之后,题目的亚子:
K: ti edoced tsuE 4E6HoWSHY4lbwZYQ6MSa8HnL6QzSkIYex57S8PlTfIYOw6PNztnMPI5L :galf eht si sihO
倒序之后:
Ohis is the flag: L5IPMntzNP6wOYIfTlP8S75xeYIkSzQ6LnH8aSM6QYZwbl4YHSWoH6E4 Eust decode it :K
其次,我承认自己花了很长时间来搜索 Ohis,Eust 是什么…
不过没有什么结果,所以我猜测
“会不会大写和小写的偏移量是不同的??”
所以单独抽出来,有一行是
P: yn jithji yxzJ 4J6MtBXMD4qgbEDV6RXf8MsQ6VeXpNDjc57X8UqYkNDTb6USeysRUN5Q :lfqk jmy xn xnmT
那么 Ohis 和 Eust 就变成了 This 和 Just
完美。。。( ̄_, ̄ )
0X03
我们来看看现在的题目变成了什么样子:
This is the flag: Q5NURntzSU6wTDNfYlU8X75xeDNkXzV6QnM8aXR6VDEwbl4DMXBoM6J4 Just decode it : P
OK,好像没问题了,Base64一波:
???逗我呢。。。
乱码什么鬼。。。心态炸了
0X04
所以我先去喝了点肥宅快乐水压压惊
回到正题,既然出现了CTF{**}的格式,那我自然要试验一下
可以看到,从5变成了0
所以,应该是对数字采用了 rot5 的加密方式
即 0<—>5、1<—>6、2<—>7、3<—>8、4<—>9
所以更改完成之后应该变成
This is the flag: Q0NURntzSU1wTDNfYlU3X20xeDNkXzV1QnM3aXR1VDEwbl9DMXBoM1J9 Just decode it : P
应该是结束了
flag是CCTF{sIMpL3_bU7_m1x3d_5uBs7ituT10n_C1ph3R}
simple but mixed substitution cipher,如他所说
写在最后
其实这是我做出来的唯一一道题,也是唯一不需要看python代码的题目。
其实题目挺简单的,思路也不复杂,这种问题想来就是考验耐心和敏感的吧。
希望这个wp写的非常明白,也希望下次参加CTF的时候能取得更好的成绩吧。