bugkuctf 猫片 安恒杯

本文详细记录了解决安恒杯Misc类别挑战的过程,涉及位操作、LSB、BGR、PNG图片、二维码、NTFS隐写等技术。通过分析文件、使用工具如binwalk、stegsolve、Notepad++、HxD和Ntfs Streams Editor,最终成功解密获取flag。
摘要由CSDN通过智能技术生成

安恒杯 misc猫片

这是一道十分绕的题目,但是做不出来说明确实是我自己太菜了,又学到了点做题的方法,这里总结一下。

下载这个文件,用binwalk分析了一下,发现并没有隐藏在里面的东西,改文件后缀名称为.png,发现一张图片

我们对它用stegsolve打开,也没有发现更多的信息,看到了提示里面有LSB BGR.
LSB:MSB是Most Significant Bit的缩写,最高有效位。在二进制数中,MSB是最高加权位。与十进制数字中最左边的一位类似。通常,MSB位于二进制数的最左侧,LSB位于二进制数的最右侧。
BGR:和RGB有点儿区别,也是一种色彩体系
正好在stegsolve 似乎见到过这几个参数,打开后发现:

在这里插入图片描述

发现了一张png图片,复制到Notepad++里面,复制出来然后到hxd生成图片,得到一张二维码
由于显示的不全,所以用tweak工具打开,然后进行脚本跑,得到正确的高度

import os
import binascii
import struct 
misc = open("2.png","rb").read() 
for i in range(1024): 
	data = misc[12:16] + struct.pack('>i',i)+ misc[20:29] 
	crc32 = binascii.crc32(data) & 0xffffffff
	if crc32 == 0x286c213a:
	 	 print (i)

得到高度280,然后进行扫码,但是得到的二维码是个色彩反着的,用画图工具反色(ctrl+shift+i)改回来。
得到:

扫码得到一个盘的信息,有一个压缩包,解压还出错了,看到了flag.txt,最后还是不在txt里,看到了最后一个提示,搜了一下竟然存在ntfs隐写,下载工具Ntfs Streams Editor

工具地址

用Ntfs Streams Editor对解压的数据进行过滤,一定要用WinRAR解压,不然没有效果

导出所选文件,然后进行python的反编译

安装 python uncompyle6 库,在cmd下执行命令:

uncompyle6 -o . flag.pyc

注意的是,-o 后面有个点儿,而且生成的py文件会没有注释的内容,得到脚本

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值