最近在做網路協議隱藏,在網上看到了一篇**基於ip包的資訊隱藏技術,原理是把要傳送的資訊隱藏到報文的ip欄位中,來實現資訊隱藏,感覺思路新穎,隱蔽性較高,於是**後用python進行了實現
文末有專案位址
如果改變報文中的目的ip,那麼接收方將不能接收到報文,因此只能修改源ip
修改源ip的同時還需要考慮到要偽造的源ip是否合法,不合法的報文閘道器將不能成功**(此處需要考慮的一是ip的基本格式,二是偽造的ip是否在自己的網段內),即使能傳送成功也會容易被攻擊者發現(即:如果源位址和目的位址都不在自己網段內的報文為什麼會出現在自己的區域網中?)
接收方如何從大量報文中識別出隱藏資訊的報文?接收方如何判斷一段資訊已經接收完畢?如果網路狀況較差,接收方如何判斷是否丟包以及報文中資訊的排列順序?
採用udp協議。原因有以下幾點:
1)tcp通訊需要建立連線,不適合用於短暫的隱蔽通訊
2)在該方法中需要大量修改源ip,不適合使用tcp
報文源ip的主機號段隱藏資訊。由於在本實驗中傳送者區域網的主機號佔了最後一位元組,所以可隱藏資訊的長度有一位元組(實際情況根據子網長度來選擇)。將要傳送的資訊的每個位元組和目的ip位址的最後一位元組異或,得到一組隱藏了資訊的主機號,與真實源ip字首組合成一組偽造源ip。保證了源ip合法的同時,將要傳送的資訊隱藏進了源ip
設定源埠號範圍為5000-5100,目的埠號為源埠號+10。
1)使用固定埠號的方法,讓接收方能識別出是隱藏資訊的udp報文
2)將埠號設定為乙個範圍,增加隱蔽性
3)將源埠和目的埠建立某種演算法聯絡,提高識別率
mac位址的最後一位元組隱藏報文序號。為保證接收方可以判斷接收到的報文序列,在報文中新增序號字段。將報文序號與當前報文的偽造主機號進行異或,用異或結果作為mac位址的最後一位元組(mac位址其餘位元組隨機生成),新增了序號欄位的同時,偽造了mac位址
每次傳送開始和結束時傳送標誌性報文。為了使接收方識別資訊傳送的開始和結束,每次傳送開始和結束傳送乙個標誌性報文,該報文的源ip位址由真實源ip的字首+真實源ip的最後一位元組和目的ip位址的最後一位元組異或結果組成,報文的序號與整個傳送過程連續。
篩選隱藏資訊的目標報文。從大量資料報文中篩選出隱藏了資訊的目的報文,篩選規則:
1)目的位址為本機ip位址的udp報文
2)源埠為5000-5100,且目的埠為源埠+10
計算當前報文序號和提取資訊,構造本次資訊接收的報文序列。
1)將當前報文的源mac位址的最後一位元組和當前報文的源ip的最後一位元組異或,得到當前報文的序號
2)將當前報文源ip最後一位元組和目的位址的最後一位元組異或得到一位元組隱藏的資訊
3)將當前報文序號和報文資訊加入到本次資訊接收的序列
4)若該報文為本次資訊接收序列的第乙個報文,建立乙個計時器從序號為1的標誌報文中提取真實源ip。判斷本次資訊接收序列的最後乙個報文序號是否為1,若是1,說明是開始標誌報文,其隱藏的資訊為真實源ip主機號
對當前報文序列按序號進行排序。為了便於後續判斷本次資訊接收是否結束和完整,對接收到的報文序列進行排序
計時器對當前報文序列進行檢查。計時器迴圈檢查當前報文序列,並做出判斷:
1)若報文序列的第乙個報文序號為1,且最後乙個報文的內容與第乙個報文內容一致,說明接收到開始和結束標誌報文,本次資訊接收完畢
(1) 若結束標誌報文的序號和報文序列的長度一致,顯示接收成功,輸出真實源ip和完整資訊
(2) 若結束標誌報文的序號和報文序列的長度不一致,顯示接收失敗,輸出真實源ip,和每個報文的序號以及對應的資訊
2)若從接收到上乙個報文開始超過10s未接收到新的目的報文,說明本次資訊接收超時,判定為接收失敗,本次資訊接收完畢。輸出真實源ip(如果提取到)和每個報文序號及對應資訊。
3)資訊接收完畢,關閉計時器
隱蔽性強,並保證匿名性。資訊隱藏方法新穎,而且無論成功與否,保證了傳送者的匿名性(ip和mac的偽造)
埠號篩選報文。每次資訊傳輸採用的埠號都不一樣,一定程度增加了隱蔽性,並且將源埠和目的埠建立聯絡,增加了識別度
序號機制。雖然採用udp報文,但是實現了資訊排序和完整性的識別,可以很好地解決由於網路不穩定導致的報文亂序到達和報文丟失的問題
通訊開始和結束標誌。增加了開始和結束標誌報文,便於接收方判斷一次資訊傳輸的開始與結束,並能從開始報文中提取出真實源ip
計時器機制。計時機制保證了整體機制的可行性,避免了網路不穩定導致的無限等待問題,避免影響下一次的資訊傳輸
若傳送者網路的主機號所佔位數較少,可隱藏資訊的位數較少,嚴重影響傳輸效率
報文源ip位址相同的情況下,mac位址不同,如果進行分析,可疑度較高
如果閘道器或防火牆進行了ip位址與mac位址的過濾,傳輸失敗
如果傳送方網路經過nat轉換,該方法失效
該專案基於ip包的網路協議資訊隱藏實現,其中隱藏資訊的位數、埠號等只是專案環境下的特例,具體情況需要具體分析修改,且使用ip隱藏資訊的方法新穎,隱蔽度較高,同時可擴充套件性將強,後期可以根據需要進一步完善其隱藏演算法、失敗重傳機制等,應用場景較多,實用性較強。
tsunami 一種基於UDP協議的快速傳輸
一.需求 最近在做資料庫遷移,經常需要打包例項傳輸,傳統scp感覺很慢。二.軟體資訊 1.軟體主頁 2.軟體安裝 直接原始碼make make install 三.簡單使用 以下介紹簡明步驟 在源機子開啟tsunami程序 tsunamid 在目標機子 connect ip get 四.測試 在幾台...
tsunami 一種基於UDP協議的高速傳輸
一.需求 近期在做資料庫遷移,常常須要打包例項傳輸,傳統scp感覺非常慢。二.軟體資訊 1.軟體主頁 2.軟體安裝 直接源 make make install 三.簡單使用 下面介紹簡明步驟 在源機子開啟tsunami程序 tsunamid 在目標機子 connect ip get 四.測試 在幾台...
一種基於地理資訊的服務方式
一種基於地理資訊的服務方式 我們的口號是 讓生活更美好。代表我要給 取的名字。我們的宗旨是 以數字地圖的方式提供給使用者關於現代城市的精緻生活的資訊。某天,你在網路上搜尋到杭州有一家小飯店的烤魚很好吃,有人提供給你關於這家飯店的位置的文字資訊,並且你打算去吃。但真正到動身的時候卻發現,由於對於有些街...