基于扩频Manchester码的可靠自同步网络隐蔽时间通信模型
2015-05-08郭晓军周爱平潘吴斌朱琛刚
郭晓军 程 光 周爱平 潘吴斌 朱琛刚
(1东南大学计算机科学与工程学院, 南京 210096)(2西藏民族学院信息工程学院, 咸阳 712082)(3东南大学计算机网络和信息集成教育部重点实验室, 南京 210096)
基于扩频Manchester码的可靠自同步网络隐蔽时间通信模型
郭晓军1,2,3程 光1,3周爱平1,3潘吴斌1,3朱琛刚1,3
(1东南大学计算机科学与工程学院, 南京 210096)(2西藏民族学院信息工程学院, 咸阳 712082)(3东南大学计算机网络和信息集成教育部重点实验室, 南京 210096)
针对包间延迟网络隐蔽时间信道存在的鲁棒性差、同步机制脆弱问题,提出了一种基于Manchester编码的可靠自同步网络隐蔽时间通信模型.首先,对秘密消息进行扩频操作,得到扩频码.然后,将流持续时间划分为若干相同长度时隙,每相邻两时隙构成一对,通过调整时隙对内包数量来模拟扩频码对应的Manchester编码中0和1的编码过程,以实现扩频码在流中的嵌入.同时,采用时间偏移量指示同步位置,使得调制后的流呈现自同步性,以便接收端准确恢复秘密消息.实验结果表明,与包间延迟方法相比,该模型能使收发双方更快速准确地保持同步,在不同网络负载下,秘密消息检测错误率最大值降低约85%,显著提升了对网络干扰因素的抵抗能力,且在网络流量较大时呈现出更好的隐蔽性.
信息安全;网络隐蔽时间信道;Manchester编码;鲁棒性;隐蔽性
Internet发展已步入云计算和大数据时代,在经济利益驱动下,以用户信息泄露为代表的网络信息安全问题日益突出[1-2].作为威胁网络信息安全的有效手段之一,网络隐蔽通信技术利用计算机网络中公开合法信道进行秘密信息传输,其本质是通过改变网络流量中的相关特征来实现信息隐藏,已成为攻击者绕开网络安全策略发布攻击命令、窃取隐私数据等行为的重要途径.目前,网络隐蔽通信技术分为存储信道[3-4]、行为信道[5]和时间信道[6-10]3类.其中,时间信道能顺利穿越网络中间设备,实用性较强,已受到国内外学者广泛关注.
现有的网络隐蔽时间信道主要通过改变载体流内单个IPD来嵌入并传输秘密消息.Cabuk等[6]提出了一种隐秘时间信道,通过在固定时间内是否发送数据包来表示0和1,使载体流的IPD呈现出2种不同长度;但此载体流存在明显统计规律,难逃统计方法检测,易暴露秘密消息.Archibald等[7]在收发端借用Luby-Transform喷泉码,并引入防护频带方式,在IPD调制幅度与信道隐蔽性之间取得平衡;但其本质仍是对单个IPD进行改变,易受网络丢包、延迟抖动等因素影响而破坏秘密消息,鲁棒性较差.针对此缺陷,钱玉文等[8]设计了一种基于HTTP协议的网络隐蔽时间信道,利用HTTP协议POST与GET的双工方式来提高可靠性;但该方法仅用单个较大IPD来保持收发端同步,一旦IPD被破坏,会造成收发端同步过程失败和信道瘫痪,且该信道不能用于UDP流.为改善同步机制,牛小鹏等[9]采用网络隐蔽存储信道携带特殊标记来同步收发端;但含特殊标记的数据包发生重传、乱序或丢失[10-11]时,此同步机制会被破坏,从而导致秘密消息传输失败[12].
针对当前基于单IPD网络隐蔽时间信道存在的鲁棒性差、同步机制脆弱等问题,本文提出了一种基于Manchester编码(MC)的自同步网络隐蔽时间通信模型ROSMC.给出了关键算法、同步机制及相关参数设置的具体实现过程,并对其同步性、鲁棒性及隐蔽性进行了实验验证.
1 网络隐蔽时间通信模型
ROSMC模型由发送端、秘密消息编码器(MC encoder)、解码器(MC decoder)及接收端组成(见图1).发送端产生正常载体流f后,调用消息编码器对秘密消息进行扩频处理得到扩频码;然后根据扩频码及同步参数,通过调整流f的时间特征来模拟扩频码所对应的MC序列中0与1的编码过程,从而完成秘密消息和同步信号的嵌入.流f经网络传输后变成流f′.接收端调用解码器对捕获的流f′执行解扩和解码操作,以恢复流f′所携带的秘密消息,从而完成隐蔽通信过程.
图1 ROSMC模型
1.1 秘密消息编码器的编码过程
MC是一种同步时钟编码技术,在物理层被用于编码同步位流的时钟和数据.经MC编码后的数据位中间具有高低电平跳变,该跳变可同时作为同步时钟信号与数据信号;例如,可用低到高跳变表示0,高到低跳变表示1.收发方可从MC信号序列中根据跳变信息来提取同步信息及数据.
(a) 0的低到高跳变模拟过程
(b) 1的高到低跳变模拟过程
本文借鉴MC思想,通过调整流f的时间特征来模拟MC编码过程,以实现秘密消息在流f中的嵌入.此过程的关键之处在于如何模拟MC中0和1的高低电平跳变.本文通过零操作(OPRT-0)和壹操作(OPRT-1)来实现(见图2).图中,深色和浅色条带分别表示时隙位置未被改变和已被改变的数据包.详细过程为:从距流f起始时刻偏移θ(θ> 0)处起,选取一段持续时间U,将U划分为2n(n>0)个长度为T(T>0)的时隙I1,I2,…,I2n,且每2个相邻时隙构成1个时隙对(I2i-1,I2i)(i=1,2,…,n).OPRT-0表示对(I2i-1,I2i)执行操作Empty(I2i-1,T),使得A2i-1=0,A2i>0,以模拟MC中0的低到高电平跳变;OPRT-1表示对(I2i-1,I2i)执行操作Empty(I2i,T),使得A2i-1>0,A2i=0,以模拟MC中1的高到低电平跳变.其中,A1,A2,…,A2n表示落在各时隙内的包数量.Empty(Ix,T)表示清空Ix(x=2i或x=2i+1)内所有数据包,即对Ix内每个包增加延迟,使其推迟到下一个时隙Ix+1内发送;其伪代码如算法1所示,算法的时间与空间复杂度分别为O(Ax+Ax+1)和O(1).
算法1 时隙Ix内数据包清空操作
输入:Ix,T.
输出:Ix内包延迟后的发送时刻.
Empty(Ix,T)
a←C[] /*C[]记录各时隙中第1个数据包在Q[]处的索引*/
b←C[x+1]
Δ=T/(A[x]+A[x+1]+1)
fors=0 toA[x] dotp=xT+(s+1)ΔQ[a+s]=tp
end for
fors=0 toA[x+1] dotp=xT+(A[x]+s+1)ΔQ[b+s]=tp
end for
A[x+1]=A[x]+A[x+1] /* 将Ix所有包加入到Ix+1中*/
C[x+1]=C[x]
(1)
(2)
S0={α1,α2,…,αr},S1={β1,β2,…,βr}
αk,βk∈{0,1}k=1,2,…,r
(3)
秘密消息编码器在流f中嵌入M的过程伪代码如算法2所示.
图3 基于MC编码过程(r=3)
算法2 秘密消息编码器对M的嵌入
输入:M,θ,r,T.
输出:调制后的载体流f.
Encode(M,θ,r,T)
n←Len(M)
MD=DSSS(M,r) /*对M进行扩频操作*/
G←2nr/*G为时隙总数*/
L←record the duration time of flowf
Q[]←record the timestamp of each packet inf
if (2Tnr<(L-θ))
{tp←get the first timestamp inQ[] which>θ
fori=0 toG-1 do
A[i]=0;
while (tp>θ+iT&&tp<θ+(i+1)T) do
if (A[i]==0)
C[i]←record the position of firsttpinIi;
end if
A[i]++ /*Ii内包数量 */
tp←get next timestamp inQ[]
end while
end for
fori=0 tonr-1 do /* 对MD的每个比特编码*/
if (MD[i]==0)
Empty(I2i-1,T)
else
Empty(I2i,T)
end if
end for
send all packets of flowfusing newtpinQ[]
}
else
printf ("Can’t encodeMwith current flowf!")
end if
1.2 解码器的解码过程
解码器为秘密消息编码器的逆过程,可利用参数(θ,T,r,U)对携带M的流f′进行解码与解扩,并恢复出秘密消息M.详细步骤如下:
① 根据参数U,T,r,计算M的长度n和时隙总数G.
② 当流f′的第1个数据包到达后,等待θ,以获取M在流f′中的起始位置.
③ 统计从θ开始的I1~IG时隙内的数据包数量,保存在A[0]~A[G-1]中.
④ 比较第i个时隙对(I2i,I2i+1)内的数据包数量.若A[2i]-A[2i+1]<0,则认为(I2i,I2i+1)对应的比特位为0,即MD中第k个比特位为0;否则为1.重复此过程以解码出MD.
⑤ 由MD解扩出M.在MD中找到mi所对应的r个扩频位,并保存在R[1]~R[r]中.为简单起见,令q=R[1]+R[2]+…+R[r],若q=0,说明R[1]=R[2]=…=R[r]=0,则mi=0;若q=r,说明R[1]=R[2]=…=R[r]=1,则mi=1;若q≠0,则解扩结果错误;重复此过程直至解扩出M.
⑥ 返回恢复出的秘密消息M.
上述步骤对应算法的时间、空间复杂度与算法2类似.
1.3 抗干扰能力分析
此处仅考虑mi=1时的情况(mi=0的情况可类推).在秘密消息编码器中将mi嵌入流f之前,mi扩频后所对应的时隙为Ih+2k-1~Ih+2k(h=2ir,k=1,2,…,r),则
(5)
1.3.1 理想网络环境
依据中心极限定理[14],M被成功传输的概率为
(7)
1.3.2 实际网络环境
(8)
(9)
2 实验结果与分析
2.1 实验环境与参数选择
在Linux系统下分别实现了秘密消息编码器与解码器,对数据包流的相关操作通过Netfilter Iptables软件[15]来完成,并在真实网络环境中进行测试,拓扑结构如图4所示.图中,JLH,CNV分别表示地理位置不同校区.解码器作为应用程序运行于接收端上.编码器的软硬件配置如下:CPU为Intel Xeon (R) E5606 2.13 GHz,内存为8 GB,网卡为NetXtreme Ⅱ BCM5709,操作系统为Fedora 14.接收端的软硬件配置如下:CPU为Intel G640 2.8 GHz,内存为4 GB,网卡为RTL8168FPCI-E,操作系统为Ubuntu 12.05.
图4 实验网络环境拓扑结构
秘密消息编码器与解码器需事先共享私密参数(θ,T,r,U).偏移量θ不但会影响流f中的隐藏信息数量,还能保证收发端同步.根据实验结果,设置θ=50 ms.T选取过大,会导致ROSMC模型对流f的调整幅度较大,难以保证隐蔽性;T过小又易受网络干扰因素影响,缺乏健壮性.增大r虽然可提高ROSMC模型的鲁棒性,但也会使模型消耗更多的时隙与数据包,降低流f隐藏信息的能力.因此,T和r的设置需依据不同网络环境特性来确定.图5给出了本文实验环境下传输相同M时r,T与检测正确率Ra的关系.由图可知,Ra随着r,T的增加而增大.因此,此处设置r=3,T=20.
图5 r,T与检测正确率的关系
2.2 结果分析
2.2.1 自同步性
图6 θ与检测正确率的关系
2.2.2 鲁棒性对比
鲁棒性是指流f在经过网络传输后所携带秘密消息的损失程度,本质上代表了隐蔽信道的抗干扰能力.为验证各网络隐蔽时间信道的鲁棒性,在07:00—08:00,15:00—16:00,21:00—22:00时段内,将不同大小的二进制文件分别用CTCFC算法[7]、RCTC算法[8]、RNCC算法[9]及ROSMC算法进行收发测试,载体流为TCP流,结果如图7所示.由图可知,在上午07:00—08:00时段内,校园网流量较小,4种算法的检测错误率(即1-Ra)均较低,都能较好地传输测试文件.但在下午和晚上,校园网用户(如教师办公、学生上网)增多,网络流量增大,对隐蔽时间信道的干扰增加,RNCC算法与CTCFC算法的检测错误率增大幅度远大于RCTC算法与ROSMC算法.这是由于RCTC算法采用出错重传机制,ROSMC算法采用扩频机制,它们都能较好地应对网络噪音流量的干扰.在大流量下,虽然RCTC算法与ROSMC算法的检测错误率有所上升,但基本上都不超过10%,其最大值较RNCC算法和CTCFC算法下降约85%.由此可见,RCTC算法与ROSMC算法的鲁棒性更好.
(a) 07:00—08:00
(b) 15:00—16:00
(c) 21:00—22:00
图8展示了晚上网络流量较大时4种算法使用UDP流传输的测试结果.由图可知,RCTC算法的检测错误率为100%,这是因为该算法只适用于TCP流.RNCC算法的检测错误率超过99%,原因是网络流量大且UDP为不可靠协议,易造成该算法中携带同步信息的数据包丢失,从而导致接收端难以准确恢复出秘密消息.由图7和图8可知,ROSMC算法在较大网络流量下均能较好地适用于TCP流和UDP流.
图8 UDP流下4种算法的鲁棒性
2.2.3 隐蔽性对比
隐蔽性是指载体流对携带秘密消息的暴露程度,主要用于衡量网络隐蔽时间信道应对攻击者发现能力的强弱.隐蔽性评测主要通过K-S(Kolmogorov-Smirnov)测试实验进行.此处,采用双样本K-S测试方法对4种算法的隐蔽性进行测试对比,主要是通过评估2组样本数据是否符合相同经验累积分布函数来判断其差异.
图9 4种算法的双样本K-S测试结果
3 结语
网络隐蔽时间通信本质是通过主动改变载体流时间特征来嵌入并传送数据信息的,要求能应对网络传输中各种因素干扰,保持收发端良好同步,具备较好的隐蔽性.本文提出了一种基于MC的自同步网络隐蔽时间通信模型.首先,将载体流持续时间划分为若干相同长度时隙;其次,收发端分别通过调整和判断相邻时隙内包数量来模拟MC编解码操作;然后,在扩频机制和时间偏移量辅助下,完成秘密信息的嵌入、传输及恢复过程.实验结果表明,该方法的鲁棒性、同步性均优于传统IPD时间隐蔽信道,且在网络负载较大时仍能保持较好的隐蔽性.下一步将就信道容量的提升、无线网络中的适应性、与相关网络安全措施的结合性等方面展开研究工作.
References)
[1]冯登国,张敏,李昊.大数据安全与隐私保护[J].计算机学报,2014,37(1):246-258. Feng Dengguo, Zhang Min, Li Hao. Big data security and privacy protection[J].ChineseJournalofComputers, 2014, 37(1): 246-258. (in Chinese)
[2]冯登国,张敏,张妍,等.云计算安全研究[J].软件学报,2011,22(1):71-83. Feng Dengguo, Zhang Min, Zhang Yan, et al. Study on cloud computing security[J].JournalofSoftware, 2011, 22(1): 71-83. (in Chinese)
[3]谭庆丰,刘培朋,时金桥,等.UGC3:一种抵御审查的隐蔽通信方法[J].通信学报,2012,33(8):155-161. Tan Qingfeng, Liu Peipeng, Shi Jinqiao, et al. UGC3: a covert communication method defense against censorship[J].JournalonCommunications, 2012, 33(8): 155-161. (in Chinese)
[4]Rios R, Onieva J A, Lopez J. Covert communications through network configuration messages[J].Computers&Security, 2013, 39: 34-46.
[5]章思宇,邹福泰,王鲁华,等.基于DNS的隐蔽通道流量检测[J].通信学报,2013,34(5):143-151. Zhang Siyu, Zhou Futai, Wang Luhua, et al. Detecting DNS-based covert channel on live traffic[J].JournalonCommunications, 2013, 34(5): 143-151. (in Chinese)
[6]Cabuk S, Brodley C E, Shields C, et al. IP covert timing channels: design and detection[C]//Proceedingsofthe11thACMConferenceonComputerandCommunicationsSecurity. New York: ACM, 2004: 178-187.
[7]Archibald R, Ghosal D. A covert timing channel based on fountain codes[C]//2012IEEEInternationalConferenceonTrust,SecurityandPrivacyinComputingandCommunications. Liverpool, UK, 2012: 970-977.
[8]钱玉文,赵邦信,孔建寿,等.一种基于Web的可靠网络隐蔽时间信道的研究[J].计算机研究与发展,2011,48(3):423-431. Qian Yuwen, Zhao Bangxin, Kong Jianshou, et al. Robust covert timing channel based on Web[J].JournalofComputerResearchandDevelopment, 2011, 48(3): 423-431. (in Chinese)
[9]牛小鹏,李清宝,王炜.一种基于扩频编码的可靠网络隐蔽信道设计方法[J].电子与信息学报,2013,35(4):1012-1016. Niu Xiaopeng, Li Qingbao, Wang Wei. A robust network covert channel algorithm based on spread coding[J].JournalofElectronics&InformationTechnology, 2013, 35(4): 1012-1016. (in Chinese)
[10]Zhang Z, Guo Z, Yang Y. Bounded-reorder packet scheduling in optical cut-through switch[C]//2013IEEEINFOCOM. Turin, Italy, 2013: 701-709.
[11]Narasiodeyar R M, Jayasumana A P. Improvement in packet-reordering with limited re-sequencing buffers: an analysis[C]//2013IEEEConferenceonLocalComputerNetworks. Sydney, Australia, 2013: 416-424.
[12]Liu Y, Ghosal D, Armknecht F, et al. Robust and undetectable steganographic timing channels for i.i.d. traffic[C]//InformationHidingConference. Calgary, Canada, 2010: 193-207.
[13]Giustiniano D, Lenders V, Schmitt J B, et al. Detection of reactive jamming in DSSS-based wireless networks[C]//ProceedingsoftheSixthACMConferenceonSecurityandPrivacyinWirelessandMobileNetworks. Budapest, Hungary, 2013: 43-48.
[14]谢安,李冬红.概率论与数理统计[M].北京:清华大学出版社,2012:122-125.
[15]Netfilter Core Team. The netfilter.org “iptables” project [EB/OL]. (2013-11-22)[2014-06-15]. http://www.netfilter.org./projects/iptables/index.html.
Robust and self-synchronous network covert timing communication model based on spread Manchester code
Guo Xiaojun1,2,3Cheng Guang1,3Zhou Aiping1,3Pan Wubin1,3Zhu Chengang1,3
(1School of Computer Science and Engineering, Southeast University, Nanjing 210096, China) (2School of Information Engineering, Tibet Nationalities Institute, Xianyang 712082, China) (3Key Laboratory of Computer Network and Information Integration of Ministry of Education, Southeast University, Nanjing 210096, China)
To solve the problem of poor robustness and vulnerable synchronization of the current network covert timing channel using inter-packet delay(IPD), a robust and self-synchronous covert timing communication model based on spread manchester code(ROSMC) is proposed. First, the spectrum of the covert message is spread to produce spreading code(SC). Then, the duration of network flow is divided into many time intervals with equal length and two adjacent time intervals constitute one pair. Each bit of SC is embedded into flow through simulating 0 and 1 encoding process of the corresponding Manchester code(MC).The encoding process can be implemented by adjusting the number of the packets in the time interval pair. Meanwhile, an offset from the starting moment of flow is used to indicate the synchronous position. The offset and MC features make the adjusted flow present self-synchronization which can help receiver decode covert message accurately. The experimental results show that, compared with the IPD-based methods, the proposed model synchronizes sender and receiver more quickly and accurately. The maximum of the detection error rate can be reduced by 85% under different network traffic loads and the resistance to interference is significantly enhanced. Besides, the proposed model presents better covertness under heavier network traffic loads.
information security; network covert timing channel; Manchester code; robustness; covertness
2014-07-20. 作者简介: 郭晓军(1983—),男,博士生;程光(联系人),男,博士,教授,博士生导师,gcheng@njnet.edu.cn.
江苏省未来网络前瞻性基金资助项目(BY2013095-5-03)、江苏省普通高校研究生科研创新计划资助项目(KYLX_0141)、西藏自治区自然科学基金资助项目(2013).
郭晓军,程光,周爱平,等.基于扩频Manchester码的可靠自同步网络隐蔽时间通信模型[J].东南大学学报:自然科学版,2015,45(1):23-30.
10.3969/j.issn.1001-0505.2015.01.005
TP393
A
1001-0505(2015)01-0023-08