文章目录

  • 前言
  • 1、图片分析:
  • 2、如何分离:
    • 2.1、binwalk 分离:
    • 2.2、foremost 工具分离:
    • 2.3、hex编辑器分离:
    • 2.4、改后缀名:

前言

CTF中经常会碰见图片隐藏文件的题目,今天就来总结一下分离隐藏文件的几种方法。


1、图片分析:

如图为CTF题目中一个隐藏文件的图片

首先对图片进行分析,这里介绍一个工具binwalk(kali中是自带的,也可以下载到windows中使用)。

使用方法:binwalk + 文件路径/文件名

binwalk 1.jpg

执行命令后,binwalk就会自动分析这个jpg文件:

从分析的结果看,这个jpg文件隐藏着一个zip文件,从48221块偏移开始就是zip文件。

2、如何分离:

在得到隐藏信息后,改如何把zip文件分离出,下面介绍几种方法:

2.1、binwalk 分离:

还是使用binwalk工具,使用dd命令分离出隐藏文件:

dd if=1.jpg of=1.zip skip=48221 bs=1

解释:if 指定输入文件,of 指定输出文件,skip 指定从输入文件开头跳过48221个块后开始复制,bs设
置每次读写块的大小为1字节

执行后会得到一个1.zip文件。

2.2、foremost 工具分离:

foremost是一个基于文件文件头和尾部信息以及文件的内建数据结构恢复文件的命令行工具,win可以下载使用,Linux可以通过下面命令安装使用:

 apt-get install foremost

Linux下分离文件的命令为:

 foremost 1.jpg

执行命令后,foremost会生成output目录存放分离出的文件。

Win下是把文件直接拖到 foremost.exe上,也会生成output目录存放分离出的文件。

2.3、hex编辑器分离:

hex编辑器有很多,win下有用得较多的winhex、UltraEdit等,linux下有hexeditor等。这里我们以winhex为例来手动分离。

一个完整的 jpg 文件由 FF D8 开头,FF D9结尾,图片查看器会忽略 FF D9 以后的内容,因此可以在 jpg 文件中加入其他文件。

经过上面的分析, 知道图片中隐藏了zip文件,zip文件的开头16进制为504B0304,先搜索16进制文本 FFD9,然后后面跟着504B0304,于是就可以从 50 开始,复制到最后(因为这里只有一个zip,所以复制到最后),另存为新文件,就得到了隐藏的压缩包。


2.4、改后缀名:

分析知道隐藏文件是zip后,有一个简单粗暴的方法是直接把图片的后缀改为.zip,然后解压即可(这种方法虽然简单快速,但如果隐写了多个文件时可能会失败)。

