文章

Bugku Misc 刷题记录

Bugku Misc 刷题记录

签到题

flag{BugKu-Sec-pwn!}

这是一张单纯的图片

十六进制打开,在最后有&#字符,Unicode解码

linux

解压到最后有个flag文件,无法执行,Die打开,点击字符串,里面就有flag字符串。使用cat flag也能看到字符串

富强民主

社会核心价值观解码

隐写

评论都在随波逐流一把梭,确实牛逼,自动生成宽高修复的图片。还是研究一下吧

第二行,前四个字节是宽,后四个是高

telnet

追踪TCP流直接显示了

眼见非实

pk头,改zip,编辑器打开文件夹,搜索flag就有了

多种方法解决

KEY.exe是个图片的base64文本,type就能看,然后贴到浏览器地址栏,就有图片,扫一下就行

Linux2

Die看下字符串就有了

easy_nbt

我的世界的存档,看起来麻烦,那个level.dat file发现是gzip,然后解压,有个level,搜字符串就有

又一张图片,还单纯吗

stegsolve的frame browser可以直接看,foremost也能分离,但是kali没有预装

宽带信息泄露

这题应该算IOT吧,路由配置文件,离线不好做,要去:IoT配置文件分析工具

下载下来,发现是个xml,搜索username就行

flag{053700357621}

闪的好快

看到标题我就知道帧解析,但是18张图一个个扫真无聊

SYC{F1aSh_so_f4sT}

逆向入门

跟上面那个“多种方法解决”一模一样

请攻击这个压缩包

选择明文攻击

这篇说的很详细:ZIP已知明文攻击深入利用

利用png头作为明文进行爆破密钥,然后用密钥解密

所以命令是:

bkcrack.exe -C "C:\Users\Tajang\Desktop\file (1).zip" -c flag.png -p "C:\Users\Tajang\Desktop\file\2.png"
bkcrack 1.8.1 - 2025-10-25
[04:23:37] Z reduction using 9 bytes of known plaintext
100.0 % (9 / 9)
[04:23:38] Attack on 756025 Z values at index 6
Keys: 92802c24 9955f8d6 65c652b8
15.3 % (115404 / 756025)
Found a solution. Stopping.
You may resume the attack with the option: --continue-attack 115404
[04:24:27] Keys
92802c24 9955f8d6 65c652b8

其中-C是加密压缩包,-c是里面的文件,-p是指定明文或明文文件,爆破出密钥后:

bkcrack.exe -C "C:\Users\Tajang\Desktop\file (1).zip" -c flag.png -k 92802c24 9955f8d6 65c652b8 -d flag.png
bkcrack 1.8.1 - 2025-10-25
[04:24:48] Writing deciphered data flag.png
Wrote deciphered data (not compressed).

这里就是成功写入一个flag.png

打开看就是flag:BugKu{不是非得两个文件你才能明文攻击}

隐写3

随波逐流一把梭:flag{He1l0_d4_ba1}

PNG 是按行存储的,修改高度只是“多读了几行”,而修改宽度则彻底打乱了“每一行的开头”,所以直接改高

zip伪加密

中央目录区 (CD)的特征码是50 4B 01 02,修改这个区域内的一个特殊位就能让压缩软件认为是加密的

距离50的第八个字节就是这个特殊字节,改成奇数就是加密的,偶数就能还原成未加密

1
2
50 4B 01 02 1F 00 14 00 09 00
50 4B 01 02 1F 00 14 00 08 00

如果不行的话,开头是50 4B 03 04的,也要改后面的

1
2
50 4B 03 04 14 00 09 00
50 4B 03 04 14 00 08 00

再不行就改00

神秘的文件

压缩包里有logo.png,外面也有一个,明文攻击

但是这里明文攻击要压缩logo.png,因为明文攻击是通过对比“一段已知的加密字节”和“一段对应的未加密字节”,来反推加密密钥。

明文攻击的必要条件

  1. 文件一致:明文文件必须与加密包里的某个文件完全一模一样(CRC32 值必须相同)。
  2. 算法一致:明文包必须使用与加密包相同的压缩算法(通常是 Deflate)。
  3. 结构一致:这也是为什么要你提供一个 .zip 文件的原因,因为工具需要从这个明文 ZIP 里的 Local File Header 提取压缩参数。

由于这里用win自带的zip压缩爆破失败,用winrar可以。

爆破出密码是:q1w2e3r4

解压出docx文件,打开没什么东西,拖进die,查看字符串,发现docProps/flag.txt

所以改后缀为zip,解压进去找这个文件,文件里面是个base64的

flag{d0cX_1s_ziP_file}

split_all

首先文件打不开,看到文件头是PNG,后面又有89a,可以想到文件上传时候的GIF89a,这里就把89a对应的38 39 61之前的字节全部删除,补上GIF的47 49 46,然后另存为gif文件就行

拉进随波逐流里面逐帧分解,拉一张图片进去,点击随波逐流横向拼接图片,就会自动拼接所有

flag{9f019c27eca746beb9c297cd70bf93ca}

薛定谔的猫

跟描述一样,什么都不做

把注释里的python脚本写在本地,运行一下,密码是空,敲一下回车就行

图穷匕见

010打开发现后面大量字符,应该是16进制拼接到png的,复制下来转字符

是一大堆坐标,随波逐流里面有这个坐标转图片的模块,随波逐流不会就是照着bugku开发的吧

1和0的故事

1和0代表二维码的色块,1是黑块,要手动补二维码的三个角

但随波逐流的图片菜单里面有个JS:QRazyBox二维码解码,就直接导入

本文由作者按照 CC BY 4.0 进行授权