BUUCTF-Misc部分

二维码

附件压缩包下载下来是一个二维码图片
直接用工具查看
在这里插入图片描述并没有直接给出flag,猜测是压缩包文件,使用winhex查看
在这里插入图片描述
明显的提示pk,压缩文件。可以用binwalk命令分离文件,也可以直接修改后缀(部分可能会存在损坏文件的问题)
在这里插入图片描述
先复制一份副本测试一下
在这里插入图片描述
打开压缩文件发现需要输入密码,根据文件名提示,应该是要输入4位数字密码,直接爆破
在进行爆破时发生问题
在这里插入图片描述猜测是因为文件时我自己修改的后缀名,存在兼容问题,还是推荐使用binwalk分离
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

因为我的虚拟机老师出现无法复制文件到主机的问题,所以开启了文件共享
在这里插入图片描述
将分离出来的文件复制到共享文件夹
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述暴力破解得到密码
在这里插入图片描述

N种解决方案

在这里插入图片描述第一个思想就是拿winhex看一眼
在这里插入图片描述可以发现,提示我们是图片文件,只不过转码成了base64
解决方案就是在线转换
在这里插入图片描述发现是一张二维码图片
在这里插入图片描述

qr

在这里插入图片描述附件下载下来是一张二维码。直接扫
在这里插入图片描述

zip伪加密

在这里插入图片描述打开附件提示要输入密码
看下属性有无隐藏信息
没有找到隐藏的信息
winhex查看
如图所示,标栏的地方是全局方式位标记(有无加密)
在这里插入图片描述一般在压缩源文件数据区全局方式位标记处,真加密为 09 00,伪加密为00 00,而后面将压缩源文件目录区全局方式位标记处从 00 00 改为 09 00 就完成了伪加密
在这里插入图片描述

将两组14 00后的09 00 改为00 00
在这里插入图片描述修改完后弹出错误提示,查了资料明白是因为下载的不是完整版的
在这里插入图片描述完整版下载好后编辑成功
在这里插入图片描述再次打开压缩文件就不在提示需要密码

在这里插入图片描述
先写这一点练练手

### BUUCTF Snake 题目分析 在BUUCTFmisc类别中,涉及snake主题的题目通常会结合密码学基础、隐写术以及一些常见的编码技巧。以下是基于已知引用内容和专业知识对该类题目的解答方法。 #### 1. 密钥推导 根据已有信息,“anaconda”被提及作为某个cipher的密钥[^1]。这表明,在解决此类问题时,需要关注歌曲名称或其他线索中的关键词是否可以转化为加密算法所需的密钥。例如,如果题目提供了音频文件或者提示了某种动物(如蛇),则应尝试将其映射到可能的字符串形式,并测试其作用于常见加密技术的效果。 #### 2. 工具应用 对于涉及到图像或压缩包隐藏信息的情况,《BUUCTF misc 解题记录》提到使用`outguess`工具较少见但有效[^2]。此软件主要用于提取嵌入图片内的秘密消息;因此当面对`.jpg`, `.png`等形式的数据载体时可考虑运用该程序来查找潜在payloads。 #### 3. Python脚本实现逆向操作 从另一篇wp文档得知存在一段python代码用于计算flag值[^3]: ```python import binascii m = [0x410A4335494A0942, 0x0B0EF2F50BE619F0, 0x4F0A3A064A35282B] enc = "********CENSORED********" flag = b"" for i in range(3): p = enc[i*8:(i+1)*8] # 取每组8字节长度的部分 a = binascii.b2a_hex(p[::-1].encode('utf-8')) # 转换为十六进制表示后再反转顺序 temp_sum = int(a, base=16) + m[i] # 加上对应的偏移量M_i result_bytes = hex(temp_sum)[2:].rjust(len(a), '0').decode('hex')[::-1] # 处理最终结果恢复原始排列方向 flag += result_bytes print(flag.decode()) ``` 上述代码片段展示了如何通过给定参数列表`m[]`逐步还原出完整的FLAG串。它先按固定步长分割待解码序列,再逐一对各部分执行特定变换运算直至获得明文输出。 #### 4. 特殊字符处理 最后值得注意的是某些情况下特殊符号也可能成为干扰因素之一。“Nss shop”的例子说明即使看似简单的括号位置差异都可能导致完全不同的解析路径[^4]。所以在实际动手之前务必仔细阅读全部描述以免遗漏重要细节。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一名无聊的网友

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值