你必须知道的蓝牙安全知识

安全 应用安全
蓝牙是一种无线开放标准技术,用于在没有互连电缆的情况下在短距离设备之间交换语音或数据。其有效范围变化取决于传播条件、材料覆盖、天线配置、电池状况等,但大多数蓝牙设备的有效范围为10m或更小。

[[212541]]

DHS 4300A系列手册由美国国土安全局推出,旨在指导敏感系统中无线技术的安全使用。手册中包括了如RFID、蓝牙等许多种无线技术的使用规范。接下来,我们将以蓝牙技术为例,具体剖析此手册中对于蓝牙技术方面的指导要求。DHS 4300A –Q6(蓝牙安全)于2014年12月15日发布,文档的主要目的是在安装、配置、使用、管理支持蓝牙的设备时能够确保最低安全性基准。

图1  DHS 4300A敏感系统手册

蓝牙技术简介

蓝牙是一种无线开放标准技术,用于在没有互连电缆的情况下在短距离设备之间交换语音或数据。其有效范围变化取决于传播条件、材料覆盖、天线配置、电池状况等,但大多数蓝牙设备的有效范围为10m或更小。该技术已经集成到许多类型的设备中了,包括手机、笔记本电脑、打印机、键盘、鼠标和耳机等,并且主要用于在设备之间建立自组织无线个域网(WPAN)如图2所示。蓝牙版本1.1和1.2仅支持最高为1 Mbps的传输速度,称为基本速率(BR),并且可以实现大约720 kbps的有效载荷吞吐量。版本2.0中引入的增强数据速率(EDR)规定了高达3 Mbps的数据速率和大约2.1 Mbps的吞吐量。

图2  Ad hoc蓝牙网络

文档中给出了蓝牙技术可以用来增强部门人员执行任务和业务需求能力的示例如下:

  • 办公环境中的平板电脑蓝牙键盘;
  • 办公室人员的蓝牙耳机;
  • 蓝牙PIV读卡器;
  • 车内使用的免提手机;
  • 在检查点基本单元与移动设备之间传输数据;
  • 在执法或调查期间收集在现场遇到的嫌疑人或感兴趣人的指纹。

由上可知,蓝牙技术的需求十分迫切,而且与电缆设备和外围设备相比,蓝牙具有明显的易用性优点。

蓝牙技术的安全问题

但像任何无线技术一样,蓝牙通信易受各种威胁。因为该技术已经使用各种各样的芯片组、操作系统和物理设备配置,这会导致大量不同的安全编程接口和默认设置。这些复杂性增加到无线通信中,意味着蓝牙易受一般无线威胁以及自身固有的漏洞的影响。常见的攻击包括:

  • Bluebugging :攻击者控制手机,可以拨打电话,窃听电话交谈,阅读联系人和日历等;
  • Bluejacking:将匿名、未经请求的消息发送到具有蓝牙设备的手机中并设为不可见;
  • Blueprinting:远程采集蓝牙设备指纹;
  • BlueSmack :通过蓝牙连接执行拒绝服务攻击,使设备不可用;
  • Bluesnarfing :使攻击者完全访问日历、联系人、电子邮件和短信;
  • BlueStumbling :允许攻击者根据蓝牙设备地址查找和识别用户。

蓝牙规范包括四种安全模式,分别提供不同方式、不同程度的保护措施。

安全模式1

使用安全模式1的设备被认为是不安全的。在这种安全模式下,安全功能(认证和加密)从未启动,因此设备和连接容易受到攻击。实际上,这种模式下的蓝牙设备是“不分敌我的”,并且不采用任何机制来阻止其他蓝牙设备建立连接。如果远程设备发起配对、认证或加密请求,则安全模式1设备将接受该请求而不加任何认证。由于其高度的脆弱性,文档规定DHS不得使用安全模式1。

安全模式2

安全模式2是服务级强制安全模式,其可以在链路建立之后但在逻辑信道建立之前启动安全过程。在这种安全模式下,本地安全管理器控制对特定服务的访问。访问控制以及与其他协议和设备用户的接口由单独的集中式安全管理器维护。此策略可以为具有不同安全需求并行运行的应用程序定义不同的安全策略和信任级别来限制访问,可以在不提供对其他服务的访问的情况下授予访问某些服务的权限。在这种模式下,引入了授权的概念(即决定特定设备是否允许访问特定服务的过程)。

安全模式3

安全模式3提供最好的安全性。它是链路级强制安全模式,其中蓝牙设备在链路完全建立之前启动安全过程。在安全模式3下运行的蓝牙设备为设备的所有连接授权认证和加密。因此,在进行认证、加密和授权之前,甚至不能进行服务的发现。一旦设备经过身份认证,服务级别授权通常不会被安全模式3设备执行。当经过身份验证的远程设备在不了解本地设备所有者的情况下使用蓝牙服务时,服务级授权应被执行以防止“认证滥用”。

安全模式4

安全模式4使用安全简单配对策略(Secure Simple Pairing,SSP),其中在链路密钥生成时,椭圆曲线(Elliptic Curve Diffie-Hellman,ECDH)密钥协议取代了过时的密钥协议。

提高蓝牙技术安全性的指导意见

为尽可能提高蓝牙技术的安全性,文档从管理、技术、操作部署三个方面给出了指导性意见。

