ctfshow |
您所在的位置:网站首页 › 怎么让psd文件显示缩略图 › ctfshow |
图片篇(基础操作) MISC 1 图片内容就是flag,利用提取微信或者qq中提取文字即可免于手打 MISC 2
也可以用winhex打开,发现是png格式 MISC 3 解压后是bpg图片,正常不能打开,需要使用能查看bpg图片的软件打开 ./bpgview.exe E:\学习资料\ctf\MISC\misc3\misc3.bpg 或者用Honeyview打开 MISC 4 解压后有四个txt文件 JPEG 文件头:FF D8 FF 文件尾:FF D9 TGA 未压缩的前4字节 00 00 02 00 RLE压缩的前5字节 00 00 10 00 00 PNG 文件头:89 50 4E 47 0D 0A 1A 0A 文件尾:AE 42 60 82 GIF 文件头:47 49 46 38 39(37) 61 文件尾:00 3B BMP 文件头:42 4D 文件头标识(2 bytes) 42(B) 4D(M) TIFF (tif) 文件头:49 49 2A 00 ico 文件头:00 00 01 00 Adobe Photoshop (psd) 文件头:38 42 50 53 可以得出第一个为png,第二个为jpg,第三个为BMP,第四个为gif,第五个为tif,第六个为webp
ctfshow{4314e2b15ad9a960e7d9d8fc2ff902da} MISC 5 用winhex打开,可以找到ctfshow MISC 6 用winhex打开,可以找到ctfshow MISC 7 用winhex打开,可以找到ctfshow MISC 8 首先使用binwalk 用foremost分离,发现里面有两张图片,其中一张有flag MISC 9 用winhex打开,可以找到ctfshow MISC 10 首先binwalk一下,发现有两个Zlib compressed data 将文件分离出来 第一个文件就是flag MISC 11 Binwalk一下 发现有两个Zlib Zlib是PNG IDAT块数据可选的压缩格式 Binwalk -e之后会对我们的Zlib进行自动解压 用工具TweakPNG打开,删掉第一个IDAT块 MISC 12 用PNGDebugger跑了一下,但是发现没有出错的IDAT块 知识点 PNG Debugger 可以进行读取 PNG 图片的数据,检测各数据块中的 CRC 是否正确,在 Windows 下使用。 CRC 码是 循环冗余校验码 的简称,是 png 图片中一种的数据, 是目前使用非常广泛的数据校验方式,不仅能校验传递过来的数据正确性,还能筛查出哪一位出现了错误。 比如可用于判断 png 图片的宽和高是否正确 发现都没问题 看网上的wp显示删掉前八个IDAT MISC 13 题目提示flag位置在图片末尾。 用tweakpng发现IEND块长度异常,正常来讲它的长度应该是0,但是这里为2,一开始不知道多的这个块有啥意思 看网上提示多的那两位是flag的位置,才恍然大悟,这里也加了混淆,即需要隔位取,所以不能直接strings出来 写一个脚本 a="631A74B96685738668AA6F4B77B07B216114655336A5655433346578612534DD38EF66AB35103195381F628237BA6545347C3254647E373A64E465F136FA66F5341E3107321D665438F1333239E9616C7D" r = '' s=bytes.fromhex(a) for i in range(0,len(s),2): r+=chr(s[i]) print(r) #fromhex函数把一串16进制字符,每两位转换成16进制的对象 得到flag ctfshow{ae6e3ea48f518b7e42d7de6f412f839a} MISC 14 binwalk后发现一张JFIF图片 直接在010里面搜JFIF找到文件头 MISC 15 用WinHex打开看 MISC 16 用binwalk试试 可以看见有一个lzma算法的压缩文件,(这种文件的后缀名为.lzma,可以用7-zip打开) 打开打打dd4 即可获得flag MISC 17 zsteg工具:用于检测被隐写在png,bmp图片里的数据。 先binwalk分析,没啥问题,然后试试zsteg 发现隐藏的数据,位置处于extradata:0;有3544 bytes的隐写内容 将数据提取出来: zsteg -E "extradata:0" misc17.png > 1.txt 然后再binwalk -e把1.txt中的数据分离出来,拿到flag binwalk -e 1.txt MISC 18 提示:flag在标题、作者、照相机和镜头型号里 右键属性查看 ctfshow{325d60c208f728ac17e5f02d4cf5a839} MISC 19 根据提示:flag在主机上的文档名里 直接使用网站查看: EXIF信息查看器 ctfshow{dfdcf08038cd446a5eb50782f8d3605d} MISC 20 方法如上 或者利用kali ctfshow{c97964b1aecf06e1d79c21ddad593e42} MISC 21 根据提示:flag在序号里 发现序列号是串hex,提示hex(X&Ys) 刚好exif信息里还有两组XY,分开hex再合起来就是flag 因为我们知道 flag的规律 直接提交肯定不对 所以需要把 xy 四段转为 16进制 然后在加上flag格式。 3902939465237161861910824528172980145261 #转16进制 即可 ctfshow{e8a221498d5c073b4084eb51b1a1686d} MISC 22 提示:flag在图片里 知识点: ThumbnailImage 缩略图 JPEG图片采用了有损压缩的方式,其过程比较复杂。过去的JPG图片是不含内嵌缩略图的,但现在为了能让大家快速查看其缩略图,研发PEG格式的专家组就制定了多一项标准在图片文件中记录了一些EX℉信息。数码照相机拍出的图片带有相机的很多参数,这都属于EXIF信息,其中缩略图也是一部分。缩略图其实是一幅较小的JPEG图片,存储在EXIF信息段,因此这个缩略图是内嵌在图片文件里面的。支持EX℉信息内嵌缩略图数据库的片格式的图片除了JPEG格式(.jpg、jpeg、jpe),还有PSD、PDD、EPS、TIF、TIFF等格式。 使用工具exiftool https://www.rmnof.com/article/exiftool-introduction/ 使用命令: exiftool -ThumbnailImage -b misc22.jpg > 1.jpg 工具命令: 1:-b (-binary) 以二进制输出元数据 2:生成image.raw的缩略图thumbnail.jpg exiftool -ThumbnailImage -b misc22.jpg > 1.jpg 打开1.jpg即可 或者使用工具MagicEXIF打开也能看到缩略图 MISC 23 提示:flag在时间里。 可以看到flag的形式, UnixTimestamp, DECtoHEX, getflag Timestamp指的是时间戳,DECtoHEX是十进制转十六进制 (decimalism十进制,hexadecimal十六进制) 根据提示 History When : 1997:09:22 02:17:02+08:00, 2055:07:15 12:14:48+08:00, 2038:05:05 16:50:45+08:00, 1984:08:03 18:41:46+08:00 +08:00是转换为北京时间的意思 UTC是国际时,UTC+8就是国际时加八小时,是东八区时间,是北京时间。 GMT就是指格林尼治所在地的标准时间,+8:00就是东八区的时间,即北京时间。 时间戳(Unix timestamp)转换工具 - 在线工具 874865822 2699237688 2156662245 460377706 #全部转为16进制 在将转换后的时间戳转为16进制,将四段都这样处理拼起来套上ctfshow{}即可 ctfshow{3425649ea0e31938808c0de51b70ce6a} MISC 41 这题还是比较有意思的 根据提示:H4ppy Apr1l F001's D4y! 愚人节到了,一群笨蛋往南飞,一会儿排成S字,一会儿排成B字。 使用Editor 打开 搜索 F001 可以看到 ctf 的样式 把他提取 出来即可 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |