BUUCTF[安洵杯 2019]吹着贝斯扫二维码
Posted Arc_0ne
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了BUUCTF[安洵杯 2019]吹着贝斯扫二维码相关的知识,希望对你有一定的参考价值。
题目链接:[安洵杯 2019]吹着贝斯扫二维码。
下载压缩包解压得到这么一些文件,可以看到一堆未知类型文件和一个flag.zip
老规矩,把这些没有拓展名的文件用010Editor
打开,发现都是jpg
类型文件。
需要给这些文件添加拓展名,直接使用cmd
下的ren
命令批量重命名,添加.jpg
拓展名。当然,这里可以用Python写脚本,但个人认为这里用cmd命令更方便快捷。
命令:
ren * *.jpg
//这条命令会把此目录下所有文件重命名,所以使用的时候注意目录位置
//还有注意这里的flag.zip
文件也被重命名,改回.zip
后缀就行
可以看到图片是二维码碎片,需要用PS
拼接,但总共36张碎片,真要一张张硬拼难度太大了,基本上不太可能完成,所以推测图片中应该有其他隐含图片编号的信息。但图片中没有可以直接利用的信息,用010Editor
查看文件,发现文件尾FFD9
之后还有冗余信息,是一个数字,每张图片都有这个数字且都不一样,猜测这应该就是图片编号了。
这里我用Python脚本获取每个文件最后两个字节,并用这两个字节重命名文件,便于用PS时弄清图片顺序,直接附上Python脚本,代码写得很烂,只是图完成功能,希望大佬路过可以给点建议。
import os
from PIL import Image
#目录路径
dir_name = r"./"
#获取目录下文件名列表
dir_list = os.listdir('./')
#print(dir_list)
#从列表中依次读取文件
for file in dir_list:
if '.jpg' in file:
f=open(file ,'rb')
n1 = str(f.read())
n2 = n1[-3:]
#经过测试发现这里要读取最后3个字节,因为最后还有一个多余的字节,不知道是不是转字符串的原因导致在末尾多了一个字符
#print(file) #输出文件内容
#print(n2)
f.close() #先关闭文件才能重命名,否则会报`文件被占用`错误
os.rename(file,n2+'.jpg') #重命名文件
执行脚本,文件被重命名为编号。
ps:注意最后这些序号为90多的,其实前面的9
是jpg文件尾FFD9的9,实际上这些序号为90多的应该是个位数,也就是1,2,3,……,拼接的时候要注意一下
PS
拼接一下,效果如下图:
扫描结果为:
BASE Family Bucket ???
85->64->85->13->16->32
翻译翻译就是base全家桶
,也就是base家族
。
现在再来看看压缩包flag.zip
,打开压缩包可以看到除了一个flag.txt
的加密文件外,还有一段备注信息,根据题目提示应该是base加密过的:
GNATOMJVIQZUKNJXGRCTGNRTGI3EMNZTGNBTKRJWGI2UIMRRGNBDEQZWGI3DKMSFGNCDMRJTII3TMNBQGM4TERRTGEZTOMRXGQYDGOBWGI2DCNBY
根据二维码扫描结果:
BASE Family Bucket ???
85->64->85->13->16->32
下面的数字提示了是按照此顺序进行base转换的,我们只要把字符串逆着顺序转换一下,应该就可以得到原来的文本。
但是base家族中没有base13,所以这里的13应该是Rot13
。
我们的转换顺序应该如下
base32->base16->Rot13->base85->base64->base85
在线base编码转换工具:base编码转换。
接下来按顺序解码:
base32:
3A715D3E574E36326F733C5E625D213B2C62652E3D6E3B7640392F3137274038624148
base16:
q]>WN62os<^b]!;,be.=n;v@9/17'@8bAH
Rot13:
:d]>JA62bf<^o]!;,or.=a;i@9/17'@8oNU
base85:
PCtvdWU4VFJnQUByYy4mK1lraTA=
base64:
<+oue8TRgA@rc.&+Yki0
base85:
ThisIsSecret!233
最后得到ThisIsSecret!233
,这应该就是压缩包密码了,解压一下flag.zip
,即可得到flag
flag{Qr_Is_MeAn1nGfuL}
完
以上是关于BUUCTF[安洵杯 2019]吹着贝斯扫二维码的主要内容,如果未能解决你的问题,请参考以下文章
BUUCTF:[安洵杯 2019]easy_serialize_php