管理上的最佳方法

  • 确保蓝牙用户了解与蓝牙使用有关的安全相关责任,并提供一系列预防措施,以更好地保护手持蓝牙设备免遭盗窃;
  • 仅在必要时启用蓝牙(例如在移动设备上关闭蓝牙,并在不使用时关闭耳机);
  • 当蓝牙链接处于活动状态时,尽量减少蓝牙链接设备之间的距离;
  • 最小化语音通话的持续时间;
  • 最大限度地减少信号拦截的机会,最大化与其他蓝牙设备,其他人和不受信任区域的距离;
  • 在进行配对时,移动设备将尝试找到其他支持蓝牙的设备。要始终验证并确认正在配对的设备。如果出现意外提示,请不要输入密码;
  • 从配对设备列表中删除丢失、被盗或未使用的设备;
  • 定期进行全面的安全评估,以充分了解蓝牙安全状况;
  • 确保从架构角度充分了解涉及蓝牙技术的无线设备和网络,并做好相应记录;
  • 维护所有蓝牙设备和地址的完整清单;
  • 个人及时跟踪蓝牙安全产品和标准的进展以及技术的威胁和漏洞。

技术上的最佳方法

  • 更改蓝牙设备的默认设置;
  • 将蓝牙功率设置为最低可用,以便尽可能减小信号范围。采用的最低蓝牙功率应足以维持授权用户之间的通信;
  • 选择足够长、随机和私密的PIN码,避免使用静态和弱PIN(例如全零);
  • 确保链接密钥不是基于单位密钥。使用共享单位密钥可能导致成功的欺骗,中间人攻击(MITM)和窃听攻击;
  • 根据密钥条目关联模型,为每组配对设备使用随机和唯一的密钥。如果一个静态密钥用于多组配对设备,则密钥条目关联模型提供的MITM保护将被减少;
  • 锁定每个设备上的蓝牙堆栈,以确保只有必需和批准的配置文件和服务可供使用,禁用不需要的和未经批准的服务;
  • 将蓝牙设备默认设置为不可发现,并保持不可发现,除非配对需要的情况。在发现服务期间发送的默认蓝牙设备名称应更改为非标识值;
  • 对所有蓝牙连接进行链接加密,并使用它来保护蓝牙连接期间的所有数据传输,否则传输的数据容易受到窃听;
  • 如果正在使用多跳无线通信,请确保在通信链路中的每个链路上启用加密。一个不安全的链接将影响整个通信链;
  • 确保对所有连接执行相互设备认证;
  • 将加密密钥大小配置为允许的最大值(128位)。使用允许的最大密钥可以防止暴力攻击;

操作和部署上的最佳方法

  • 确保蓝牙功能在不使用时被禁用。在所有设备上应禁用蓝牙功能,除非用户明确地启用蓝牙建立连接。这可以最大限度地减少潜在的恶意活动。对于不支持禁用蓝牙(例如耳机)的设备,整个设备在不使用时应该关闭;
  • 尽可能不频繁地进行配对。理想情况下,在安全区域,攻击者无法实际观察密钥条目或拦截蓝牙配对消息。用户不应该响应任何请求PIN的消息,除非用户已经发起配对,并且确定用户的设备之一发送了PIN请求。配对是一个至关重要的安全功能,要求用户对可能的窃听保持基本的安全意识;
  • 基本速率/增强型数据速率(BR / EDR)服务级别安全模式(即安全模式2或4)只能在受控和良好的已知环境中使用。安全模式3提供最好的安全性;
  • 确保具有蓝牙接口的便携式设备配置有密码或启用访问的PIN。如果设备丢失或被盗,这有助于防止未经授权的访问;
  • 如果蓝牙设备丢失或被盗,用户应立即从所有其他蓝牙设备的配对设备列表中删除丢失的设备;
  • 在支持基于主机的安全软件的启用蓝牙的主机上安装防病毒软件;
  • 全面测试和定期部署蓝牙软件和固件修补程序和升级;
  • 不接受任何来自未知或可疑设备的传输。这些类型的传输通常包括消息,文件和图像;
  • 在部署之前,充分了解部署任何安全功能或产品带来的影响。

总结

无线通讯技术方便了生活、工作的方方面面,但它也引入了更多的安全隐患。在规范的安全框架下合理合法使用无线通讯技术是极其重要的。本文以DHS 4300A系列手册出发,为敏感系统中蓝牙技术的使用带去指导性意见,为蓝牙技术的发展保驾护航。

【本文为51CTO专栏作者“中国保密协会科学技术分会”原创稿件,转载请联系原作者】

戳这里,看该作者更多好文

责任编辑:武晓燕 来源: 51CTO专栏
相关推荐

2011-05-13 11:41:55

2017-12-07 15:28:36

2017-10-11 15:50:18

光纤通信传输

2021-03-01 07:34:42

Java泛型ArrayList

2021-06-29 15:56:39

MYSQL开发数据库

2020-02-28 14:05:00

Linuxshell命令

2012-09-29 09:22:24

.NETGC内存分配

2012-09-29 10:29:56

.Net内存分配继承

2021-10-29 08:44:22

推拉机制面试broker

2011-11-30 09:09:13

王涛Windows Pho移动开发

2015-06-29 09:40:10

Rails新特性

2015-07-23 10:37:13

Linux命令

2024-03-29 13:17:03

Docker数据卷Volume

2015-02-28 15:40:38

iPhoneiPadiOS8安全设置

2011-05-11 15:28:05

2012-11-05 09:19:37

2019-05-30 08:25:50

5G4G网络

2023-11-13 08:18:56

2011-12-16 17:05:58

2015-10-27 10:22:47

Html5API调用
点赞
收藏

51CTO技术栈公众号