CTF练题(2) png图片修改宽高典型例题
题目概述:
题目附件:
图片 不方便打开。
解题思路:
(1)根据题目提示(要是图片长一点该多好......),暗示图片宽高参数被修改,将图片拖进kali虚拟机中进行验证,发现图片为损坏状态,确定为宽高被修改类型。
(2)此处我们可以使用python3进行crc32爆破,通过枚举的方式获得正确的图片宽高 。先把图片拖进winhex中分析,获得图片的crc码,如下:
黑色矩形框住的为该图片的crc码,蓝色的为宽高数据。
(3)爆破代码如下,有借鉴成分。
#使用python3爆破png图片的宽高数据 import os import binascii import structfor i in range(20000):#一般 20000就够wide = struct.pack('>i',i)for j in range(20000):high = struct.pack('>i',j)data = b'\x49\x48\x44\x52' + wide+ high+b'\x08\x02\x00\x00\x00'#因为是 Py3,byte和str型不能直接进行运算,要写把 str写 b'...'。不然把 wide和 high写成 str(...)crc32 = binascii.crc32(data) & 0xffffffffif crc32 == 0x889C2F07: # 0x889C2F07是这个 png文件头的 CRC校验码,在 21~25byte处print('\n\n',i,j,crc32) #0x 后的数字为十六进制中crc位置的代码(winhex左016,13-下一行的0)print(type(data))exit(0)print(i,end=' ')
可以得知原图的宽高分别为365,645像素(十进制),使用计算器将其转化为十六进制数为:
16D,285。
(4)在010中打开题目附件图片,对宽高数据进行修改:
将高的185改为285,另存图片到桌面,结果更改后的图片如下:
此为修改后的原图隐藏部分,获得flag。
(5)提交答案。
解答完毕。
CTF练题(2) png图片修改宽高典型例题相关推荐
- ctf 改变图片高度_通过CRC32爆破修改图片的宽高 ctf-misc图片隐写
** 一.在处理图片隐写题的时候,可能会修改图片原有的宽高,导致图片里面的内容无法正常显示,那么怎么判断它的宽高是否被修改了呢? ** 1.把图片拖进010editor中会发现左下角提示CRC不匹配, ...
- 通过CRC32爆破修改图片的宽高 ctf-misc图片隐写
** 一.在处理图片隐写题的时候,可能会修改图片原有的宽高,导致图片里面的内容无法正常显示,那么怎么判断它的宽高是否被修改了呢? ** 1.把图片拖进010editor中会发现左下角提示CRC不匹配, ...
- linux 读取png图片大小,读取 png 图片的宽高信息
#include // 保留,在读取 png 头部信息的是,每次读取到 0D 0A 读取就会产生错误,如果 0D 0A 修改为其他的数据,则数据可以正常读取,不知道为什么 ----文件打开的时候, 将 ...
- RT/Metro商店应用如何如何获取图片的宽高
RT/Metro商店应用如何如何获取图片的宽高 var file = await StorageFile.GetFileFromApplicationUriAsync(new Uri("ms ...
- php 获取图片的宽高,JS怎么获取图片当前宽高
JS获取图片当前的宽高,我们可以使用JavaScript clientWidth和clientHeight属性来实现获取.clientWidth.clientHeight属性表示获取图像的当前宽度和高 ...
- php 改变图片的宽高,php缩放图片(根据宽高的等比例缩放)示例
php缩放图片(根据宽高的等比例缩放)示例 发布于 2014-12-07 08:53:31 | 149 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本语言PHP(外文名: Hyperte ...
- 图片 + 未知宽高 + 垂直居中
图片 + 未知宽高 + 垂直居中 第一种: table-cell / inline-block + vertical-align 条件: 容器宽高受图片默认宽高影响 html结构: <div&g ...
- php根据图片地址获取图片原始高宽,Js获取图片原始宽高的实现代码
如果我们页面看到的图片都是缩略图,那就需要做个图片点击放大效果,那么怎样获取图片的原始宽高呢?方法如下: //获取图片原始宽度 function getNaturalWidthAndHeight(im ...
- 原生图片预览实现及由此引出的图片自适应宽高问题探索
看到手机相册,突发奇想:能不能用实现一个原生的页面"相册"?或者说,传统网页中怎么实现图片预览功能? 如果在原生网页中使用插件,那必不可少的要引入一堆东西(并不是鄙视插件,只是为了 ...
最新文章
- 何恺明团队推出Mask^X R-CNN,将实例分割扩展到3000类
- 从Asp.net转到Php之调试
- [Google Guava] 9-I/O
- 15 个必须知道的 Chrome 开发工具技巧
- Haskell语言实现判断一个整数是否是质数的代码及运行结果
- oc58--Category注意事项
- 用Microwindows(Nano-X)编写“hello world”
- 深度学习 Deep Learning UFLDL 最新Tutorial 学习笔记 4:Debugging: Gradient Checking
- Docker基本命令入门
- 基于JAVA+Servlet+JSP+MYSQL的银行账户管理系统
- 微博上一些有用的话(四)
- java程序员中英文简历_Java程序员英文简历范文
- 创新工场 蔡学镛SINA微博中向我们提及的书籍、文章统计 (二)
- “客户机操作系统已将 CD-ROM 门锁定,并且可能正在使用 CD-ROM,这可能会导致客户机...” 报错解决办法
- 分治——最近点对问题
- 年薪60w的程序员与年薪6w的极品程序员,差距怎么这么大呢?
- [转] 海尔集团CEO张瑞敏演讲《人不成熟的几大特征》
- 大学c语言机试是老师阅卷么,最近,我们找了一些老师聊了聊
- suspense源码分析
- Java利用递归算法实现24点游戏