朱越凡,馬 迪,王 偉1,,毛 偉1,
1(中國科學(xué)院大學(xué),北京 100049)
2(中國科學(xué)院 計算機網(wǎng)絡(luò)信息中心,北京 100190)
3(北龍中網(wǎng)(北京)科技有限責(zé)任公司,北京 100190)
一種NTP協(xié)議隱蔽通道①
朱越凡1,2,馬 迪3,王 偉1,3,毛 偉1,3
1(中國科學(xué)院大學(xué),北京 100049)
2(中國科學(xué)院 計算機網(wǎng)絡(luò)信息中心,北京 100190)
3(北龍中網(wǎng)(北京)科技有限責(zé)任公司,北京 100190)
網(wǎng)絡(luò)隱蔽通道技術(shù)是一種被廣泛應(yīng)用的網(wǎng)絡(luò)攻擊技術(shù).掌握隱蔽通道的構(gòu)建機制,對制定相應(yīng)網(wǎng)絡(luò)防御策略具有指導(dǎo)意義.利用互聯(lián)網(wǎng)不可或缺的NTP時間同步協(xié)議,提出了基于NTP協(xié)議的隱蔽通道構(gòu)建機制.通過分析NTP協(xié)議查詢/應(yīng)答機制的特點,并研究可被用作載荷的NTP協(xié)議數(shù)據(jù)單元,設(shè)計了下行通道和上行通道分離的NTP隱蔽通道,它將隱藏信息偽裝成普通NTP報文,進行隱秘消息的傳遞.NTP報文的普及性和不可替代性,使得基于NTP的隱蔽通道具有穿透能力強、隱蔽性好的優(yōu)點.試驗表明,提出的NTP隱蔽通道可以攜帶較多的秘密信息,穿透網(wǎng)絡(luò)監(jiān)測設(shè)備.下一步的工作將圍繞NTP隱蔽通道的認(rèn)證、加密等安全機制進行研究.
隱蔽通道;網(wǎng)絡(luò)安全;NTP協(xié)議;協(xié)議特點;傳輸帶寬
在信息傳遞過程中,我們通常使用加密技術(shù)來對需要保密的數(shù)據(jù)進行處理.加密技術(shù)使得信息對于第三方變得不可讀.但這并不能掩蓋通信存在的事實,并且很容易引起第三方的嗅探、竊聽等被動攻擊行為.隱藏信道試圖隱藏通信的存在.隱蔽通道(Covert Channel,CC)是指允許進程以危害系統(tǒng)安全策略的方式傳輸信息的通信信道[1].最初它被提出是為了解決囚犯問題.兩個囚犯進行通信,但他們之間的通信可以被獄警監(jiān)聽并決定是否允許.因此囚犯必須設(shè)計一種方法來使它們的對話看起來無害卻隱藏著秘密消息.
網(wǎng)絡(luò)隱蔽通道技術(shù)是一種十分常見的網(wǎng)絡(luò)攻擊技術(shù).該技術(shù)將隱蔽消息偽裝成普通消息在網(wǎng)絡(luò)中進行通信.防范隱蔽通道的最好辦法就是掌握隱蔽通道建立的機制,以便制定相應(yīng)的網(wǎng)絡(luò)安全防護策略,來消除隱蔽通道給網(wǎng)絡(luò)安全帶來的隱患.構(gòu)造隱蔽通道的方法通常是通過修改數(shù)據(jù)包、利用協(xié)議機制的弱點或者利用協(xié)議的空閑字段來實現(xiàn)[2].例如,張令通等利用TCP協(xié)議首部中的序列號和確認(rèn)號字段建立了隱蔽通道[2];楊智丹等對IP報頭指針字段選項的網(wǎng)絡(luò)隱蔽通道技術(shù)進行了研究[3];羅成等利用Windows消息機制來控制擁有網(wǎng)絡(luò)訪問權(quán)限的應(yīng)用程序,進而構(gòu)建網(wǎng)絡(luò)隱蔽通道[4];Iodine利用DNS中NULL記錄類型構(gòu)造Raw UDP模式,使得整個UDP載荷均為隱蔽通道[5].在NTP隱蔽信道的研究方面,Action Dan利用NTP報文 Transmit Timestamp字段作為隱蔽通道傳遞forkbomb指令[6],實施隱蔽通道攻擊;但這個方法帶寬有限,不適用于傳遞消息.
NTP是網(wǎng)絡(luò)時間協(xié)議(Network Time Protocol),是為實現(xiàn)高精確度的時間同步,而設(shè)計的網(wǎng)絡(luò)時鐘同步協(xié)議.NTP使用層次式時間分布模型,具有相當(dāng)高的靈活性,可以適應(yīng)各種互聯(lián)網(wǎng)環(huán)境,是互聯(lián)網(wǎng)上公認(rèn)的時間同步工具[7].目前,基于NTP的隱蔽通道并沒有引起應(yīng)有的重視.然而,網(wǎng)絡(luò)中大量存在的開放式分布的NTP服務(wù)器,高度開放的NTP協(xié)議123端口,以及NTP報文基于不可靠的UDP進行傳輸?shù)膮f(xié)議特性,使得NTP協(xié)議非常容易被黑客利用,實施隱蔽通道攻擊.因此,研究基于NTP協(xié)議的隱秘通信方法對網(wǎng)絡(luò)安全防護具有重要的指導(dǎo)作用.本文利用NTP查詢/應(yīng)答機制的協(xié)議特性,使用NTP協(xié)議報文中易被忽略的數(shù)據(jù)單元字段,提出一種高效的上下行分離的隱蔽通道方法,以達(dá)到穿透防火墻和躲避入侵檢測系統(tǒng)的目的.
隱蔽通道早期的定義只限于操作系統(tǒng)內(nèi)部,重點研究操作系統(tǒng)內(nèi)的安全.隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,隱蔽通道逐漸被應(yīng)用到網(wǎng)絡(luò)技術(shù)中.隱蔽通道由此有了更加廣泛的定義:任何利用非正常的通信手段在網(wǎng)絡(luò)中傳遞信息,突破網(wǎng)絡(luò)安全機制的通道都可以稱為隱蔽通道[8].
1.1 隱蔽通道類型
根據(jù)隱藏隱蔽通道又分為存儲型和時序型[8].存儲型隱蔽通道通常利用協(xié)議字段的冗余嵌入隱蔽信息.時序型隱蔽通道常利用一系列協(xié)議數(shù)據(jù)包的某種排序或相鄰數(shù)據(jù)包到達(dá)的時間差傳遞秘密信息.
根據(jù)嵌入的位置,協(xié)議隱藏可分為結(jié)構(gòu)型和非結(jié)構(gòu)型[9].結(jié)構(gòu)型隱蔽通道指在協(xié)議的固定格式部分(協(xié)議首部)嵌入信息.非結(jié)構(gòu)型隱蔽通道在協(xié)議攜帶的數(shù)據(jù)部分嵌入信息.
因為時序型隱蔽通道易受網(wǎng)絡(luò)中不穩(wěn)定因素干擾,導(dǎo)致數(shù)據(jù)包延遲或丟失,不利于隱藏信息的傳遞,因此本文NTP隱蔽通道將使用存儲型隱蔽信道.在嵌入位置方面,本文對結(jié)構(gòu)型和非結(jié)構(gòu)型NTP隱蔽通道的效率和帶寬等也做了相關(guān)研究和分析.
1.2 隱蔽通道構(gòu)建方法
構(gòu)造隱蔽通道的關(guān)鍵有三點[8]:
1)尋找合適的協(xié)議.通常網(wǎng)絡(luò)應(yīng)用層中隱蔽通道都是以HTTP、SMTP、DNS為載體;這主要是因為這些協(xié)議對現(xiàn)在的企業(yè)網(wǎng)絡(luò)來說是必須的.
2)尋找協(xié)議中的漏洞.即選擇協(xié)議頭部中的合適字段作為隱蔽通道的數(shù)據(jù)域.雖然這些數(shù)據(jù)域的有效載荷有限,但是Lampson[7]指出即使一個只能一天傳輸一位的隱蔽通道在特定的環(huán)境下也能夠帶來危害.
3)偽造要發(fā)送的數(shù)據(jù).通常對要發(fā)送的數(shù)據(jù)進行加密.這樣可以躲避IDS檢測,讓隱蔽通道發(fā)揮更大的作用.
2.1 NTP協(xié)議的工作原理
NTP以客戶機/服務(wù)器模式進行通信:客戶機發(fā)送一個請求數(shù)據(jù)包,服務(wù)器接收后回送一個應(yīng)答數(shù)據(jù)包[9].兩個數(shù)據(jù)包都帶有發(fā)送和接收的時間戳,根據(jù)這四個時間戳來確定客戶機和服務(wù)器之間的時間偏差和網(wǎng)絡(luò)時延.
圖1 時間同步算法時序
如圖1所示,t1為客戶機發(fā)送查詢請求包的時刻, t2為服務(wù)器收到查詢請求包的時刻,t3為服務(wù)器回復(fù)時間信息包的時刻,t4為客戶機收到時間信息包的時刻(t1、t4以客戶機的時間系統(tǒng)為參照,t2、t3以服務(wù)器的時間系統(tǒng)為參照).由此可得信息包在網(wǎng)絡(luò)上的傳輸時間為:
當(dāng)請求信息包和回復(fù)信息包在網(wǎng)上的傳輸時間相等時,單程網(wǎng)絡(luò)時延為:
時間偏差為:
可以看到,θ、δ只與t2和t1的差值、t3和t4的差值相關(guān),而與t3和t2的差值無關(guān),即最終的結(jié)果與服務(wù)器處理請求所需的時間無關(guān).據(jù)此,客戶機即可通過這4個時間戳計算出時間偏差θ和網(wǎng)絡(luò)時延δ去調(diào)整本地時鐘.
2.2 NTP的報文格式
NTP數(shù)據(jù)包的傳輸采用UDP協(xié)議.在UDP消息頭之后,緊接著的數(shù)據(jù)格式如圖2所示[10].
圖2 NTP報文格式
主要字段的解釋如下:
LI(Leap Indicator):長度為2比特,值為“11”時表示告警狀態(tài),時鐘未被同步.為其他值時NTP本身不做處理.
VN(Version Number):長度為3比特,表示NTP的版本號,目前的最新版本為4.
Mode:長度為3比特,表示NTP的工作模式.不同的值所表示的含義分別是:0未定義、1表示主動對等體模式、2表示被動對等體模式、3表示客戶模式、4表示服務(wù)器模式、5表示廣播模式或組播模式、6表示此報文為NTP控制報文、7預(yù)留給內(nèi)部使用.
Stratum:系統(tǒng)時鐘的層數(shù),取值范圍為1~16,它定義了時鐘的準(zhǔn)確度.層數(shù)為1的時鐘準(zhǔn)確度最高,準(zhǔn)確度從1到16依次遞減,層數(shù)為16的時鐘處于未同步狀態(tài),不能作為參考時鐘.
Poll:輪詢時間,即兩個連續(xù)NTP報文之間的時間間隔.
Precision:系統(tǒng)時鐘的精度.
Root Delay:本地到主參考時鐘源的往返時間.
Root Dispersion:系統(tǒng)時鐘相對于主參考時鐘的最大誤差.
Reference Identifier:參考時鐘源的標(biāo)識.
Reference Timestamp:系統(tǒng)時鐘最后一次被設(shè)定或更新的時間.
Originate Timestamp:NTP請求報文離開發(fā)送端時發(fā)送端的本地時間.
Receive Timestamp:NTP請求報文到達(dá)接收端時接收端的本地時間.
Transmit Timestamp:應(yīng)答報文離開應(yīng)答者時應(yīng)答者的本地時間.
Extension Field:可選擴展字段.最小填充長度為16個字節(jié),最大填充長度尚未被定義.
Key Identifier:客戶機和服務(wù)器雙方協(xié)商的密鑰(可選字段).
dgst:用密鑰計算得出的NTP頭部和擴展字段的哈希值(可選字段).
3.1 NTP隱蔽通道的基本原理
NTP隱蔽通道技術(shù)的基本思想是利用NTP請求和應(yīng)答建立隱蔽通道,實現(xiàn)數(shù)據(jù)傳輸.通信前雙方商量好隱藏信息的字段和編碼方式等規(guī)則,發(fā)送方按照這個規(guī)則將隱秘信息偽裝、編碼、發(fā)送,接收方按照約定接收、解碼、提取隱秘信息.簡單的NTP隱蔽通道的工作模式如圖3所示.
圖3 上行通道和下行通道分離的NTP隱蔽通道
普通的NTP隱蔽通道在通信過程中會產(chǎn)生大量來自同一主機的NTP請求包和返回該主機的NTP應(yīng)答包,流量分布特征十分顯著,很容易被入侵檢測系統(tǒng)識別出異常[1].為了降低NTP隱蔽通道被檢測的風(fēng)險,我們利用NTP報文基于面向無連接的UDP協(xié)議工作的特點,如圖4所示,在客戶端節(jié)點處偽造其他主機IP地址發(fā)送NTP時間同步請求,最終服務(wù)器返回響應(yīng)包到偽造IP主機處,從而平衡流量分布.
圖4 偽造源IP發(fā)送NTP同步請求報文
3.2 使用NTP協(xié)議構(gòu)建隱蔽通道的詳細(xì)方法
我們可以使用一種非常暴力的方法來構(gòu)建NTP隱蔽通道:將基于UDP的服務(wù)運行在123端口,從客戶端直接向服務(wù)器發(fā)起通信,讓整個NTP報文處于Raw UDP模式.此時,整個UDP載荷均為隱蔽通道,通信效率顯著提升.然而,這些報文不是有效的NTP消息,流量分析工具解析這些報文時會出現(xiàn)格式錯誤,從而引起懷疑.因此,我們采用了更加具有欺騙性的手段,既能保證一定的通信帶寬,又使得攜帶隱蔽消息的報文符合基本的NTP協(xié)議包特征,避免被網(wǎng)絡(luò)上流量分析檢測工具識別出來.
1)基于報文數(shù)據(jù)單元構(gòu)建上行通道
NTP時間同步機制是由客戶機直接發(fā)起時間同步請求,因此在上行信道只需要考慮哪些字段可以隱藏數(shù)據(jù),而不用考慮信道的發(fā)起時間和通信頻率.根據(jù)網(wǎng)絡(luò)防護設(shè)備的一般規(guī)則設(shè)置,對于NTP協(xié)議包的校驗主要是報文頭部和MAC校驗.因此,除去報文頭部4個字節(jié)的屬性特征分布(狀態(tài)、版本、模式等)和末尾MAC字段常被提取和檢查,其余字段都易被檢測設(shè)備忽略,很適合作為隱藏消息字段.結(jié)合NTP協(xié)議中的設(shè)計不嚴(yán)密的部分,我們在上行通道使用下面幾個字段來隱藏數(shù)據(jù).
① 利用時間戳(Timestamp)最低有效位(LSB)
NTP報文中有四個時間戳字段:參考時間戳、原始時間戳、接受時間戳、傳送時間戳.時間戳字段用的是二進制補碼編碼方式.此時我們將時間戳信息進行輕微的變換而使其仍符合時間信號特征.我們可以利用時間戳的最低有效位來隱藏信息.最低有效位指的是一個二進制數(shù)字中的第0位(即最低位).但是使用這種方式無法攜帶較多的數(shù)據(jù),難以滿足文件傳送、遠(yuǎn)程桌面控制等大數(shù)據(jù)量密集通信應(yīng)用的需求.
② 利用參考標(biāo)識符(Reference Identifier)字段
KOD(Kiss of Death)包是一種當(dāng)連接狀態(tài)未定義或者無效時,客戶機和服務(wù)器之間傳遞狀態(tài)報告和訪問控制的數(shù)據(jù)包.這種數(shù)據(jù)包的參考標(biāo)識符字段沒有格式要求且不認(rèn)為具有有效數(shù)據(jù).NTPV4協(xié)議指定時規(guī)定[10]:如果客戶端或者服務(wù)器的一端使用IPV6地址,另一端使用IPV4地址,兩方進行通訊時,將無法完成時間循環(huán)(time looping)校驗.此時參考標(biāo)識符字段也沒有格式限制且不認(rèn)為具有有效數(shù)據(jù).因此,幾乎所有的網(wǎng)絡(luò)分析工具都不把參考標(biāo)識符字段當(dāng)成訪問控制的判斷依據(jù).這為基于該字段的信息隱藏提供了非常有利的條件.
③ 利用擴展域(Extension Field)填充字段
在NTP協(xié)議的最新版本NTPV4中,可以在頭部之后,MAC校驗字段之前添加一個或多個擴展域. RFC5905中,擴展域的內(nèi)容沒有被明確定義,但被強制要求最少填充至16字節(jié),最大填充長度未作要求.這樣,根據(jù)UDP協(xié)議包的最大長度512字節(jié),除去UDP報文首部8字節(jié)和NTP報文首部48字節(jié),我們可以讓填充字段擴充到一個十分可觀的長度(456字節(jié)).
因此,上行通道即把客戶端的隱蔽信息傳送給服務(wù)器端.可攜帶數(shù)據(jù)的域:Timestamp、Reference ID、Extension Field.
客戶端請求:
2)基于協(xié)議構(gòu)建下行通道
上文闡述的基于報文的隱蔽信道的方法同樣也適用于下行通道.但如同Action Dan利用NTP隱蔽信道傳輸數(shù)據(jù)時,遇到的服務(wù)器對客戶端單向被動下行信道帶寬不足的問題,我們可以利用NTP協(xié)議中不嚴(yán)密的地方,構(gòu)建“合法”的通信信道.
①利用KOD包
一個可控的隱蔽通道應(yīng)該具備指令信號,對上行和下行通道的流量開關(guān)和傳輸速率作出適當(dāng)?shù)目刂?此時,我們可以使用KOD包中的參考標(biāo)識符字段作為這種信號.這個字段特定的ASCII字符串(DENY and RSTR、RATE等)原本就是設(shè)計來實現(xiàn)客戶端和服務(wù)器之間的訪問控制.這種信號可以被沿用作為隱蔽通道信息傳遞的控制信號,作為下行信道中服務(wù)器端通知客戶機開啟和關(guān)閉隱蔽通道的指令信號.
② monlist指令
NTP服務(wù)包含一個 monlist功能[11],它被設(shè)計用于監(jiān)控 NTP服務(wù)器.NTP服務(wù)器響應(yīng)monlist指令后會返回與自己進行過時間同步的最后600個客戶端的IP.這意味著,一個很小的請求包,就能獲取到大量的活動 IP地址組成的連續(xù)UDP包.響應(yīng)包按照每 6個IP進行分割,最多有100個響應(yīng)包,通常每個包為480字節(jié).利用monlist指令,可以得到一個非常不錯的下行帶寬.
因此利用NTP服務(wù)的monlist功能,可以將隱蔽數(shù)據(jù)偽裝成合理的響應(yīng)包在網(wǎng)絡(luò)中進行傳輸.在monlist觸發(fā)指令下,NTP服務(wù)器可以使隱藏信道具有不錯的帶寬,實現(xiàn)“接受簡短命令,返回大量結(jié)果”的下行通道模式.
③ 利用listpeers指令
Listpeers指令的使用和monlist指令類似.NTP服務(wù)器響應(yīng) listpeers指令后就會返回與 NTP服務(wù)器進行過時間同步的所有對等機的IP地址.因此listpeers指令也可以作為下行信道的觸發(fā)指令來傳遞隱蔽信息.
因此,下行通道即把服務(wù)器端的隱蔽信息傳送給客戶端.可攜帶數(shù)據(jù)的域: Receive timestamp、Transmit timestamp、Reference ID、Extension Field.
服務(wù)器端請求:
由于NTP協(xié)議具有普遍性和不可替代性,網(wǎng)絡(luò)監(jiān)控設(shè)備通常不對NTP數(shù)據(jù)包做檢查.但在網(wǎng)絡(luò)安全措施較為嚴(yán)格的網(wǎng)絡(luò)中,網(wǎng)絡(luò)管理員強制關(guān)閉123端口,此時只允許從內(nèi)部網(wǎng)絡(luò)向外部網(wǎng)絡(luò)發(fā)送NTP請求,而不允許外部網(wǎng)絡(luò)主動向內(nèi)部網(wǎng)絡(luò)發(fā)送NTP數(shù)據(jù)包.這種情況有兩種解決辦法:第一,如果外部主機需要主動對內(nèi)部主機發(fā)起隱蔽通道建立請求,那么就需要把NTP報文Mode字段設(shè)置成應(yīng)答模式,偽裝成服務(wù)器或?qū)Φ戎鳈C的應(yīng)答報文,使其穿過防火墻;第二,內(nèi)部主機首先發(fā)起NTP請求,內(nèi)部主機和外部主機的連接即可建立[12].
3.3 基于NTP協(xié)議隱蔽通道的實現(xiàn)
在發(fā)送端,需要先構(gòu)造NTP數(shù)據(jù)包:需要加強隱秘性的情況下,首先可以對隱秘信息進行加密,把加密后的信息映射到合法的NTP地址段單元,這樣的NTP數(shù)據(jù)包是“合法”的.在接收端通過提取相應(yīng)字段的數(shù)據(jù),進行解密操作,恢復(fù)隱秘信息.整個過程如圖5所示.
圖5 基于NTP協(xié)議的隱蔽通道的實現(xiàn)
通常情況網(wǎng)絡(luò)設(shè)備并不檢測NTP協(xié)議包的時間戳和擴展字段,甚至在一些入侵檢測系統(tǒng)(例如Snort)的用戶手冊里還強調(diào):“如果用戶的服務(wù)器(比如NTP、NPS和DNS服務(wù)器)會妨礙端口掃描的探測,可以通知相應(yīng)模塊忽略源自這些主機的TCP SYN和UDP端口掃描”.由此看出,這些網(wǎng)絡(luò)安全設(shè)備一般都在過濾包時主動忽略NTP包.因此從理論上說這種隱蔽通信是可行的;本文通過XCAP方式進行NTP隱蔽通道通信試驗,穿過防火墻和局域網(wǎng)網(wǎng)關(guān),在接收端正確接收到含有隱秘消息的數(shù)據(jù)包,從實踐中證明了本文的方法.
圖6 客戶端向服務(wù)器傳輸隱蔽信息
在圖6的實例中,客戶端發(fā)起NTP時間同步請求,將隱蔽信息Bob is a spy keep him under surveillance嵌入到NTP報文中.NTP報文最終送至NTP服務(wù)器,服務(wù)器端解析NTP報文可以獲得隱蔽信息.
隱蔽通道建立時,還必須考慮安全方面的因素,以保護隱蔽通道資源.本研究下一步工作將從以下幾個方面展開[13]:
1)認(rèn)證:客戶端和服務(wù)器必須相互認(rèn)證,以免第三方的數(shù)據(jù)干擾,防止隱蔽通道資源被惡意占用.
2)數(shù)據(jù)流加密:由于NTP協(xié)議報文的傳送一般情況下采用明文形式傳送,所以許多網(wǎng)絡(luò)嗅探器可以捕捉到網(wǎng)絡(luò)中傳輸?shù)腘TP數(shù)據(jù)包,并分析出NTP報文中的內(nèi)容,這樣NTP隱蔽通道易被發(fā)現(xiàn),從而降低NTP隱蔽通道的安全性.對于這種情況,通常我們可以對NTP隱蔽通道中數(shù)據(jù)流進行加密.
3)數(shù)據(jù)完整性:為了檢查隱蔽通道在傳輸數(shù)據(jù)的過程中數(shù)據(jù)是否被篡改,可以沿用NTP報文中的可選字段dgst字段存放校驗哈希值來保證數(shù)據(jù)完整性.
4)重放保護:為避免攻擊者利用以前的通信記錄來訪問客戶機或者服務(wù)器,客戶機和服務(wù)器應(yīng)該制定相應(yīng)機制應(yīng)對重放攻擊.
目前,許多黑客正在利用基于NTP的隱蔽信道來進行攻擊,這主要是因為基于NTP協(xié)議的隱蔽通道有著它特有的優(yōu)勢:
1)目前絕大多數(shù)網(wǎng)絡(luò)都開放 NTP服務(wù).在Fyodor組織2014年互聯(lián)網(wǎng)主機端口開放狀況報告中, NTP所在的123端口排名第四位,僅次于NetBIOS協(xié)議137端口、SNMP協(xié)議161端口和SQLServer查詢的1434端口,而居然比DNS查詢53端口開放程度還要高.NTP協(xié)議數(shù)據(jù)包能順利通過防火墻、NAT設(shè)備而不被過濾或攔截.這些為基于NTP協(xié)議構(gòu)建隱蔽通道創(chuàng)造了有利條件.
2)蒙騙式通信.UDP協(xié)議是面向無連接的.NTP隱蔽通道利用NTP報文基于UDP協(xié)議進行傳輸?shù)奶攸c,在NTP隱蔽通道的內(nèi)部網(wǎng)絡(luò)源主機節(jié)點處隨機偽造內(nèi)部網(wǎng)絡(luò)其他主機IP發(fā)送偽裝的NTP查詢請求,最終服務(wù)器響應(yīng)包會返回到其他主機IP,從而平衡流量分布特征.
3)較高的帶寬.NTP協(xié)議報文有較多可以攜帶隱蔽信息的字段.僅在NTP報文頭部(48字節(jié)),就有若干個常被忽略而不被檢測的協(xié)議數(shù)據(jù)單元.此外,我們還可以利用NTP報文的擴展字段作為隱藏信息的載體.
本文利用互聯(lián)網(wǎng)公認(rèn)的時間同步工具NTP協(xié)議的通用性和透明性,提出了基于NTP協(xié)議的隱蔽通道構(gòu)建機制,是非常具有發(fā)展前景的信息隱藏技術(shù).本文通過分析NTP協(xié)議數(shù)據(jù)單元,最大限度地利用NTP報文載荷,構(gòu)建了上行隱蔽通道;充分利用查詢/應(yīng)答機制特點,設(shè)計了“接受簡短命令,返回大量結(jié)果”的下行隱蔽通道:將隱藏信息偽裝成普通的NTP報文,進行隱秘消息的傳遞.本文提出的基于NTP協(xié)議的隱蔽通道技術(shù)具有穿透力強,隱蔽性好,流量分布特征不明顯等優(yōu)點.
1王永杰,劉京菊.基于DNS協(xié)議的隱蔽通道原理及性能分析.計算機工程,2014,40(7):102–105.
2張令通,羅森林.基于TCP協(xié)議首部的網(wǎng)絡(luò)隱蔽通道技術(shù)研究.計算機工程與科學(xué),2014,36(6):1072–1076.
3楊智丹,劉克勝,王康,汪松鶴.基于IP報頭選項的網(wǎng)絡(luò)隱蔽通道技術(shù).計算機工程,2009,35(13):125–127.
4羅成.基于Windows消息機制的HTTP隱蔽通道的設(shè)計與實現(xiàn)[碩士學(xué)位論文].上海:上海交通大學(xué),2008.
5廖曉鋒,邱桂華.一種基于Web訪問模型的網(wǎng)絡(luò)隱蔽通道.計算機系統(tǒng)應(yīng)用,2013,22(2):10–14.
6曹自剛,熊剛,趙詠,郭莉.隱蔽式網(wǎng)絡(luò)攻擊綜述.集成技術(shù), 2014,(2):1–16.
7曹自剛.隱蔽式網(wǎng)絡(luò)攻擊檢測關(guān)鍵問題研究[碩士學(xué)位論文].北京:北京郵電大學(xué),2015.
8王相林,趙顏昌,李黎.一種基于源IP地址的信息隱藏技術(shù).計算機應(yīng)用與軟件,2010,27(10):222–224.
9王永吉,吳敬征,曾海濤,丁麗萍,廖曉鋒.隱蔽信道研究.軟件學(xué)報,2010,21(9):2262–2288.
10沈燕芬.用于網(wǎng)絡(luò)時間同步的NTP協(xié)議.現(xiàn)代計算機(專業(yè)版),2004,(4):54–56.
11楊先杰.NTP協(xié)議的研究與應(yīng)用.電力信息化,2011,9(6): 28–32.
12師海燕,梁洪波.基于ICMP協(xié)議的網(wǎng)絡(luò)隱蔽通道技術(shù)的分析.電腦知識與技術(shù)(學(xué)術(shù)交流),2007,2(10):963,989.
13強亮,李斌,胡銘曾.基于HTTP協(xié)議的網(wǎng)絡(luò)隱蔽通道研究.計算機工程,2005,31(15):224–225.
Covert Channel Based on NTPProtocol
ZHU Yue-Fan1,2,MADi3,WANG Wei1,3,MAO Wei1,3
1(University of ChineseAcademy of Sciences,Beijing 100049,China)
2(Computer Network Information Center,ChineseAcademy of Sciences,Beijing 100190,China)
3(Internet Domain Name System Beijing Engineering Research Center Ltd.,Beijing 100190,China)
The covert channel based on network protocol has been widely used for network attack.Mastering the mechanism of covert channel is important to the formulating of corresponding network defense strategy.Due to the widely use of network time protocol,a kind of covert channel technology based on NTP protocol is proposed in this paper.This paper analyzes features of query/response mechanisms in the NTP protocol,utilizes the message field as hidden payload and then designs separated downstream and upstream NTP covert channels,in which secret information is disguised and transmitted as normal NTP messages.The popularity and irreplaceability of NTP message make NTP covert channel endowed with the advantages of great ability of penetration and high quality of concealment.Test results show that the technology could carry relatively considerable information and easily penetrate the network monitoring device.The future work will focus on authentication,encryption and other security mechanisms in NTP covert channel.
covert channel;network security;NTP protocol;protocol features;transmission bandwidth
2016-08-03;收到修改稿時間:2016-09-08
10.15888/j.cnki.csa.005715