每天一道,逐步提升,持之以恒,贵在坚持
该题为bugku的杂项题
1.下载图片并打开
2.将图片拖入kaili里使用 foremost 命令 或者 binwalk -e 对图片进行分解
这里我用的是foremost
3.发现图片分解出一个压缩包。
4.将压缩包拖回window,打开发现一个flag.rar 和 一个图片文件
5.flag.rar 需要密码,jpg提示是3位数密码
6.根据提示,进行爆破密码。注意:这里有个坑
用notepad++ 打开 flag.rar 查看文件头。
看到PK,其实这是个zip,而非 rar。可以用zip破解软件进行爆破,也可以自己写python 爆破。
7.用zip软件爆破flag.rar的密码(我首先设置的纯数字爆破)
8.密码为871。
9.打开flag.rar。发现一张图片。
10.用notepad++ 打开图片,在尾部发现:
f1@g
11.如果你有经验,应该发现eTB1IEFyZSBhIGhAY2tlciE=是base64加密后的字符串。将{}中内容进行base64解密。得:y0u Are a h@cker!
12.组合起来就是 :f1@g
坑又来了,把这个flag提交,显示不对。经过多方尝试发现将f1@q 替换成 flag提交即可。
正确的flag为:flag
小结:本题主要知识点有,图片隐写压缩包,压缩包爆破密码、base64 解密
总的来说,综合性较强。
小知识:将一个图片和一个压缩包,合并成一个图片。在cmd使用下面的命令
copy /b 1.jpg+1.zip 2.jpg
破解zip密码的python脚本:
#encoding:utf-8
import zipfile
#读取zip文件
z = zipfile.ZipFile("flag.rar")
#生成3位数字密码字典列表
zidian=[]
for i in range (0,1000):
zidian.append(str(i).zfill(3));
#爆破zip密码
for i in zidian:
try:
z.extractall(path='flag_level_2',pwd=i)
print 'the password is :',i;
break
except Exception as e:
print "err"
领取专属 10元无门槛券
私享最新 技术干货