MISC-隱寫的總結


MISC-隱寫的總結

這周做了幾個隱寫題,感覺非常有趣。看了許多大佬的博客,最終才完整的做完這些隱寫題。爲了加深自己的理解,還是有必要總結一下的。畢竟學以致用,學以會用!!

解隱寫題的一般思路:

  • 首先看看圖片是不是圖種
  • 然後使用binwalker分析圖片,如果是有文件合成,分離
  • 有時信息藏在備註中
  • 工具stegsolve
  • 編程分析

1、LSB隱寫

簡介:

LSB(英文 least significant bit)即最低有效位。LSB加密是信息隱藏中最基本的方法。由於人們識別聲音或圖片的能力有限,因此我們稍微改動信息的某一位是不會影響我們識別聲音或圖片的。

用法:

通常來說LSB加密用在無損壓縮的數據格式文件中,例如圖像中的png格式、bmp格式和音頻的wav格式。由於這三種格式未對源數據進行有損壓縮,因此可以將信息隱藏起來。

對於圖像文件LSB的特徵很明顯,通常將信息隱藏在某一個顏色通道中。我們可以查看圖片的每個像素點的RGB值,或者使用stegsolve工具進行查看。 stegsolve工具下載

需要下載Java配置Java環境或者只下載Java,用Java打開stegsolve.jar文件

由於圖像是由像素構成的,每個像素有8位(對於BMP圖像來說),通常最後一位的變化,通過肉眼是無法察覺的

例1:

下載題目文件並解壓後,發現一個名叫taqing.png的圖片。因爲題目是“LSB”,所以這張圖片應該進行了LSB隱寫。

用stegsolve打開taqing.png,並選擇Analyse的Data Extract

在這裏插入圖片描述

把Red、Green、Blue的最低有效位0那一列打對勾(原因),並點擊Preview,在最上面會發現flag了!!

在這裏插入圖片描述

flag是flag{have a good time!}

例2:

下載題目文件並解壓後,發現一個名叫LSBencode.png的圖片。因爲題目是“LSB2”,所以這張圖片也應該進行了LSB隱寫。

用stegsolve打開LSBencode.png,並選擇Analyse的Data Extract

在這裏插入圖片描述

把Red、Green、Blue的最低有效位0那一列打對勾(原因),並點擊Preview,在最上面會發現flag了!!

在這裏插入圖片描述

2、盲水印

由題目可知,此題爲盲水印,所以使用bwm腳本(python2)另一個腳本decode腳本。

bwm腳本 decode腳本

並且這兩個不完全一樣,用其中一個加上水印,用另一個解不開,所以還是都存起來吧。

運行腳本發現沒有cv2這個模塊,使用下面的命令安裝cv2
pip install opencv-python

接下來:

如果是bwm腳本運行

python bwm.py decode 1.png 2.png flag.png

其中1.png和2.png是解壓所得圖片,flag.png是所分離出來的水印。

如果是decode腳本運行

python decode.py --original 1.png --image 2.png --result flag.png

其中1.png和2.png是解壓所得圖片,flag.png是所分離出來的水印。

另外推薦一個加盲水印和分離盲水印的神器:WaterMarkH下載

例:

下載題目文件並解壓後,發現兩張圖片:text.jpg和text2.jpg。因爲題目是“盲水印”,所以這道題應該是找盲水印。

在這裏插入圖片描述

把文件後綴改成.png格式,結果我試了兩個腳本都沒有找到盲水印,我以爲是因爲python版本的問題,然而並不是。。。所以這道題應該是使用WaterMarkH加的盲水印,所以直接使用這個工具就找到了盲水印

在這裏插入圖片描述

3、雙圖

例:

下載題目文件,解壓出來就是雙圖first.png和second.png,先用stegslove打開first.png保存反色圖片爲1.bmp

在這裏插入圖片描述

然後打開保存的反色圖片1.bmp,選擇stegslove的image combiner結合second.png,保存結合的圖片爲solved.bmp

在這裏插入圖片描述

然後打開保存的結合圖片solved.bmp,再用stegslove對二維碼變化一下,得到三張二維碼

在這裏插入圖片描述

在這裏插入圖片描述

在這裏插入圖片描述

掃描結果是DES 6XaMMbM7
和一長串字符,很顯然是des加密,祕鑰是6XaMMbM7,然後對長串字符進行DES解密,即可得到flag!!

4、畫圖

例:

在這裏插入圖片描述

根據題目可知,此題是畫圖
在這裏插入圖片描述

用winhex打開發現圖片後面有很多的數據

在這裏插入圖片描述

複製下來保存爲1.txt文件用notepad++轉換一下編碼

在這裏插入圖片描述
在這裏插入圖片描述
這就是座標了,這樣來畫圖吧 轉換成gnuplot能識別的格式

在這裏插入圖片描述

在這裏插入圖片描述
保存1.txt文件,下載gnuplot畫圖工具,把1.txt文件和畫圖工具放入同一路徑,打開gnuplot.exe,輸入命令plot "1.txt"進行畫圖

在這裏插入圖片描述
掃描二維碼,即可得到flag!!

隱寫題總結之後,果然讓我對此更加理解了,開心!!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章