题目说明

题目来源: XSCTF联合招新赛

题目描述: 究极简单题(认真

格式为flag{你所得到的大写字符串}

解题过程

下载附件

得到一串ABBAB…的内容,猜测第一个应该是培根,培根是根据每5个由AB组成的字母进行替代ABCD的一种替代作业密码。

解题步骤

我们使用小机器人对培根解密,得到如下结果:

1
NGBKLATCOZNIXEVZU

然后我们对这个字符串进行凯撒爆破,因为他没有给偏移量,我们这里使用我们自己写的Python库“qsnctf”进行解密。

(这个Python库可以通过pip安装,如果国内镜像源没有同步就使用pypi的源即可)

代码如下:

1
2
3
4
5
from qsnctf import *

p = caesar_decrypt_cracking("NGBKLATCOZNIXEVZU")

print(p)

得到的结果如下:

1
{"1": "MFAJKZSBNYMHWDUYT", "2": "LEZIJYRAMXLGVCTXS", "3": "KDYHIXQZLWKFUBSWR", "4": "JCXGHWPYKVJETARVQ", "5": "IBWFGVOXJUIDSZQUP", "6": "HAVEFUNWITHCRYPTO", "7": "GZUDETMVHSGBQXOSN", "8": "FYTCDSLUGRFAPWNRM", "9": "EXSBCRKTFQEZOVMQL", "10": "DWRABQJSEPDYNULPK", "11": "CVQZAPIRDOCXMTKOJ", "12": "BUPYZOHQCNBWLSJNI", "13": "ATOXYNGPBMAVKRIMH", "14": "ZSNWXMFOALZUJQHLG", "15": "YRMVWLENZKYTIPGKF", "16": "XQLUVKDMYJXSHOFJE", "17": "WPKTUJCLXIWRGNEID", "18": "VOJSTIBKWHVQFMDHC", "19": "UNIRSHAJVGUPELCGB", "20": "TMHQRGZIUFTODKBFA", "21": "SLGPQFYHTESNCJAEZ", "22": "RKFOPEXGSDRMBIZDY", "23": "QJENODWFRCQLAHYCX", "24": "PIDMNCVEQBPKZGXBW", "25": "OHCLMBUDPAOJYFWAV"}

结果中第6个很像我们想要的结果,也就是Have fun with crypto,但是提示告诉我们要提交的格式为flag{你所得到的大写字符串}的flag,所以最终flag应该是flag{HAVEFUNWITHCRYPTO}

1
flag{HAVEFUNWITHCRYPTO}