陈 凯,许海铭,徐 震,林东岱,刘 勇
(1.信息安全国家重点实验室,北京 100093;2.中国科学院信息工程研究所,北京 100093;3.中国科学院大学,北京 100049;4.国家能源局安全司,北京 100824;5.华北电力大学电气与电子工程学院,北京 102206;6.山东省电力公司调度控制中心自动化处,山东济南 250000)
适用于移动云计算的抗中间人攻击的SSP方案
陈 凯1,2,3,许海铭4,5,徐 震1,2,林东岱1,2,刘 勇6
(1.信息安全国家重点实验室,北京 100093;2.中国科学院信息工程研究所,北京 100093;3.中国科学院大学,北京 100049;4.国家能源局安全司,北京 100824;5.华北电力大学电气与电子工程学院,北京 102206;6.山东省电力公司调度控制中心自动化处,山东济南 250000)
低功率蓝牙(BLE)专为资源受限的设备设计,但现有的研究已经指出其安全简单配对方案(SSP)存在中间人攻击(MITM)漏洞.文章指出造成MITM漏洞的根本原因是:配对信息被篡改以及JW模式自身的漏洞.为此文章中提出了两个适用于移动云计算(MCC)中BLE设备的SSP改进方案,所提出的方案基于哈希函数并利用MCC技术提高SSP的安全性.方案1适用于支持PE或者OOB模式的BLE设备,其利用哈希函数确保配对信息的真实性、可靠性.方案2通过哈希序列来解决仅支持JW模式的BLE设备的MITM攻击漏洞.文章分别从安全角度和性能角度对所提出的方案进行分析,以表明方案在不同级别敌手的攻击下可以提供MITM攻击防护能力.
蓝牙低功率;安全简单配对方案;中间人攻击;移动云计算
电子学报URL:http://www.ejournal.org.cn DOI:10.3969/j.issn.0372-2112.2016.08.005
低功率蓝牙(BLE)在蓝牙v4.0版本中被提出.BLE的设计初衷是将蓝牙技术应用于仅由“纽扣”电池供电的便携设备中.借助于MCC技术[1],BLE产品得到了极大的丰富.对于MCC中的BLE设备来说,移动终端设备通常作为master,而周边设备作为slave.
自蓝牙v2.1版本后,安全简单配对(SSP)方案被引入蓝牙标准中来实现设备配对过程.在BLE标准中,SSP提供三种不同的关联模型:Just Work模型(JW)、Passkey Entry模型(PE)及Out of Band模型(OOB).其中,JW模型无法抵抗中间人(MITM)攻击.近年来,研究人员已经提出了多种方法[2,3],可以强迫对端设备使用JW模型,从而利用JW模型的漏洞来实施MITM攻击.造成MITM攻击漏洞的根本原因为:(1)在SSP过程中,用来交换设备输入/输出(I/O)信息的配对消息可能被攻击者篡改;(2)JW模型在SSP过程中无法提供MITM攻击防护.
为了提高BLE设备的安全性,使其具有抗MITM攻击能力,本文首先针对MCC环境中BLE的典型应用场景进行分析.作者发现在MCC环境中,BLE设备具有以下特征:(1)所有的master设备至少支持两种不同的无线通信信道;(2)大多数slave设备仅支持一种通信信道,因此slave设备无法直接与云服务连接;(3) master设备的能力通常强于slave设备;(4)计算能力上的限制使得复杂的密码运算无法在BLE设备上运行,尤其无法在slave设备上运行.
根据以上的分析结果,本文通过如下两种方式来提高SSP方案的安全性:(1)由于master设备支持多个通信信道,因此,本文引入位于云端的可信第三方(TTP)来协助BLE设备交换其I/O能力信息;(2)考虑到BLE设备的处理能力有限,本文所提出的方案仅在BLE设备上运行轻量级的密码算法,以此来最小化BLE设备的负载.
Haataja等人[4,5]建议在应用层增加额外的安全机制来提高SSP的安全性.例如,在应用层增加额外的确认窗口以确保正确的关联模型被使用.Sharmila等人[6]提出了一种OOB信道可变频率的方案来提高SSP的安全性.在他们的方案中,OOB信道的频率被预置在每个设备中,在特定的周期内,通信双方使用特定的OOB频率进行带外通信.
RF指纹是由Ureten和Serinken[7]提出的一种增强无线网络通信安全性的方法.Pasanen等人[8]将RF指纹技术扩展到蓝牙设备中.在Pasanen等人的方案中,一台专用服务器负责存储所有合法蓝牙设备的RF信息,并且以此来判断是否允许正在发射RF信号的蓝牙设备相连.
耿君峰等人[9]通过分组净化与蓝牙设备地址绑定来帮助蓝牙设备抵抗自外部设备的窃听攻击、主设备地址假冒攻击、分组伪造攻击和来自内部设备的分组否认攻击.
目前,还有一些研究人员提出了针对蓝牙的入侵检测系统和入侵防御系统[10],这些系统试图从网络的角度防御针对蓝牙设备的攻击.
与本文所提出的方案相比,Haataja等人的方案要求蓝牙终端必须具有显示输出设备.而Sharmila等人提出的方案对于仅支持Just Work模型的BLE设备起不到保护作用.FR指纹能够提供的安全性较高,但是Pasanen等人的方案只适用于局部场景中,例如,在一个办公大厦内负责一个公司内的蓝牙设备.对于入侵检测系统和入侵防御系统来说,需要特定的部署模式才能充分发挥功效.
现有的研究[11,12]表明MITM攻击对蓝牙设备来说是一个严重的威胁.MITM攻击者实施攻击的主要手段[4,5,13~16]是强迫配对的BLE设备使用JW模型,并且利用JW模型不提供MITM攻击保护的漏洞进行攻击.
如图1所示,MITM攻击者首先中断BLE设备的物理层连接,以使得受害用户误以为他们的BLE设备出现的问题.被欺骗的用户很可能会删除设备中已经存储的密钥,并重新进行设备配对.在设备重新配对过程中,攻击者伪造BLE设备的I/O能力信息,以使得受害的BLE设备误以为对方“既无输入能力,也无输出能力”.随后,JW模型被强迫使用.由于JW模型不能提供MITM攻击防护能力,所以MITM攻击者可以窃听受害BLE设备的通信,甚至可以篡改用户的数据.
本文假设敌手针对BLE的SSP方案进行MITM攻击,作者考虑多级能力的敌手模型并假设level N敌手拥有所有级别小于N的敌手的能力:
(1)Level 1敌手:敌手有能力窃听合法设备之间的会话数据,并在随后的攻击中重放窃听得到的数据;
(2)Level 2敌手:敌手能够主动阻断合法设备之间的信息交换,并可以在合法设备配对过程中插入、篡改信息;
(3)Level 3敌手:敌手有能力主动询问合法的设备,记录下合法设备回复的信息,并在随后的攻击中进行重放.
本文的目标是,所提出的SSP改进方案能够在面对level 1到level 3级敌手的情况下,向MCC中的BLE设备提供抗MITM攻击能力.
5.1 方案I:基于哈希函数的SSP方案
方案I引入位于云端平台的TTP来提供配对设备的I/O能力信息的哈希值,该哈希值将会和BLE设备自身提供的I/O能力信息的哈希值进行比较.为了标识设备,每台BLE设备将会被预设一个唯一的内部ID值(intid).如表1所示,TTP维护一个数据库表,来储存所有BLE设备的物理地址Addr、当前内部ID(intidc)、上次使用的内部ID(intidl)和设备的I/O能力信息.TTP为每个BLE设备存储两个内部ID是为了解决消息丢失问题.如果由于意外事件或攻击者攻击造成消息丢失,那么BLE设备仍然可以通过intidl被正确的识别.
表1 TTP中的数据库表格
图2详细描述了方案I的步骤.设哈希函数为h(),符号‖表示字符串拼接.具体的方案流程如下:
(1)Master设备产生随机数挑战Rm;
(2)Master将随机数挑战Rm连同配对请求消息发送给slave设备;
(3)Slave设备产生随机数Rs,并通过公式(1)计算出外部ID;
extids=h(intids‖Rm‖Rs)
(1)
(4)extids连同随机数Rs一起通过配对响应消息发送给master设备;
(5)当收到配对响应消息后,master设备使用和slave设备相同的方法计算出外部ID值extidm;
extidm=h(intidm‖Rm‖Rs)
(2)
(6)Master设备将含有Rm、Rs、extidm和extids的验证请求消息发往TTP;
(3)
(4)
(5)
vm=h(intidm‖IOs‖Addrs‖Rm‖Rs)
(6)
vs=h(intids‖IOm‖Addrm‖Rm‖Rs)
(7)
intidm=h(intidm)
(8)
(14)Slave设备通过公式(9)更新intids;
intids=h(intids)
(9)
(…)方案I剩余的步骤与原SSP方案相同.
因为master设备支持多种通信信道,所以master设备可以分别从TTP和slave设备获得关于slave设备的I/O能力信息,通过对比来确保slave设备所发送的I/O能力信息的真实性和完整性.Slave设备在master设备和验证转发消息的帮助下,也可以分别从TTP和master设备处获得关于master设备的I/O能力信息.因此,slave设备也有能力鉴别master设备所发送的I/O能力信息的真伪.一旦鉴定出配对的BLE设备的I/O能力信息存在问题,那么master设备或者slave设备将立即终止设备配对过程,并以此来防止错误的关联模型被使用.避免使用错误的关联模型,这也是防止MITM攻击的基本前提.
方案I为支持PE或者OOB模型的BLE设备而设计,但对于仅支持JW模型的BLE设备来说,方案I并不适用.
5.2 方案II:基于哈希序列的SSP方案
为了向仅支持JW模型的BLE设备提供抗MITM攻击能力,作者利用哈希序列对方案I进行了改进.造成MITM攻击漏洞的根本原因是JW模型的TK被设置0.因此,在方案II中TK被设置成随机数.
设f()为哈希函数,F表示由f()生成的哈希序列,Fi表示该哈希序列中的第i个元素.设R为长度为m×n的随机数,Ri表示R中第i个m比特长的数据片段(1≤i≤n).假设R的取值为54668(1101 0101 1000 1100),m的取值为4,那么R1=13(1101)、R2=5(0101)、R3=8(1000)、R4=12(1100)、R=R1R2R3R4且n=4.
图3显示了方案II的详细处理步骤:
(1~3)方案II的前三个步骤与方案I相同;
(4)Slave设备产生随机数R,随机数的长度为m×n.随后按照上文提及的方法将R转换成R1R2…Rn的形式.Slave设备按照算法1计算函数GenHashArray(intids‖Rm‖Rs,R1R2…Rn,n)得到哈希序列Fs=(Fs1,Fs2,…,Fsn);
(5)哈希序列Fs和extids被封装在配对响应消息中,连同随机数Rs一起发送给master设备;
(6)当master设备接收到配对响应消息后,master设备通过公式(2)计算出extidm;
(7)Master设备将包含有Rm、Rs、extidm、extids和哈希序列Fs的验证请求消息发送给TTP;
(8)TTP按照算法2计算函数RetrieveRandom
(intids‖Rm‖Rs,(Fs1,Fs2,…,Fsn)),从哈希序列中恢复出随机数R.如果算法2返回错误,那么TTP则将一个随机数直接发送给master设备代替验证响应消息;
(9)TTP采用和方案I相同的流程计算出验证响应消息;
(14)Master设备通过公式(6)计算出验证消息vm;
(15)Master设备通过函数RetrieveRandom(vm,(Fm1,Fm2,…,Fmn))从哈希序列中恢复出随机数R.如果该函数返回错误,那么master设备必须立刻终止设备配对过程;
(17)从哈希序列中恢复出随机数R之后,master设备根据公式(8)更新intidm;
(18)Slave设备根据公式(9)更新intids;
(19)当执行到此步骤时,master设备和slave设备均获得了随机数R.因此,TK值可以被设置为R;
(…)方案II剩余的步骤与原SSP方案使用JW模型时相同.
因为BLE设备的内部ID从未被揭露,所以可以使用哈希序列(Fm1,Fm2,…,Fmn)和(Fs1,Fs2,…,Fsn)来秘密地传输随机数R.当使用JW模型时,方案II中的TK被设置为随机数R.因此,方案II能够向仅支持JW模型的BLE设备提供抗MITM攻击的能力.
6.1 安全性分析
表2呈现了针对方案I和方案II安全性分析的结果.
表2 安全分析
6.1.1 抵抗level 1敌手
Level 1敌手攻击时存在两种攻击场景.
在第一种攻击场景中,BLE设备已经相互连接,即BLE设备已经完成了设备配对的过程.因为level 1敌手仅能够被动地窃听,或者重放窃听到的消息,所以level 1敌手不能够对已经配对的BLE设备实施MITM攻击.换句话说,在这种场景中,无论是原SSP方案,还是方案I或者方案II都可以提供针对level 1敌手的抗MITM攻击的能力.
在第二种攻击场景中,BLE设备从未遇见过彼此,也就是说,BLE设备将在level 1敌手在场的情况下进行设备配对.因此,在这种情况下,level 1敌手可以通过窃听来记录下所有的配对消息,并在需要时进行重放攻击.当使用原SSP方案时,level 1敌手先窃听下BLE设备的配对消息,并在恰当的时候将窃听到的消息进行重放攻击,以强迫受害的BLE设备使用JW模型进行配对.因此,在这个场景中,原SSP方案无法提供抗MITM攻击的能力.由于有TTP的协助,所以方案I与方案II都可以避免错误的关联模型被使用.在level 1敌手出现的情况下,方案I可以为支持PE模型或者OOB模型的BLE设备提供MITM攻击防护.而方案II可以提高JW模型的安全性.在方案II中,TK被设置为随机数.因此,在level 1敌手出现的情况下,方案II可以为仅支持JW模型的BLE设备的提供抗MITM攻击的能力.
6.1.2 抵抗level 2敌手
Level 2敌手拥有主动阻断受害BLE设备之间的信息交换的能力.即使BLE设备已经完成了设备配对,level 2敌手仍然可以通过阻断现有连接的方式来诱使受害用户删除设备中存储的密钥并重新进行设备的配对.因此,当使用原SSP方案进行设备配对时,level 2敌手可以对BLE设备实施MITM攻击.由于方案I和方案II中使用了TTP来保证设备I/O能力信息的正确性,即使level 2敌手拥有阻断的能力,他也无法强迫受害设备使用错误的关联模型.所以,在level 2敌手出现的情况下,方案I能够为支持PE模型或者OOB模型的BLE设备提供抗MITM攻击能力.因为方案II中的TK被设置为随机数,所以即使面对level 2敌手时,方案II也可以为仅支持JW模型的BLE设备提供MITM攻击防护.
6.1.3 抵抗level 3敌手
因为level 3敌手拥有level 1敌手和level 2敌手的能力,所以原SSP方案在面对level 3时已经无法在BLE设备配对过程中提供MITM攻击防护.Level 3敌手可以在需要时向合法的BLE设备发起询问,并记录下合法BLE设备的回复信息.例如,level 3敌手可以通过询问slave设备获得多个extid和哈希序列,或者通过询问master设备获得多个验证消息.但是,在方案I和方案II中,随机数(Rm和Rs)被引入extid、哈希序列和验证消息的计算过程中.所以,当使用方案I和方案II时,重放询问得到的信息无法使level 3敌手获得任何好处.在面对level 3敌手时,方案I能够为支持PE模型或者OOB模型的BLE设备提供MITM攻击防护.而当BLE设备仅支持JW模型时,方案II可以被用来防止MITM攻击.
6.2 性能分析
本章节将在所提出的方案与原SSP方案之间进行性能的对比分析,并且本章节还对如何确定方案II中的随机数R的比特长度、m的取值及n的取值进行说明.
6.2.1 负载对比
表3给出了不同方案之间的负载量对比.因为本文所提出方案的改进步骤集中于SSP配对过程的阶段1中,所以本章节主要对阶段1中的负载进行对比.具体来说,主要对比不同方案的计算量负载、存储负载以及通信量负载.
表3 不同方案的负载对比(阶段1)
与原SSP方案相比,方案I所需的额外负载很小.正如表3所示,与原SSP方案相比,BLE设备仅仅需要多进行3次哈希计算.从数据存储量的角度来对比,方案I中的每个BLE设备仅需要多存储1个内部ID.从数据通信量的角度来对比,master设备和slave设备之间需要多传输4个哈希值.因此,无论是对于master设备来说还是对于slave设备来说,方案I都足够的轻量.
相比之下,由于使用了哈希序列,方案II在计算量负载、数据存储负载和通信量负载上都更大一些.但是,方案II对于slave设备来说依然足够轻量.因为位于云端平台的TTP拥有大量的资源,而MCC环境中的master设备通常比slave设备的能力更强,所以在方案II中TTP和master设备承担了更多的计算任务.如表3所示,与原SSP方案相比,slave设备仅需要多进行(n+3)次哈希计算.Slave设备仍然可以保持一个瘦客户端.在下一章节,作者建议m的取值为4、n的取值为5,以使得JW模型能够拥有与PE模型相同的安全等级.
6.2.2 随机数R的长度取值
与原SSP方案相比,方案II中的额外负载主要来自哈希序列的计算.而且,负载量的大小与TK的比特长度,即与随机数R的比特长度,密切相关.随机数R的比特长度为m×n.如表3所示,与原SSP方案相比,slave设备需要进行(n+3)次哈希计算,与此同时,需要多传输(2×(lr+lh)+lf×n)个哈希值.正如5.2节中所提到的,方案II的一个关键问题就是能够在安全性(即TK的比特长度,随机数R的比特长度)和可用性(即所需的计算量与通信量负载)之间取得平衡.
本文所提出的方案能够在面对多级能力敌手的情况下,向BLE设备提供抗MITM攻击的能力.但是,额外的负载是不可避免的.本文的下一步工作便是研究如何进一步降低计算量和通信量负载.
[1]MCC Forum.The Definition of MCC[EB/OL].http://www.mobilecloudcomputingforum.com/,2011-08-16/2014-12-25.
[2]Padgette J,Scarfone K,Chen L.National Institute of Standards and Technology (NIST) Special Publications 800-121:Guide to Bluetooth Security[EB/OL].http://csrc.nist.gov/publications/nistpubs/800-121-rev1/sp800-121-rev1.pdf,2012-06-12/2014-03-29.
[3]Kaur S.How to secure our bluetooth insecure world![J].IETE Technical Review,2013,30(2):95-101.
[4]Hattaja K,Toivanen P.Two practical man-in-the-middle attacks on bluetooth secure simple pairing and countermeasures[J].IEEE Transactions on Wireless Communications,2010,9(1):384-392.
[5]Haataja K,Hyppønen K.Man-in-the-middle attacks on bluetooth:a comparative analysis,a novel attack,and countermeasures[A].Proceedings of the 3rd International Symposium on Communications,Control,and Signal Processing[C].Piscataway,NJ,United States:IEEE Computer Society,2008.1096-1102.
[6]Sharmila D,Neelaveni R,Kiruba K.Bluetooth man-in-the-middle attack based on secure simple pairing using out of band association model[A].Proceedings of the 2009 International Conference on Control Automation,Communication and Energy Conservation[C].Piscataway,NJ,United States:IEEE Computer Society,2009.1-6.
[7]Ueeten O,Serinken N.Wireless security through rf fingerprinting[J].Canadian Journal of Electrical and Computer Engineering,2007,32(1):27-33.
[8]Pasanen S,Haataja K,Pivinen N,et al.New efficient rf fingerprint-based security solution for bluetooth secure simple pairing[A].Proceedings of the 43rd Annual Hawaii International Conference on System Sciences[C].Piscataway,NJ,United States:IEEE Computer Society,2010.2819-2826.
[9]耿君峰,郁滨.基于蓝牙设备地址的分组净荷签密方案设计[J].计算机工程与设计,2015,36(1):103-107.
[10]Haataja K.New efficient intrusion detection and prevention system for bluetooth networks[A].Proceedings of the 1st International Conference on MOBILe Wireless MiddleWARE,Operating Systems,and Applications[C].Brussels,Belgium:ICST,2008.Article No.16.
[11]Dunning J P.Taming the blue beast:a survey of bluetooth based threats[J].IEEE Security and Privacy,2010,8(2):20-27.
[12]Sandhya S,Devi K A S.Analysis of bluetooth threats and v4.0 security features[A].Proceedings of the 2012 International Conference on Computing,Communication and Applications[C].Piscataway,NJ,United States:IEEE Computer Society,2012.1-4.
[13]Hypponen K,Haataja K M J."Ni†o" man-in-the-middle attack on bluetooth secure simple pairing[A].Proceedings of the 3rd IEEE/IFIP International Conference in Central Asia on Internet[C].Piscataway,NJ,United States:IEEE Computer Society,2007.1-5.
[14]Haataja K,Toivanen P.Practical man-in-the-middle attacks against bluetooth secure simple pairing[A].Proceedings of the 2008 International Conference on Wireless Communications,Networking and Mobile Computing[C].Piscataway,NJ,United States:IEEE Computer Society,2008.1-5.
[15]Mutchukota T R,Panigrahy S K,Jena S K.Man-in-the-middle attack and its countermeasure in bluetooth secure simple pairing[A].Proceedings of the 5th International Conference on Information Processing[C].Heidelberg,Germany:Springer Verlag,2011.367-376.
[16]张卫明,李世取.组合生成器的多线性相关攻击[J].电子学报,2005,33(3):427-432.
ZHANG Wei-ming,LI Shi-qu,Multi-linear correlation attack on combiners[J].Acta Electronica Sinica,2005,33(3):427-432.(in Chinese)
[17]Marquess K,Park W,Jones L,et al.Bluetooth Specification Version 4.0[EB/OL].https://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc-id=229737,2010-06-30/2014-10-06.
[18]Marquess K,Park W,Jones L,et al.Bluetooth Specification Version 4.1[EB/OL].https://www.bluetooth.org/DocMan/handlers/DownloadDoc.ashx?doc-id=282159, 2013-12-03/2014-12-20.
陈 凯 男,1985年生于天津.中国科学院信息工程研究所博士生.研究方向为网络与系统安全、身份认证、工业控制系统安全.
E-mail:chenk@iie.ac.cn
许海铭 男,国家能源局安全司处长,华北电力电力大学电气与电子工程学院博士生,主要从事电力系统安全研究.
Hash-Based Secure Simple Pairing for Preventing Man-in-the-Middle Attacks in Mobile Cloud Computing
CHEN Kai1,2,3,XU Hai-ming4,5,XU Zhen1,2,LIN Dong-dai1,2, LIU Yong6
(1.StateKeyLaboratoryofInformationSecurity,Beijing100093,China;2.InstituteofInformationEngineering,ChineseAcademyofSciences,Beijing100093,China;3.UniversityofChineseAcademyofScience,Beijing100049,China;4.NationalEnergyAdministration,Beijing100824,China;5.SchoolofElectricalandElectronicEngineering,NorthChinaElectricPowerUniversity,Beijing102206,China;6.StateGridShandongElectricPowerCompany,DispatchingControlCenter,Jinan,Shandong250000,China)
Bluetooth low energy (BLE) is designed for the devices with computational and power limitations.But it has been confirmed that Secure Simple Pairing (SSP) is vulnerable to the MITM attack.We identify the root causes of the problem:the pairing messages being tampered,and the vulnerability of the JW model.In this paper,we propose two hash-based SSP schemes for the devices in Mobile Cloud Computing (MCC).The proposed schemes enhance the SSP security with the help of MCC.Scheme I is applied into the devices which support the PE or OOB model.It uses the hash function to ensure the authenticity and integrity of the pairing messages.Scheme II is suitable for the devices which only support the JW model.It improves the security of the JW model through using the hash array.At the end of this paper,we examine the performance for the proposed schemes,and perform the security analysis to show that they can provide the MITM protection against the adversaries with different levels of power.
bluetooth low energy;secure simple pairing;man-in-the-middle attacks;mobile cloud computing
2015-01-15;
2015-03-17;责任编辑:蓝红杰
中国科学院先导专项子课题(No.XDA06010701);信息安全国家重点实验室科研仪器设备专项(No.Y4D0031302)
TP309.1
A
0372-2112 (2016)08-1806-08