2023年江苏“领航杯”MISC一个很有意思的题目(别把鸡蛋放在同一个篮子里面)
🏆别把鸡蛋放在同一个篮子里面
题目附件:https://wwzl.lanzoue.com/i6HmX16finnc
1、题目信息
解压压缩包打开附件,获得5141个txt文档,每个文档都有内容,发现是base64加密的字符内容,所以我们需要按照顺序将每个文件的内容写到一个文件里面,然后base64解码
我们观察到每个文件的名称其实是一段MD5值,我们使用MD5试着解一下看看,发现每个文件的名称其实都是一个阿拉伯数字。
所以可以推断根据文件名MD5的数值可以把每个文件的内容进行排序拼接
脚本:
import base64
import zipfile
import hashlib
dic = {hashlib.md5(str(i).encode()).hexdigest(): i for i in range(5141)}
zf = zipfile.ZipFile("1a8158054c76602e19ee7face3c3aaef.zip")
baseStr = list(5141 * " ")
for fileName in zf.namelist():
md5 = fileName.replace(".txt", "")
baseStr[dic[md5]] = zf.read(fileName)
with open("flag.out", "wb") as f:
f.write(base64.b64decode(b''.join(baseStr)))
010打开文件发现是一个压缩包,修改文件后缀打开
hint.txt内容:
你在寻找钥匙么?
也许你该了解一下图片中的花朵。
ps:钥匙为12位纯数字,试试爆破?
Vm0weE1HRXdOVWRpUm1oVlYwZDRXRmxVU2xOalZsWnpWMjFHV0ZKdGVGcFpNRlpyVmxVeFdHVkljRmhoTVZWNFdXdGFZV015VGtaYVJtUlRUVEJLUlZacVFtdFNNRFZ6VjI1T2FsSnNjRmhhVjNoaFVsWmtWMVZyZEZOTmF6RTBWMnRvVTFWR1duUlZiR2hXWWtkb1JGVXdXbUZTTVdSelYyczFWMkpXU2xwV1ZFb3dXVlpTYzFkc1ZtbFNiV2hYV1d4b2IyVldjRlpYYlVacVlrWndlbFpIZUhkV01rWTJWbGhrVjJFeVVUQlpla1p6VjBaYWRWTnNhR2xTTTJob1ZtMTBWMUp0VmtkVmJHUlRWa2Q0VWxaV1VYZFBVVDA5
得到一个提示,和一张图片,图片中是水仙花数
首先我们看看那串base64是啥。反复解码得到
。。。没什么用,让我多看看花。哎!base64,那就去看花吧
010我们可以看到图片末尾有一个RC4,所以肯定不是爆破,不太实际,根据图片水仙花数,百度一下发现没有12位的水仙花数,但3位的水仙花数有4个,正好!!
153370371407
知道了密码,Cyber里面RC4以下看看
哎!!!拉到最后才发现flag。。
分类:
2023江苏省领航杯
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理