Steganography​​​

課前環境配置

intext : LAVI

  • 不要懷疑!又是我
  • Slides are made by CHA

Agenda

  • What is Steganography ?
    • Misc、應用
  • 先備知識
    • 進位制、畫素、檔頭
  • 工具們 Again
    • WinHex、Binwalk、StegSolve......

Warning

飲血術?隱寫術!

  • Miscellaneous
  • 不讓非預期使用者得知詳細訊息
  • 文字、圖片、聲音、影片......
  • 和數位浮水印 & 密碼學是近親

Intro

  • 安全性 + 隱蔽性 + 藏密量
  • 著重隱藏資料
    • 強健性不足
    • 被發現就GG
  • 找得到這頁藏了什麼嗎?

Feature

你該先了解這些

  • 首見於萊布尼茲的著作
    • 和牛頓一起搞微積分的混蛋
  • ​{ 0, 1, 2, ..., 7, 8, 9 } → { 0, 1 }
    • (87) 10 = (1010111) 2
    •  
  • 常見於計算機與資訊科學

Binary

1 \times2^6 + 0 \times 2^5 + 1 \times 2^4 + 0 \times 2^3 + 1 \times 2^2 + 1 \times 2^1 + 1 \times 2^0
  • NOT ( ' )
    • 0' = 1
    • 1' = 0
  • AND ( · )
    • 1 · 1 = 1
    • 0 · 0 = 0 · 1 = 1 · 0 = 0

Operators

  • 手算?寫程式?
  • Online Converter
  • (816) 10 = ( ? ) 2
    • A:1100110000
  • (11011010) 2 = ( ? ) 10
    • ​A:218

Ex.

  • (1 · 0)' = ?
    • = (0)'
    • A:1
  • (1' + 1)' = ?
    • = (0 + 1)'
    • = (1)'
    • A:0

世界上有 10 種人

  • { 0, 1, ..., 8, 9, A, B, C, D, E, F }
    • (1443) 10 = (5A3) 16 = 0x5A3
    •  
  • Online Converter
  • (61) 10 = ( ? ) 16
    • A:0x3D

Hexadecimal

5 \times16^2 + 10 \times 16^1 + 3 \times 16^0
  • American Standard Code for Information Interchange
  • 電腦常用編碼系統
    • 128個字元
    • "A" = 65 = 0x41
    • "a" = 97 = 0x61
    • "0" = 48 = 0x30

ASCII

  • Pix (Picture) + Element
  • 向量圖?點陣圖!
  • RGB (+ Alpha)
  • Gigapixel

Pixel

  • Red、Green、Blue
  • Bin、Dec、Hex、百分比......
  • 3 bytes = 3 x 8 bits (0~255)
    • True color

RGB

湊近看螢幕可能會發現

  • Magic Number
  • 用來確保檔案格式
    • 詳細資訊
    • 每種檔案都有
    • 副檔名
      • 開啟方式
    • 常用Hex表示法

Header

E.g.

好用的工具們們......

  • 免費的十六進位編輯器
  • 數位鑑識、資料修復......
  • WinHex Download

WinHex

  • Text Editor + Hex Editor
    • 層次分明的架構
    • 五彩繽紛
    • 要錢
      • 試用版!
  • 010 Editor Download

010 Editor

Lab 0x1 (5 min)

起手式:丟到工具裡瞧瞧

是個打不開的檔案

File → Open File...

找到後打開剛剛下載的meow.png

Hex

ASCII

怪怪der哦!

改成.png檔頭

PNG IHDR

IHDR

Width

Height

怎麼改才看得到喵喵呢?

Binwalk

python src\scripts\binwalk <option> <file>
  • 快速、簡單的分析檔案資料與結構

Binwalk 安裝

下載 → 解壓縮

python setup.py install

點左鍵後輸入 cmd

Lab 0x1 (cont'd) (5 min)

python src\scripts\binwalk -D=".*" -C="<folder>" <file>
python src\scripts\binwalk -e <file>

路徑 可拖拉圖片

藏了一個加密過的壓縮檔

輸入密碼解壓縮就看得到Flag囉~

  • Exchangeable image file format
  • 專門為數位相機設計
    • 屬性資訊
    • 拍攝資料
  • 右鍵 → 內容
  • 可被任意編輯

Exif

Lab 0x2 (2 min)

太簡單了!

BJ4

開始用神器搞事

  •  
  • 雙擊 or 
  • 圖片隱寫解題神器
    • Quick View
    • Simple Check
  • Online Tool

StegSolve

java -jar Stegsolve.jar
http://www.caesum.com/handbook/Stegsolve.jar

Stereogram

  • Magic Eye
  • 立體視覺圖
    • 2D圖創造出3D效果

Lab 0x3 (3 min)

看得出Flag嗎???

File → Open

找到剛剛下載的圖片

Analyse → Stereogram Solver

將圖片的Pixel整行移動

方向鍵 or 滑鼠點擊 

往左或往右 Offset 

Frame Browser

  • 觀察動圖
    • 分析每幀的畫面
    • GIF

Lab 0x4 (3 min)

似乎有個一閃而過的Flag?

File → Open → Analyse → Frame Browser

方向鍵 or 滑鼠左鍵點擊

Image Combiner

  • 合併兩張圖
    • XOR、AND、SUB、MUL......

Lab 0x5 (3 min)

給你滿滿的大平台喵喵們

File → Open → 打開原圖喵喵 → Analyse

→ Image Combiner → Lab喵喵 → 方向鍵 or 左鍵點擊

More_Jia_and_Sally

Lab_Image_Combiner

QR code

More_Jia_and_Sally

Lab_Image_Combiner

QR code

LSB

  • Least Significant Bit
  •                                                   種顏色
    • ​人眼無法察覺細微變化
    • 權重 ↓
    • 影響 ↓
  • LSB & 演算法
2^8 \times 2^8 \times 2^8 = 16,777,216
2^0

Lab 0x6 (2 min)

File → Open → 方向鍵 or 左鍵看各通道

Data Extract

  • 按照特定方式、順序提取圖片資訊
  • Bit plane

Lab 0x7 (5 min)

奴才別太天真

這不可能是Flag

File → Open → Analyse → Data Extract

Hex

ASCII

Extract的順序

Hex

位元平面

Made with Slides.com