移动通信设备的安全防护模块及其处理方法转让专利
申请号 : CN200510023125.7
文献号 : CN1801807B
文献日 : 2010-09-01
发明人 : 何翔 , 何代水
申请人 : 英华达(上海)电子有限公司
摘要 :
权利要求 :
1.一种采用蓝牙传输技术的移动通信设备,具备蓝牙协议上层到底层的堆栈结构依次如下:串行电缆模拟协议层、服务发现协议层、逻辑链路控制与适应协议层、主机控制接口、链路管理层、基带层和蓝牙无线层,其特征在于:还具备一个防火墙模块,位于逻辑链路控制与适应协议层的上层或逻辑链路控制与适应协议层与主机控制接口之间,在收到来自逻辑链路控制与适应协议层的连接请求事件后,先由防火墙模块对数据包进行过滤分析,对可信节点,向逻辑链路控制与适应协议层发送允许接通事件;对不可信节点,向逻辑链路控制与适应协议层发送禁止接通事件;其过滤分析的依据为对方单元的蓝牙设备地址。
2.根据权利要求1所述的采用蓝牙传输技术的移动通信设备,其特征在于,当该设备的蓝牙装置作为从单元时,所述的防火墙模块(201)的位置在逻辑链路控制与适应协议层(202)之上,防火墙模块(201)在收到来自逻辑链路控制与适应协议层(202)的L2CA_ConnectInd连接事件后,就对数据包进行过滤分析,判定是可信节点还是不可信节点,按判定结果向逻辑链路控制与适应协议层(202)发送L2CA_ConnectRsp允许事件或L2CA_ConnectRspNeg禁止事件,允许或禁止建立连接,其过滤分析的依据为主单元传送过来的跳频同步数据包中获得的主单元蓝牙设备地址。
3.根据权利要求1所述的采用蓝牙传输技术的移动通信设备,其特征在于,当该设备的蓝牙装置作为主单元时,所述的防火墙模块(201)的位置在逻辑链路控制与适应协议层(202)和主机控制接口(203)之间,在逻辑链路控制与适应协议层(202)准备向下层的主机控制接口(203)发送LP_ConnectReq连接请求事件时,由防火墙模块先进行过滤分析,判定是可信节点还是不可信节点,如果分析出目标的节点是可信节点,就向逻辑链路控制与适应协议层(202)发送L2CA_ConnectRsp允许事件,允许建立连接;如果分析出目标的节点是不可信的,则不再向下传LP_ConnectReq连接请求事件,同时向逻辑链路控制与适应协议层(202)发送LP_ConnectCfmNeg禁止事件,以表明建立连接被拒绝,逻辑链路控制与适应协议层(202)收到后,就会向上层发送L2CA_ConnectCfmNeg禁止事件,否则就向主机控制接口(203)转发LP_ConnectReq连接请求,交由底层进行处理。
4.一种权利要求1所述的防火墙模块对数据包的处理方法,其特征在于采用下列步骤:防火墙模块根据蓝牙设备地址先对查询或寻呼数据包进行分析,划分为可信节点、不可信节点、其它节点(301),对可信节点和不可信节点进行分析(302),确认为可信节点则允许建立通信连接传送数据(303);对于不可信节点进行分析(304),确认为不可信节点,则禁止所有传出到该节点的数据包、禁止对该节点传入数据包的回应(305);否定是不可信节点则自动禁止或交用户决定(306);对于其它的地址,在接收到其所发送的查询或寻呼数据包时,由用户决定其为可信节点或为活动节点(307),对于可信或活动节点,暂时拥有可信节点的权力,在与该节点连接断开后,自动从活动节点列表中删除该节点(308),对不是可信节点和活动节点则进行禁止(309)。
说明书 :
技术领域
本发明涉及一种移动用户设备,尤其是采用蓝牙(Bluetooth)传输技术的移动通信设备(蓝牙手机)的安全防护模块(防火墙模块)及其处理方法。
背景技术
图1所示的是现有蓝牙协议栈的结构,其主机控制接口(HCI)之上由串行电缆模拟协议(RFCOMM层)101、服务发现协议(SDP层)102、逻辑链路控制与适应协议(L2CAP层)103构成,通常用软件来实现。主机控制接口之下由链路管理层(LMP)104、基带层105、蓝牙无线层106构成,为蓝牙的底层硬件模块,对其修改就得重新烧制芯片。L2CAP层103在高层和基带层之间作适配,它与LMP层104是并列的,区别在于L2CAP层103向高层提供负载的传送,而LMP层104不能。L2CAP层103向高层提供面向连接的和无连接的数据服务,具备多协议复用功能和拆/装适配功能。SDP层102是蓝牙体系中非常关键的部分,只有通过SDP层才能了解通信双方的设备信息、业务类型、业务特征,然后才能在蓝牙设备之间建立通信连接。目前蓝牙本身的安全措施局限在建立连接时进行会话密钥的认证。仅仅这种安全措施,显得十分脆弱。
发明内容
为解决上述技术问题,本发明在主机控制接口(HCI)以上增加一个防火墙模块,根据每个蓝牙设备所具有的唯一的蓝牙设备地址(BD-ADDR),在收到来自逻辑链路控制与适应协议层的连接请求事件后,先由防火墙模块对进入的数据包(packet)进行过滤分析后划分为三块:可信节点、不可信节点、其它节点。对于可信节点,向逻辑链路控制与适应协议层发送允许接通事件,允许建立通信连接传送数据;对于不可信节点,向逻辑链路控制与适应协议层发送禁止接通事件,阻止所有传出到该节点的数据包、禁止对该节点传入数据包的回应;对于其它的地址,在接收到其所发送的查询(Inquiry)或寻呼(Page)数据包时,可以由用户决定其为可信或活动节点,或者自动禁止。对于活动节点,可以暂时拥有可信节点的权力,在与该节点连接断开后,自动从活动节点列表中删除该节点。
本发明的防火墙模块由于使用了每个蓝牙设备所唯一的蓝牙地址(BDADDR)作为判断依据,从而保证了过程的安全、确保了结果的准确可信。另外,由于本发明将数据判定功能模块,即防火墙模块实现在蓝牙协议栈核心层主机控制接口以上的层面,因而无需修改蓝牙的底层硬件模块,即不需要重新烧制芯片就能方便实施。
附图说明
图2A是结构图,表示蓝牙装置作为从单元时,本发明防火墙模块的位置与功能;
图2B是结构图,表示蓝牙设备作为主单元时,本发明防火墙模块的位置与功能;
图3是流程图,表示本发明防火墙模块对数据包的处理方法。
具体实施方式
本发明在蓝牙装置中插入了一个防火墙模块。图2A所示的是当蓝牙设备作为从单元时,防火墙模块201的插入位置在逻辑链路控制与适应协议层(L2CAP)202的上层,以下依次为蓝牙装置的基本模块:主机控制接口(HCI)203、链路管理层(LMP)204、基带层(BASEBAND)205。该结构主要是为了阻止未知节点企图进行非法连接,窃取本机数据。防火墙模块201在收到来自L2CAP层202的L2CA_ConnectInd(连接)事件后,就对数据包进行过滤分析,确认是否为可信节点,按判定结果向L2CAP层202发送L2CA_ConnectRsp(允许)或L2CA_ConnectRspNeg(禁止)事件,允许或禁止建立连接。其过滤分析的依据为主单元的设备地址(BD_ADDR),这可以在主单元传送过来的跳频同步数据包(FHS packet)中获得。
图2B所示的是当蓝牙设备作为主单元时,防火墙模块201的插入位置在逻辑链路控制与适应协议层(L2CAP)202和主机控制接口(HCI)203之间。该过程主要是为了防止本机在用户未知的情况下,主动的泄漏出本机的机密信息给其它蓝牙设备。在L2CAP层202准备向下层的HCI层203发送LP_ConnectReq(连接请求)事件时,由防火墙模块先进行过滤分析。如果分析出目标是可信节点,则向下传LP_ConnectReq(连接请求)事件,如果分析出目标的节点是不可信的,则不再向下传LP_ConnectReq(连接请求)事件,同时向L2CAP层202发LP_ConnectCfmNeg(禁止连接),以表明建立连接被拒绝,L2CAP层202收到LP_ConnectCfmNeg(禁止连接)后,就会向上层发送L2CA_ConnectCfmNeg(禁止连接)事件;否则就向HCI层203转发LP_ConnectReq(连接请求),交给底层进行处理。
图3是本发明防火墙模块对数据包处理的流程,采用下列步骤:步骤301为防火墙模块根据蓝牙设备地址先对查询或寻呼数据包进行分析,划分为可信节点、不可信节点、其它节点。步骤302对可信节点和不可信节点进行分析。步骤303为确认可信节点后允许建立通信连接传送数据。步骤304对于不可信节点进行分析。步骤305为确认为不可信节点后禁止所有传出到该节点的数据包、禁止对该节点传入数据包的回应。步骤306为否定是不可信节点后,自动禁止或交用户决定。对于其它的地址,在接收到其所发送的查询(Inquiry)或寻呼(Page)数据包时,可进行步骤307,由用户决定其为可信节点或为活动节点。步骤308为确认可信或活动节点后,可以暂时拥有可信节点的权力,在与该节点连接断开后,自动从活动节点列表中删除该节点。步骤309确认为不是可信节点或活动节点后自动禁止连接。