天天看點

(8.3)【網絡協定中的資料隐藏】延遲包修改、協定中的資料隐藏

目錄

​​一、延遲包修改方法​​

​​1.1、資料隐藏方法:​​

​​1.2、利用:​​

​​1.3、優點:​​

​​二、IP 層資料隐藏, TTL 字段​​

​​2.1、概述:​​

​​2.2、TTL字段:​​

​​分析可行性:​​

​​利用:​​

​​2.3、TTL字段隐藏資料:​​

​​示例​​

​​過程:​​

​​2.4、總結:​​

​​三、協定中的資料隐藏分析​​

​​3.1、概述:​​

​​3.2、Wireshark​​

​​簡介:​​

​​下載下傳(官網):​​

​​使用:​​

一、延遲包修改方法

1.1、資料隐藏方法:

這個方法充分利用了RTP包作為核心元素偶爾會發生延時、失序或者丢失的特性。

1.2、利用:

(1)在發送資料流之前先系統地從資料流提取出特定資料包,故意讓這些資料包不能按時發送到接收方。

(2)接收資料包的應用程式, 不管是VoIP還是音頻播放器, 都會自動填充這些空白, 以補充延時的資料包。

(8.3)【網絡協定中的資料隐藏】延遲包修改、協定中的資料隐藏
RTP延遲包修改方法 

1.3、優點:

因為大多數RTP封包都隻包含幾微秒的語音, 聽語音對話甚至音樂流時很難察覺到其中有填充内容。

一旦将封包從資料流中提取出來, 資料隐藏應用程式就會在整個有效載荷區域中嵌入隐藏消息片段, 然後再把封包放回到資料流中(但是會有幾秒鐘的延遲) 。資料包到達目的地時(已有明顯延遲), 接收應用程式就會丢棄這些資料包,并永不使用, 因為延遲而導緻的空白區域已經填充過了。然而,VoIP的偵聽應用程式會識别并提取延遲包, 進而恢複有效載荷, 重構其中的原始秘密資訊。

二、IP 層資料隐藏, TTL 字段

2.1、概述:

OSI模型的每層協定幾乎都有嵌入資料的可能

在這就選擇IP包路由的主力(IP層)作為研究對象,IP資料包是UDP和TCP封包的主要組成部分

從标準IP封包頭字段布局中, 可以看到IP封包頭定義了20個位元組,這20個位元組沒有可選值, 但都有各自的特殊用途

 eg:指定源位址和目标位址、定義服務類型、校驗和或者下層協定。

還有個有趣的字段就是8 位(1個位元組) 的TTL(T ime to live, 存活時間) 字段。

(8.3)【網絡協定中的資料隐藏】延遲包修改、協定中的資料隐藏
IP協定 

2.2、TTL字段:

分析可行性:

因為IP是個很“盡最大努力” 的協定。也就是說,IP層會盡它的最大努力把封包發送到最終目的地, 是以就出現了所謂的封包生命周期機制,以便在封包無法送達目的地的情況下丢棄該封包。IP封包在路由器間穿梭, 不斷尋找到達目的地的路徑。它每經過一個路由器,TTL值就減1, 當TTL值變為0時, 就丢棄該封包。這個機制使IP封包不會持續循環傳輸, 進而造成網絡擁塞。

如今, 網絡路由十分智能, 大多數封包從源位址到達目的位址通常隻需經過幾跳。雖然尚無針對典型IP封包路由跳數的确切統計資料, 美國本土的網絡流量中平均封包跳數為8 ~ 15, 比TTL允許的最大值255小得多, 是以除非目标不可達, 否則在封包到達目的地前幾乎不可能耗盡生存時間(TTL)。

利用:

是以我們可以用TTL值的前兩位來隐藏資料, 而不會影響封包傳輸。嵌入資料的封包格式如下, 我們将所有封包的預設TTL值定為3F(十六進制), 即63跳, 剩餘的前兩位則用來嵌入隐藏資料。
(8.3)【網絡協定中的資料隐藏】延遲包修改、協定中的資料隐藏
 通過分割TTL字段來隐藏資料

2.3、TTL字段隐藏資料:

示例

用在IP流中隐藏單詞“ HIDE” 

過程:

(1)将每個字元轉換成十六進制的ASCII碼值, 比如,H = 48。

(2)再轉換成二進制, 每2位分成一組, 這些兩位組将會分别嵌入到各個封包的TTL值的前兩位中。

(3)TTL值的低6位值預設為3F, 即xxllllll。其中xx将被替換為兩位組。替換完成後就形成了一個新的IP封包序列(共16個IP包), 然後就可以傳遞隐藏資訊"HIDE"了

(8.3)【網絡協定中的資料隐藏】延遲包修改、協定中的資料隐藏
TTL資料隐藏計劃的詳細資訊 

2.4、總結:

通過這種方法發送1MB的隐藏檔案可能會有些不可思議, 因為每個IP 封包隻能嵌入1/4 個位元組, 那麼要隐藏1MB 的資料就需要大約4百萬個封包。但是, 要知道流媒體傳輸過程需要大量的封包, 比如, 一小時的流媒體(音樂或視訊流)傳輸, 你知道其中會有多少個IP 封包嗎?

三、協定中的資料隐藏分析

3.1、概述:

如果從調查驗證的角度分析協定, 我們則需要使用網絡協定分析工具或嗅探器, Wireshark 就是個不錯的工具。如果你懷疑網絡協定中嵌入了資料, 那麼就可以用Wireshark 抓取兩個通信實體間的RTP 封包。然後, 通過分析封包載荷區域的頭部資訊就可以檢測到隐藏資訊。這種方法聽起來可能不太現實, 但實際上, Wireshark 還有很強大的搜尋和過濾功能, 而且封包頭格式是很規律的, 稍微花點功夫就可以檢測到可疑的封包。

如果要檢測延遲封包中的資料隐藏, 就需要先找到延遲封包的序列号, 将封包根據時間戳排序, 然後寫一個簡單的python 腳本來識别延遲超過幾秒的封包。如果你很熟悉SNORT 或其他入侵檢測工具, 可以采用一些政策和觸發條件來持續監控網絡通信, 進而發現異常行為。

3.2、Wireshark

簡介:

Wireshark(前稱Ethereal)是一個網絡封包分析軟體。網絡封包分析軟體的功能是截取網絡封包,并盡可能顯示出最為詳細的網絡封包資料。Wireshark使用WinPCAP作為接口,直接與網卡進

下載下傳(官網):​

使用:

(8.3)【網絡協定中的資料隐藏】延遲包修改、協定中的資料隐藏
(8.3)【網絡協定中的資料隐藏】延遲包修改、協定中的資料隐藏

繼續閱讀