二维码
步骤1、kali使用 binwalk 查看是否有包含文件
binwalk 文件名
有包含文件,就分离文件
foremost 原文件名
foremost 需要下载
输入:apt-get install foremost
如果不行,则输入:sudo apt-get update
在输入:apt-get install foremost
使用 foremost 分离的文件在 output 文件夹下
找到打开后就可以发现压缩包提取出来,点进去发现压缩包加密了,这里需要我们对压缩包进行爆破
(题目的 4number 提醒我们密码是四位数)
爆破方法一:
使用 john 对 hash 值进行破解
先生成 hash 文件
zip2john 文件名 >> hash
john hash
爆破出来的密码:7639
爆破方法二:
使用fcrackzip工具
fcrackzip -b -c1 -u -l4 待破解的zip文件名
-b:表示蛮力破解
-c1:表示是数字【0 ~ 9】
-u:尝试通过使用猜测的密码调用unzip来解压缩第一个文件
-l4:表示密码长度最小值,最大值可以省略
-h,--help
打印版本号和(希望)提供一些有用的见解。
-v,--verbose
每个-v会使程序更冗长。
-b,-蛮力
选择蛮力模式。这将尝试您指定的字母的所有可能组合。
-D,-字典
选择词典模式。在这种模式下,fcrackzip将从文件中读取密码,该文件每行必须包含一个密码,并且应按字母顺序排序(例如,使用 (1) )。
-c,-charset字符集规范
选择要在蛮力破解中使用的字符。必须是以下之一
a包含所有小写字符[az]
A包含所有大写字符[AZ]
1个包括数字[0-9]-p,--init-password字符串
将蛮力搜索的初始(起始)密码设置为 string ,或使用带有名称 字符串 的文件来提供字典搜索的密码。
-l,--length最小值[-max]
使用长度为min的初始密码,并检查所有密码,长度不超过max的密码(包括)。您可以省略max参数。
-u,--use-unzip
尝试通过使用猜测的密码调用unzip来解压缩第一个文件。如果没有提供足够的文件,这可以消除误报。
-m,-方法名
使用方法编号“名称”代替默认的破解方法。开关 --help 将打印可用方法列表。使用 --benchmark 查看哪种方法在您的计算机上效果最佳。该 名称 也可以使用的方法的数目。
-2,-取模r / m
仅计算密码的r / m。尚不支持。
-B,-基准
做一个小的基准,输出几乎没有意义。
-V,--validate
饼干是否正常工作,请做一些基本检查。
拓展:
看到有前后两个 PK 基本就说明包含了 zip 文件,09 00 表示加密;00 00 表示未加密
大白
根据题目的提示,可能和图片的分辨率有关,那就改变图片大小试试
wireshark
把数据包载入 wireshark
使用语句过滤其他数据
http.request.method=="POST"
POST 数据包:POST 向指定资源提交数据进行处理请求(用 POST 进行用户数据安全提交)
用户登录操作常用的有两种方式:GET 和 POST
双击查看详细数据:
N种方法解决
程序打不开,我们直接用文本的方式将其打开
看到有 base64 的关键字眼,说明与 base64 加密有关,直接上加解密网站
解密后发现是一串 png 格式的代码,说明很可能是图片转 base64 ,所以搜索相关网址直接转
是一个二维码,下载下来了扫描即可得到结果
面具下的flag
解压得到一张图片
拖进HxD
很明显图片里面包含了zip文件,使用kali提取出来,然后使用john爆破发现破解不了,说明可能是伪加密,把提取出来的压缩包载入HxD中
找到zip文件十六进制数据的第三部分(每一部分开头都是 PK 对应的数据:50 4B),往后一点 找到 00 90 ,把 90 改成 00 就可以解压了,注意,如果文件没有加密,那么数据就是 00 00
解压后是一个 vmdk 文件
使用 kali 自带的 7z 解压
7z x flag.vmdk -o./
解压出四个文件夹
key 里面就有我们需要的 flag 关键信息
找到这两个文件
类似左边这种是 brainfuck 编码
类似右边这种是 ook!编码(全是ook)
找到对应的解码工具进行解码即可
Brainfuck/Ook! Obfuscation/Encoding [splitbrain.org]
两部分拼接起来就可以了
flag{N7F5_AD5_i5_funny!}
来首歌吧
打开发现是音频文件,载入 Audacity
发现上面还有一栏,直接放大看看
短一点表示 " . ",长一点表示 " - "
所以是
..... -... -.-. ----. ..--- ..... -.... ....- ----. -.-. -... ----- .---- ---.. ---.. ..-. ..... ..--- . -.... .---- --... -.. --... ----- ----. ..--- ----. .---- ----. .---- -.-.
翻译得到
flag{5BC925649CB0188F52E617D70929191C}