音頻隱寫
{{#tree:
- Introduction
- Misc
- Crypto
- Web
- Assembly
- Executable
- Reverse
- Pwn
- Android
- ICS
- Blockchain
}}
音頻隱寫[編輯]
與音頻相關的 CTF 題目主要使用了隱寫的策略,主要分為 MP3 隱寫,LSB 隱寫,波形隱寫,頻譜隱寫等等。
常見手段[編輯]
通過 binwalk
以及 strings
可以發現的信息不再詳述。
MP3 隱寫[編輯]
原理[編輯]
MP3隱寫主要是使用 Mp3Stego 工具進行隱寫,其基本介紹及使用方法如下
MP3Stego will hide information in MP3 files during the compression process. The data is first compressed, encrypted and then hidden in the MP3 bit stream.
encode -E hidden_text.txt -P pass svega.wav svega_stego.mp3
decode -X -P pass svega_stego.mp3
例題[編輯]
ISCC-2016: Music Never Sleep
初步觀察後,由 strings
無發現,聽音頻無異常猜測使用隱寫軟體隱藏數據。
[[File:./figure/1.jpg]]
得到密碼後使用 Mp3Stego
解密。
decode.exe -X ISCC2016.mp3 -P bfsiscc2016
得到文件 iscc2016.mp3.txt
:
Flag is SkYzWEk0M1JOWlNHWTJTRktKUkdJTVpXRzVSV0U2REdHTVpHT1pZPQ== ???
Base64 && Base32 後得到 flag。
波形[編輯]
原理[編輯]
通常來說,波形方向的題,在觀察到異常後,使用相關軟體(Audacity, Adobe Audition 等)觀察波形規律,將波形進一步轉化為 01 字符串等,從而提取轉化出最終的 flag。
例題[編輯]
ISCC-2017: Misc-04
其實這題隱藏的信息在最開始的一段音頻內,不細心聽可能會誤認為是隱寫軟體。
[[File:./figure/3.png]]
以高為 1 低為 0,轉換得到 01
字符串。
110011011011001100001110011111110111010111011000010101110101010110011011101011101110110111011110011111101
轉為 ASCII,摩斯密碼解密,得到 flag。
!!! note 一些較複雜的可能會先對音頻進行一系列的處理,如濾波等。例如 JarvisOJ - 上帝之音 Writeup
頻譜[編輯]
原理[編輯]
音頻中的頻譜隱寫是將字符串隱藏在頻譜中,此類音頻通常會有一個較明顯的特徵,聽起來是一段雜音或者比較刺耳。
例題[編輯]
Su-ctf-quals-2014:hear_with_your_eyes
[[File:./figure/4.png]]
LSB音頻隱寫[編輯]
原理[編輯]
類似於圖片隱寫中的 LSB 隱寫,音頻中也有對應的 LSB 隱寫。主要可以使用 Silenteye 工具,其介紹如下:
SilentEye is a cross-platform application design for an easy use of steganography, in this case hiding messages into pictures or sounds. It provides a pretty nice interface and an easy integration of new steganography algorithm and cryptography process by using a plug-ins system.
例題[編輯]
2015 廣東省強網杯 - Little Apple
直接使用 silenteye
即可。
[[File:./figure/2.jpg]]