分离图片中的隐藏文件方法总结
文章目錄
- 前言
- 1、圖片分析:
- 2、如何分離:
- 2.1、binwalk 分離:
- 2.2、foremost 工具分離:
- 2.3、hex編輯器分離:
- 2.4、改后綴名:
前言
CTF中經(jīng)常會(huì)碰見圖片隱藏文件的題目,今天就來總結(jié)一下分離隱藏文件的幾種方法。
1、圖片分析:
如圖為CTF題目中一個(gè)隱藏文件的圖片
首先對圖片進(jìn)行分析,這里介紹一個(gè)工具binwalk(kali中是自帶的,也可以下載到windows中使用)。
使用方法:binwalk + 文件路徑/文件名
binwalk 1.jpg執(zhí)行命令后,binwalk就會(huì)自動(dòng)分析這個(gè)jpg文件:
從分析的結(jié)果看,這個(gè)jpg文件隱藏著一個(gè)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個(gè)塊后開始復(fù)制,bs設(shè)
置每次讀寫塊的大小為1字節(jié)
執(zhí)行后會(huì)得到一個(gè)1.zip文件。
2.2、foremost 工具分離:
foremost是一個(gè)基于文件文件頭和尾部信息以及文件的內(nèi)建數(shù)據(jù)結(jié)構(gòu)恢復(fù)文件的命令行工具,win可以下載使用,Linux可以通過下面命令安裝使用:
apt-get install foremostLinux下分離文件的命令為:
foremost 1.jpg執(zhí)行命令后,foremost會(huì)生成output目錄存放分離出的文件。
Win下是把文件直接拖到 foremost.exe上,也會(huì)生成output目錄存放分離出的文件。
2.3、hex編輯器分離:
hex編輯器有很多,win下有用得較多的winhex、UltraEdit等,linux下有hexeditor等。這里我們以winhex為例來手動(dòng)分離。
一個(gè)完整的 jpg 文件由 FF D8 開頭,FF D9結(jié)尾,圖片查看器會(huì)忽略 FF D9 以后的內(nèi)容,因此可以在 jpg 文件中加入其他文件。
經(jīng)過上面的分析, 知道圖片中隱藏了zip文件,zip文件的開頭16進(jìn)制為504B0304,先搜索16進(jìn)制文本 FFD9,然后后面跟著504B0304,于是就可以從 50 開始,復(fù)制到最后(因?yàn)檫@里只有一個(gè)zip,所以復(fù)制到最后),另存為新文件,就得到了隱藏的壓縮包。
2.4、改后綴名:
分析知道隱藏文件是zip后,有一個(gè)簡單粗暴的方法是直接把圖片的后綴改為.zip,然后解壓即可(這種方法雖然簡單快速,但如果隱寫了多個(gè)文件時(shí)可能會(huì)失敗)。
總結(jié)
以上是生活随笔為你收集整理的分离图片中的隐藏文件方法总结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 从CSRF原理到CMS漏洞利用
- 下一篇: BUU刷题记录——Misc(一)