「配枪朱丽叶。」

RootのCTF学习笔记。

NCTF2019/BUUCTF-Keyboard

题目:

ooo yyy ii w uuu ee uuuu yyy uuuu y w uuu i i rr w i i rr rrr uuuu rrr uuuu t ii uuuu i w u rrr ee www ee yyy eee www w tt ee

仔细观察会发现这里的字母只由“wertyui”组成。
对应26键键盘上。q代表1,则w代表2,e代表3,依次类推。字母代表的就是九宫格的第几个格
而每段的个数不同,每段字母出现的次数代表格里的第几个数字

比如“w”代表2,看九键键盘的第二个格,里面有“abc”,出现了一次,则代表第一个数字‘a’
“o”代表9,“ooo”这里“o”出现了三次,代表九键键盘第9个格子里的第三个数,就是’y‘
https://s2.ax1x.com/2019/12/23/l93LrR.png

根据这个特性,利用python的列表和字典方法。写了一个脚本:

strr = "ooo yyy ii w uuu ee uuuu yyy uuuu y w uuu i i rr w i i rr rrr uuuu rrr uuuu t ii uuuu i w u rrr ee www ee yyy eee www w tt ee".split()
all = {'none1':'','none2':'','w':'abc','e':'def','r':'ghi','t':'jkl','y':'mno','u':'pors','i':'tuv','o':'wxyz'}
for i in strr:
    print(all[i[0]][len(i)-1],end="")

运行后得到flag。