CTF天天练:杂项之“隐写2”

每天一道,逐步提升,持之以恒,贵在坚持

该题为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"

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180504G1WJXB00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券