分离图片中的隐藏文件方法总结相关推荐

  1. python 识别图片中的中文_python识别图片中文字的方法

    Tesseract 文字识别是ORC的一部分内容,ORC的意思是光学字符识别,通俗讲就是文字识别.Tesseract是一个用于文字识别的工具,我们结合Python使用可以很快的实现文字识别.但是在此之 ...

  2. 分离扫描文档方法(2) —— Dynamic Web TWAIN:如何使用条码/二维码作为扫描文档的分隔器

    在之前的文章中,我们提到了一种扫描文档的分离方法即<分离扫描文档方法(1) -- Dynamic Web TWAIN:如何使用空白页作为扫描文档的分隔器>.本文将再介绍一种扫描文档的分离方 ...

  3. svga文件如何查看_电脑隐藏文件?如何查看隐藏文件 方法简单易学

    大家好,我是小白一键重装软件的客服. 如何查看隐藏文件呢?有时候不小心把文件夹勾选隐藏后文件就消失了,到底是怎么回事呢?其实这个是电脑上面一些设置开启了文件隐藏的功能哦,那么下面小白系统带你了解下如何 ...

  4. ECCV 2020 | 视觉引导的声源分离辅助立体声重构方法 Sep-Stereo

    本文为52CV粉丝香港中文大学MMLab博士生Johann Zhou投稿. 链接:https://zhuanlan.zhihu.com/p/162689191 HighLight 本文提出了一种全新的 ...

  5. 复制网页的同时可以把图片复制下来_用华为手机“智慧识屏”功能识别图片中文字的方法...

    我们知道图片形式的文字是无法在办公办件当中进行文字编辑的 这就需要一种方法来转换格式了 一般大家常用的转换方法是微信的"传图识字"小程序,桌面端的wps需要要注册会员还要收费. 微 ...

  6. 提取图片中文字的方法

    一.什么是OCR 很早之前就听说有提取图片中文字的工具和方法,这种文字识别技术称为OCR(Optical Character Recognition).OCR技术的出现,实现了将印刷文字扫描得到的图片 ...

  7. 分离扫描文档方法(1) —— Dynamic Web TWAIN:如何使用空白页作为扫描文档的分隔器

    应用场景 您希望在网页中连接扫描仪,在网页中进行文档扫描.当您一次性扫描多个文档时,每个文档之间有一页空白页将它们分开,此时您希望在扫描完全部文档后单独保存每组文档. 解决方案 使用Dynamic W ...

  8. win7下简单隐藏文件方法

    每个人都有自己的小秘密保存在电脑上,不想被别人发现,又不好加密,这样显得太刻意,这时候选择隐藏文件是最好不过的方法了.有人说,把文件属性设为隐藏不就行了?可是这样隐藏文件是比较低级的,通过文件夹选项可 ...

  9. Mac隐藏显示隐藏文件方法

    在Mac电脑上,可以使用以下方法显示或隐藏隐藏文件: 使用快捷键 打开终端(Terminal)应用程序,并输入以下命令: 显示隐藏文件:defaults write com.apple.finder ...

最新文章

  1. gitlab合并分支后需要提交吗_阿里前端,如何基于 GitLab 进行「自动化」构建及发布...
  2. 如何在Ubuntu上使用MultiSystem创建多启动USB盘
  3. Python开发爬虫之理论篇
  4. 圈子 | 苏宁易购产品经理:平台支撑型产品的思维方式
  5. [分享]运维分享一一阿里云linux系统mysql密码修改脚本
  6. RangeAssignor(范围分区)
  7. wordpress主题部署到github pages(调研+具体操作-还没有完成)
  8. jdbc事务 jta事务_将非事务性资源绑定到JTA事务中的几种模式
  9. 哪些人不能要 哪些人不能留
  10. App性能优化之内存优化
  11. 图论算法(四)--最小生成树的Kruskal [ 加边 ] 、Prim [ 加点 ] 的解法(JAVA)
  12. 非华为手机可以用鸿蒙吗,【图片】华为鸿蒙系统的厉害之处在于 你可能非用不可 !【手机吧】_百度贴吧...
  13. MySQL事件与定时器,mysql下存储过程与定时器
  14. 张朝阳:未来文娱重点将拍更多网剧 发展UGC、短视频社交和直播社交
  15. close wait 过多原因_从Linux源码看TIME_WAIT状态的持续时间
  16. Python 炫技操作:条件语句的七种写法
  17. Django扩展 —— uwsgi+nginx部署
  18. Hadoop的map阶段流程
  19. 【生信进阶练习1000days】day4-Annotation包中mapIds函数的使用
  20. 《PMP学习笔记》1.3 五大过程组十大知识领域

热门文章

  1. 工作之后,顶会还重要嘛?
  2. 基于IndRNN的手机传感器动作识别
  3. PW Live 直播 | 北邮博士生纪厚业:异质图神经网络之模型和应用
  4. 从三大顶会论文看百变Self-Attention
  5. 当Bert遇上Keras:这可能是Bert最简单的打开姿势
  6. 丑憨批的爬虫笔记1(导学+requests))
  7. vue中页面跳转传值_vue的页面跳转方式和传值、取值
  8. 程序员35岁之后的出路_我35岁,被裁员,开始给程序员规划人生
  9. SpringBoot接口参数校验
  10. PostgreSQL mysql 兼容性之 - 字符编码转换 CONVERT