图片隐写术

常见的图片的二进制头文件开头

jpg格式的图片,以FFD8开头,以FFD9结尾、

gif文件的东西,47464938,一串数字,蛮好记的

有时候压缩包是损坏的,觉得他是一个压缩包,就可以改一下他的文件头,改成504B0304啥啥啥的,就可以以zip格式打开了

南邮平台上面有两个gif的题目,蛮有意思的

通常会在图片里隐藏一些其他的奇奇怪怪的东西,比如另一张图片,也比如说zip包(顺便说一下,zip包的头文件格式为504B0304)

交flag的时候,有时候试着把flag反过来交,或许就对了呢

还有一个东西叫图种,就是图片里面藏着种子(老司机~)

把图片保存下来改成zip解压一下就得到你要的种子了~~~

还有一个小东西binwalk,可以分析图片的什么东西的偏移量查看里面有什么奇怪的东西

还有dd命令,常用就知道是什么东西了

还有一个小东西是是foremost,不过可能经常出错,使用时要注意

winhex和010 editor是很好用的二进制编辑器,winhex下使用alt+G可以跳到指定偏移量。

菜鸡感觉010editor太高端了,还是winhex优雅轻量级~

一张图片里面可以藏着很多东西,有时候用hex打开就可以看16进制就可以看得到很多奇怪的东西吧

 

 

PNG文件是无损格式的图片

常见的有lsb隐写,如果通过binwalk跑出来里面发现有zlib文件或者data数据,一般就是lsb隐写,通过stegsolve可以将最低通道的数据提取出来

还有如果发现打不开的话要注意查看crc32的值,可能是因为修改了长宽使得png文件扭曲无法查看(win忽略crc32的效验,可以直接打开,但是因为扭曲过一般无法查看出来,linux下是严格要求的,如果不匹配的话文件是无法打开的)

一般处理方法就是通过爆破来搞定匹配,从而找出正确的长宽(要熟悉png的文件格式)

 

爆破代码如下

import binascii
def burp_crc(check):
  for w in range(0x500):
    for h in range(0x500):
      a=('494844520000'+hex(w)[2:].rjust(4,'0')+'0000'+hex(h)[2:].rjust(4,'0')+'0802000000').decode('hex')
  if (binascii.crc32(a) & 0xffffffff) == check:
    print '%d*%d' % (w,h)
    return;
burp_crc(0xF37A5E12)

 

python大法好,010比winhex更加优秀,我错了。。。

 

转载于:https://www.cnblogs.com/PoxLove3/p/7123099.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值