misc刷题

发布时间 2023-11-03 16:00:47作者: Jinx8823

[CISCN 2018]Picture

题目知识点:

  • 图片隐写
  • 图片分离

0.前置知识

  • 一些文件的开头和结尾

jpeg图片开头是FFD8,结尾是FFD9

ZIP文件开头是504B0304

  • python语法

ZeroDivisionError:

除法/

整除//

取模%

这些情况除数为0都会出现上述错误

  • uuencode编码特征

包含很多"$%&,C@Y"等符号

1.下载下来是这样一张图片

image-20231102212514404

2.直接放到010里分析,开头是FFD8,是jpeg图像的开头,看结尾并不是FFD9,猜测图片是否不止一个文件,放到kali里binwalk分离一下看看

image-20231102213750187

分离出来有这样两个文件,依次放到010里查看

3.发现97E4这个文件里的内容像base64编码

image-20231102221816288

base64解码看一下,是下面这样的一段内容

image-20231102221914103

4.看到开头的KP猜测有没有可能是压缩包文件,再转成hex看看

image-20231102222046537

5.发现是压缩文件的开头设置错了位置,将它调整为正确的之后再进行分析

image-20231102222221751

6.将它保存为一个zip文件之后发现有密码

image-20231102222414095

7.根据上面这张图的倒数第二行的password提示以及前面转为base64之后的password提示,推断可知该zip文件的密码可能是

python中ZeroDivisionError:错误的提示

image-20231102222324318

根据python语法知识,会出现这个错误的是只有当除数为0的时候发生;并且当python进行除法,整除,取模时除数为0都会出现这个情况,即:

除法

image-20231102222738866

整除

image-20231102222802339

取模

image-20231102222818549

依次代入后发现是整除的情况的提示是zip文件的密码

8.用010打开zip文件中的code

image-20231102223009256

编码中有很多以下字符,猜测为UUencode编码

!”#¥%&‘()*+=

9.网上用UUencode解码,解码得到flag

image-20231102225829603