CTF常用隐写套路
隱寫術是一門關于信息隱藏的技巧與科學,所謂信息隱藏指的是不讓除預期的接收者之外的任何人知曉信息的傳遞事件或者信息的內容。隱寫術的英文叫做Steganography,來源于特里特米烏斯的一本講述密碼學與隱寫術的著作Steganographia,該書書名源于希臘語,意為“隱秘書寫”。
? ? ? ? 在CTF題目中,圖片隱寫題屬于雜項的一部分,題目較為簡單。本文大致梳理了下CTF比賽中圖片隱寫題的常用套路,如果未能看出題目破題點,可按照以下方法順序逐一嘗試:
?
1.??? 查看圖片基本信息(對應題目難度:低)
? ? ? ?該類題通過查看圖片基本信息,可以直接獲取FLAG,主要方法如下:
? ? ? ? A)右鍵查看圖片屬性,檢查圖片簡介、備注中是否有FLAG;
? ? ? ? B)將圖片用編輯器工具打開,如使用記事本、notepad+、winhex,檢查是否包含FLAG;
2.??? 多圖層文件(對應題目難度:中)
? ? ? ?玩CTF的大概都聽過一個神器 - stegsolve,用它把圖片打開,該軟件也有兩種用途:
? ? ? ? A)一直按右箭頭(或者左箭頭),說不定就會出來一個二維碼 ;
? ? ? ? B)提取低位信息,這涉及到圖片隱寫的一個大類,lsb隱寫,一般都藏在0,1,2這些低位里面,在軟件功能選項中查看Analyse→Data Extract,逐個調試。
?
?
3.??? 復合文件(對應題目難度:中)
? ? ? ? CTF比賽中經常碰到png文件中復合其他文件的情況,如就是圖片后面再放點壓縮包、txt文檔、或者再添加一張圖片,具體操作方法如下:
copy /b a.jpg+b.zip c.jpg
copy /b a.jpg+b.txt c.jpg
copy /b a.jpg+b.jpg c.jpg
解題思路:通常這類圖片比較大,可將圖片后綴改為zip或者rar,解壓即可。也可以用winhex找圖片的開頭結尾標志,手動分離出來,也可以使用kali下的工具binwalk或者foremost分出來;
??? 注:比較高級點的圖片隱藏圖片的話,有的會把第二張圖片頭給去掉,然后把兩張圖片合在一起,這樣那些提取工具就沒用了,這個時候需要稍微細心點,用winhex找第一張圖片的尾部,然后把第二張圖片的頭給加一下,再進行分離操作。
?
4.??? 改圖片高度(對應題目難度:中)
? ? ? ?CTF比賽中可利用16進制編輯工具更改圖片的高度,使圖片只顯示一部分,下面的部分被隱藏,嗯,這是個藏東西的好辦法!
? ? ? ?當以上方法均不可以得到FLAG,且圖片長寬比例詭異時,可以嘗試改圖片大小,下面介紹找圖片寬度和高度的標志位的方法:
? ? ? ?A)對于png文件,其第二行第六列是高度位,改這一位即可;
? ? ? ?B)對于其他格式圖片,可以先看看圖片的屬性,得到寬高值,轉成16進制數,搜索該16進制值就能找到標志位了;
?
? ? ? ? 本文僅列舉了幾種博主目前遇到的CTF圖片隱寫套路,歡迎大家補充!
總結
- 上一篇: VPB生成地形小结
- 下一篇: 翻译记忆软件-塔多思TRADO经典教程_