1.stegsolve.jar下載
下載地址:http://www.caesum.com/handbook/Stegsolve.jar
2.stegsolve.jar打開方法
(1)需要下載java並安裝(自行百度)
(2)安裝完java后:
1)win+R打開“運行”窗口;
2)輸入cmd打開命令行窗口;
3)進入java安裝目錄下的bin文件夾(注意查看自己的安裝路徑)
4)關聯jar文件
5)關聯完成后即可自動打開stegsolve.jar
3.stegsolve.jar使用方法
(1)提取隱藏信息
1)使用" file >> open "打開一張含有隱藏信息的圖片
2)點擊" Analyse >> Data Extract "
3)勾選如下標注的選項 (RGB即Red,Green,Blue三個顏色,圖中的7,6,…1,0即是顏色用二進制表示時的高位到低位,這里以LSB最低有效位法嵌入信息為例,所以選擇0)
(2)其他Analyse功能介紹
1)File Format: 文件格式,這個主要是查看圖片的具體信息
2)Frame Browser: 幀瀏覽器,主要是對GIF之類的動圖進行分解,動圖變成一張張圖片,便於查看
3)Image Combiner: 拼圖,圖片拼接
Stegsolve使用方法(是因為ctf題總是遇到並且目前百度沒有十分詳細的探究說明)
這個沒什么好說的,打開文件 ,保存,退出
在分析里面從上到下的依次意思是
File Format:文件格式
Data Extract:數據提取
Steregram Solve:立體試圖 可以左右控制偏移
Frame Browser:幀瀏覽器
Image Combiner:拼圖,圖片拼接
用法(使用場景)
1.File Format:這里你會看見圖片的具體信息有時候有些圖片隱寫的flag會藏在這里
2.Data Extract:(好多涉及到數據提取的時候,很多博主在wp中都是一帶而過,小白們還以為要一個個試。。)
左邊一大部分主要是講了RGBA(Alpha是透明度)的顏色通道
為了方便理解我們分開說
RGB是紅綠藍 但他們的值代表的實際上是亮度
R的數字越大,則代表紅色亮度越高;R的數字越小,則代表紅色亮度越低。G,B同理
R的亮度各有256個級別,GB同理。即從0到255,合計為256個。從數字0到255的逐漸增高,我們人眼觀察到的就是亮度越來越大,紅色、綠色或藍色越來越亮。然而256是2的8次方 所以你會看見上圖的7~0 一共8個通道
而Alpha就是透明度 該通道用256級灰度來記錄圖像中的透明度信息,定義透明、不透明和半透明區域
alpha的值為0就是全透明,alpha 的值為 255 則表示不透明
因此左半部分就理解了
右半部分就是Extra By(額外的)和Bit Order(位順序)和Bit Plane Order(位平面的順序)
1).Extra By(額外的):分為row(行)和column(縱)
每個像素用R,G,B三個分量表示,那么一張圖片就像一個矩陣,矩陣的每個單位就是(0~255,0~255,0~255)
也就會有是縱排列和行排列了,一般事先訪問行再訪問列(如果相反會引起ve使用方法)
2).Bit Order(位順序):MSB是一串數據的最高位,LSB是一串數據的最低位。
3).Bit Plane Order(位平面的順序)
整個圖像分解為8個位平面,從LSB(最低有效位0)到MSB(最高有效位7)隨着從位平面0 到位平面7,位平面圖像的特征逐漸變得復雜,細節不斷增加。(一般我們的圖片如果是RGB那么就是24位 3乘8嘛)
4)Bit Plane Order(位平面的順序):一般圖片是24位 也就是3個8 大家可以想像成三明治 比如BGR就是B為三明治第一層 G為第二層 R為第三層。
3.Steregram Solve:立體試圖 可以左右控制偏移 可以放張圖片試一下就知道這個是什么意思了
4.Frame Browser:幀瀏覽器 主要是對GIF之類的動圖進行分解,把動圖一幀幀的放,有時候會是二維碼
5.Image Combiner:拼圖,圖片拼接(意思顯而易見)
接下來會帶大家實戰去深入理解一下Data Extract里面ctf經常用到的LSB隱寫
這個我們之前介紹的很詳細
而LSB隱寫就是修改RGB顏色分量的最低二進制位也就是最低有效位(LSB),而人類的眼睛不會注意到這前后的變化,(人類的眼睛只能識別一部分顏色的變化)
如果我們修改lsb那么顏色依然和沒修改的一樣,並且修改的話每個像數可以攜帶3比特的信息。
這個作用是在於把最低位的二進制全部提取出來
這個作用在於對提取出來的最低位使用lsb解碼算法