大学校园网

大学生活网 > 大学生学习 > 计算机学习

蓝牙定义及蓝牙技术体系分析

什么是蓝牙,蓝牙技术体系及相关术语

我想现在很多人都已经用上了蓝牙设备,如蓝牙耳机、蓝牙适配器、蓝牙键盘等,图 13—1和图13-2所示分别为蓝牙键盘和蓝牙耳机。这些在以前似乎还显得遥远的技术,现在 已经融入了生活的各个角落,例如,进入商场,随便一款稍好一点的手机,都带着蓝牙功能; 走在街上,身边经过的人总会有几个戴着蓝牙耳机。

 

什么是蓝牙,蓝牙技术体系及相关术语

 

1 什么是蓝牙

蓝牙这个名称来自于10世纪的一位丹麦国王Harald Blatand,Blatand在英文里的意思 可以被解释为Bluetooth(蓝牙)。在行业协会筹备阶段,需要一个极具有表现力的名字来命 名这项高新技术。行业组织人员在经过一夜关于欧洲历史和未来无限技术发展的讨论后,有 些人认为用Blatand国王的名字命名再合适不过了。Blatand国王将现在的挪威、瑞典和丹麦 统一起来;他的口齿伶俐,善于交际,就如同这项即将面世的技术,技术将被定义为允许不 同工业领域之间协调工作,保持着个各系统领域之间的良好交流,例如计算机、手机和汽车 行业之间的工作。于是名字就这么定了下来。

蓝牙的创始人是瑞典爱立信公司,爱立信早在1 994年就 与其他设备生产商联系,并激发了他们对该项技术的浓厚哭 趣。1998年2月,5个跨国大公司,包括爱立信、诺基亚、 IBM、东芝及Intel组成了一个特殊兴趣小组(SIG),他们 共同的目标是建立一个全球性的小范围无线通信技术,即现 在的蓝牙,图标如图13-3所示。

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-3

 

蓝牙是一种支持设备短距离通信(一般在lOm内)的无线电技术。能在包括移动电话、 PDA、无线耳机、笔记本电脑、相关外设等众多设备之间进行无线信息交换。利用“蓝牙” 技术,能够有效地简化移动通信终端设备之间的通信,也能够成功地简化设备与Internet之 间的通信,从而使数据传输变得更加迅速高效,为无线通信拓宽道路。蓝牙采用分散式网 络结构以及快跳频和短包技术,支持点对点及点对多点通信,工作在全球通用的2.4GHz ISM(即工业、科学、医学)频段。其数据速率为lMbit/s。采用时分双工传输方案实现全 双工传输。

Bluetooth无线技术是当今市场上支持范围最广泛、功能最丰富且安全的无线标准。全 球范围内的资格认证程序可以测试成员的产品是否符合标准。自1999年发布Bluetooth规 格以来,总共有超过4000家公司成为Bluetooth特别兴趣小组(SIG)的成员。

蓝牙技术体系及相关术语

1.蓝牙技术版本

截止到2010年6月,算上正在使用及已经研发和公布的技术,当前蓝牙共有6个版本 Vl.l/1.2/2.0/2.1/3.0/4.0,具体内容如下:

(1)1.1为最早期版本,传输率约在748kbit/s~810kbit/s,因是早期设计,容易受到同 频率的产品干扰,影响通信质量。

(2)版本1.2同样是只有748kbit/s~810kbit/s的传输率,但加上了(改善Software) 抗干扰跳频功能。

(3)无论是1.1还是1.2版本的蓝牙产品,本身基本上可以支持Stereo音效的传输要 求,但只能够支持单工的方式工作,且音带频率响应不太足够,并不能完全满足实际需要。

(4)版本2.0是1.2的改良提升版,传输率约在1.8Mbit/s~2.lMbit/s,开始支持双工 的工作方式。也就是说,在做语音通信使用的同时还可以传输文档、图片、音乐等文件。

(5)为了改善蓝牙Bluetooth 2.O+EDR标准技术存在的问题,蓝牙SIG组织(Special Interest Group)推出了Bluetooth 2.1+EDR版本的蓝牙技术。蓝牙2.1版除了改善装置配对沆 程外,还加入了Sniff Subrating的功能,透过设定在两个装置之间互相确认信号的发送间隔 来达到节省功耗的目的。

(6) 2009年4月21日,蓝牙技术联盟(Bluetooth SIG)正式颁布了新一代标准规范 Bluetooth Core Specification Version 3.0 High Speed(蓝牙核心规范3.0版高速)。蓝牙3.0的 核,心是Generic Alternate MAC/PHY (AMP),这是一种全新的交替射频技术,允许蓝牙协议 栈针对任一任务动态地选择正确射频。作为新版规范,蓝牙3.0的传输速度自然会更高,而 秘密就在802.11无线协议上。通过集成802.11 PAL(协议适应层),蓝牙3.0的数据传输率 提高到了大约24Mbit/s(即可在需要的时候调用802.11 Wi-Fi用于实现高速数据传输),是蓝 牙2.0的8倍,可以轻松用于录像机至高清电视、PC至PMP、UMPC至打印机之间的资料 传输。

(7)蓝牙4.0包括3个子规范,即传统蓝牙技术、高速蓝牙和新的蓝牙低功耗技术。 蓝牙4.0的改进之处主要体现在3个方面,即电池续航时间、节能和设备种类上。此外, 蓝牙4.0的有效传输距离乜有所提升。当前,蓝牙的有效传输距离为lOm(约30英尺), 而蓝牙4.0的有效传输距离可达到60m(约200英尺)。SIG表示,蓝牙4.0完整规范 将于2010年6月30日完成,而基于蓝牙4.0的设备有望于2010年年底或2011年初 上市。

2.蓝牙通信距离

根据通信距离的远近,蓝牙技术分为Classl/Class2/Class3这3个级别。其中,Classl是 用在大功率/远距离的蓝牙产品上,但因成本高和耗电量大,不适合做个人通信产品之用(手 机/蓝牙耳机/蓝牙Dongle等),所以多用在部分商业特殊用途上,通信距离大约在80~ lOOm之间。

Class2是目前最流行的制式,通信距离大约在8~30m之间,根据产品的设计而定,多 用于手机内/蓝牙耳机/蓝牙Dongle的个人通信产品上,耗电量和体积较小,方便携带。至 于Class3由于支持距离太短,目前已经很少采用。

3.蓝牙协议框架

蓝牙协议包括多层协议栈, 详细内容如图13-4所示。

 

什么是蓝牙,蓝牙技术体系及相关术语

 

底层模块是蓝牙技术的核心模块,所有嵌入 蓝牙技术的设备都必须包括底层模块。它主要由 链路管理层LMP (Link Manager Protocol)、基带 层BB (Base Band)和射频RF (Rodio Fraquency) 组成。其功能如下:

无线连接层(RF)通过2.4GHz无须申请的 ISM频段实现数据流的过滤和传输;它主要定义 了工作在此频段的蓝牙接收机应满足的需求;基 带层(BB)提供了两种不同的物理链路,即同步 面向连接链路SCO(Synchronous Connection Oriented)和异步无连接链路ACL (Asynchronous Connection Less),负责跳频和蓝牙数据及信息帧 的传输,且对所有类型的数据包提供了不同层次 冒 的前向纠错码FEC (Frequency Error Correction)或循环冗余度差错校验CRC (Cyclic Redundancy Check);LMP层负责两个或多个设备链路的建立和拆除及链路的安全和控制, 如鉴权和加密、控制和协商基带包的大小等,它为上层软件模块提供了不同的访问入口;蓝 牙主机控制器按口HCI(Host Controller Interface)由基带控制器、连接管理器、控制和事件 寄存器等组成,它是蓝牙协议中软、硬件之间的接口,提供了一个调用下层BB、LMP、状 态和控制寄存器等硬件的统一命令,上、下两个模块接口之间的消息和数据的传递必须通过 HCI的解析才能进行。HCI层以上的协议软件实体运行在主机上,而HCI以下的功能由蓝牙 设备来完成,二者之间通过传输层进行交互。

蓝牙技术整体框架以HCI( Host Controller Interface)为界,区分为硬件模块以及上层软 件协议两部分。在蓝牙协议栈中,HCI以上部分通常用软件实现,包括逻辑链路控制和适配 协议12CAP、串行仿真RFCOMM、链路管理协议(HMP)、电话替代协议和选用协议;而 HCI以下部分则用硬件实现,包括基带协议和链路管理协议(LMP),这部分也叫做蓝牙协 议体系结构中的底层硬件模块。

由于篇幅有限,这里不再讨论这些具体的协议,有兴趣的朋友可以上蓝牙官方网站www.bluetooth.org查询具体资料。

4.蓝牙通信的主从关系及配对

蓝牙技术规定每一对设备之间进行蓝牙通信时,必须一个为主角色,另一个为从角色, 才能进衍通信,通信时必须由主端进行查找,发起配对,连接成功后,双方即可收发数据。 理论上,一个蓝牙主端设备可同时与7个蓝牙从端设备进行通信。一个具备蓝牙通信功能的 设备,可以在两个角色间切换,平时工作在从模式,等待其他主设备来连接,需要时,转换 为主模式,向其他设备发起呼叫。一个蓝牙设备以主模式发起呼叫时,需要知道对方的蓝牙 地址、配对密码等信息,配对完成后,可直接发起呼叫。

5.蓝牙配对及认证过程

蓝牙设备通过初始配对过程建立安全连接。在此期间,一个或两个设备需要输入PIN码, 内部算法利用该代码生成安全密钥,安全密钥随后用于验证将来任何时候的设备连接。

6.PIN码

个人识别码( PIN)是一个4位或更多位的字母数字代码,该代码将临时与产品相关联, 以便进行一次安全配对。产品所有者只能出于配对目的与信任的个人和信任的产品共享PIN 码。不输入此PIN码,则不能进行配对。如果无法配对,则无法建立正常蓝牙通信,也就 无法使用蓝牙耳机、蓝牙GPS等。

7.蓝牙安全模式

在其产品中使用Bluetooth无线技术的产品厂商可以采取几种方法来实现安全性。对于 两台设备之间的Bluetooth访问,共有3种安全模式。

安全模式1:无安全模式。

安全模式2:服务级安全模式。

安全模式3:设备级安全模式。

尽管产品厂商会决定采用哪种安全模式,但 对于笔记本电脑之类的产品,如图13-5所示, 用户是可以根据需要自行定义的。需要强调的 是,设备和服务也有不同的安全级别。对于设备 有两级:“信任设备”和“不信任设备”。信任设 备与另一方设备一经配对,便可无限制地访问所 有服务。对于服务,定义了3个安全级别:需要 授权和验证的服务、只需要验证的服务以及对所 有设备都公开的服务。

 

什么是蓝牙,蓝牙技术体系及相关术语

 

8.其他术语 表13-1所示为常会提及的蓝牙术语.供大家参考。

 

什么是蓝牙,蓝牙技术体系及相关术语

 

13.1.3适配器的选择

蓝牙适配器就是为了各种数码产品能适用蓝牙设备的接口转换器。总线类型可分为ISA 总线、PCI总线和USB总线。ISA总线以16位传送数据,标称速度能够达到lOMbit/s。PCI 总线以32位传送数据,速度较快。目前市面上大多是lOMbit/s和lOOMbiUs的PCI总线。 随着USB接口的逐渐普及以及即插即用的特点,现有的蓝牙适配器基本上都为USB总线, 即蓝牙USB适配器。

作为蓝牙适配器,和前面提及的无线网卡一样,对于芯片,也有很多厂商推出了不同的 芯片。不过这些芯片的种类和数量要远超于无线Wi-Fi的数量,想想这世界上带有蓝牙功能 的手机、PDA、笔记本的使用人数,仅是手机这一项,数量就已经很夸张了。

不过现在提及的蓝牙适配器,暂时仅限用于电脑主机的外接蓝牙适配器,主要以USB 接口为主。其外型如图13-6和图13-7所示,一般都很小巧。

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-6 图13-7

 

提到蓝牙适配器的选择就会涉及蓝牙芯片,不过目前市面上绝大部分外置蓝牙适配器 都采用CSR芯片,所以这里就以目前最为流行的CSR蓝牙芯片为例进行简单说明。

 

什么是蓝牙,蓝牙技术体系及相关术语

 

图13-8所示为CSR公司标志,图13-9所示为CSR的蓝牙芯片。

图13 -10所示为在Windows下的BlueSoleil查看当前的蓝牙适配器属性,显示其使用的 正是CSR芯片。

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-8 图13-9 图13-10

 

感兴趣的读者可以到CSR官方网站上了解更多内容。

官方网站:

 

什么是蓝牙,蓝牙技术体系及相关术语

 

13.1.4蓝牙(驱动)工具安装

对于实际工作中来说,在使用蓝牙设备之前,需要先安装蓝牙驱动(工具),这样才能 够识别出蓝牙适配器,并使用其与其他蓝牙外设进行正常工作。我想很多读者可能除了手机 上的蓝牙外,对于笔记本上的蓝牙适配器如何使用还是不太了解,所以下面以实例来讲述一 下蓝牙工具的安装及使用。

1.在Windows下安装蓝牙工具

Windows下除了系统自带的蓝牙驱动之外,其实使用最广泛的是由IVT公司开发的蓝 牙软件产品BlueSoleil。

BlueSoleil可以让计算机享受蓝牙的便捷。凭借3MB/s的数据交换量,用户可以畅听音质 好的音乐并无线使用蓝牙鼠标和键盘。凭借独特的蓝牙AV/Mono数据频道协同工作方式, BlueSoleil支持用户同时通过普通的蓝牙立体声仿真耳机听音乐和打电话,或者轻松地转换这 两种模式,新加入的Skype 2.X程序可以方便地让你通过普通的蓝牙耳机接/打电话。通过使 用蓝牙适配器,BlueSoleil可以实现多台电脑组网并且无线交互信息。BlueSoleil还可以实现 电脑和其他蓝牙设备快速稳定的连接,比如移动手机、头戴式耳机、个人掌上电脑、局域网接 入设备、打印机、数玛相机、电脑的外设设备等,可以说是Windows下必备的蓝牙工具了。

截至本书出版前最新版本为IVT_BlueSole11_6.4.275.0。此外,IVT_BlueSoleil同时提供 Windows及Linux两个安装版本。安装步骤很简单,基本上一直单击“下一步”按钮即可, 不过要注意的是,在安装此BlueSoleil 6最新版前,先拔下蓝牙适配器,卸载BlueSoleil的 旧版本。

官方网站:

 

什么是蓝牙,蓝牙技术体系及相关术语

 

图13-11所示为Windows下BlueSoleil的工作界面。

2.在Linux下安装蓝牙工具

若BackTrack4 Linux下没有蓝牙工具或者需要升级到最新版本,可以使用如下命令实现:

 

什么是蓝牙,蓝牙技术体系及相关术语

 

按【Enter】键后,就能看到图13 -12所示的内容,由于当前已经是最新的版本,所以无 须下载最新的安装包。

 

什么是蓝牙,蓝牙技术体系及相关术语

 

13.1.5蓝牙设备配对操作

为了让大家更好地学习蓝牙的相关知识,首先来了解蓝牙设备的配对操作。不过作为手 机与蓝牙耳机的配对,笔记本电脑与智能手机之间的配对应该是较为常见的配置操作,相关 的资料也很多。那么为了让读者掌握到不同操作系统的蓝牙配置,下面就以两台分别安装了 Windows 2003和Ubuntu操作系统的笔记本电脑之间的蓝牙连接为例,来演示蓝牙设备间配 对的操作。

 

什么是蓝牙,蓝牙技术体系及相关术语

 

先启用蓝牙适配器(载入蓝牙驱动)。

先在Windows 2003下安装好上面提到的BlueSoleil,并准备好蓝牙适配器,如图

13-13所示,将蓝牙适配器插入笔记本电脑的对应接口。 囝此时,在系统的任务栏上会显示“发现蓝牙硬件”的提示,如图13 -14所示。

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-13 图13-14

 

@然后在任务栏的蓝牙图标上右击,在弹出的快捷菜单中选择“启动蓝牙”命令,如

图13-15所示。启动完成后,再在此图标上右击,可以看到此时出现了完整的快捷

菜单,选择“显示经典界面”命令,如图13 -16所示。

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-15 图13-16

 

@然后就可以看到图13 -17所示的界面,这是Windows 2003下BlueSoleil的主界面,

出现该界面意味着蓝牙适配器己经正常载入。

类似地,在另一台安装了Ubuntu 9.10桌面版操作系统的笔记本电脑上,也插入蓝矛适 配器,并在任务栏上启用蓝牙功能。

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-17

 

搜索开启蓝牙功能的设备。

既然蓝牙适配器已经成功载入,那么接下来就开始搜索蓝牙设备了。在默认情况下,操 作系统下的蓝牙功能是自动进入被搜索模式的,也就是“可被搜索到”这个选项被选中。当 然,也可以根据实际需要取消这个选项从而使得笔记本电脑的蓝牙不可见。具体操作随着操 作系统及蓝牙工具的不同,也将会有细节上的不同,请大家仔细查看对应的说明文档。

图13-18所示为Windows 2003下的蓝牙配置工具BlueSoleil中的“我的设备属性”对话框,在“可访问性”选项卡中,“允许其他设备发现该设备”复选框被勾选,意味着当前的蓝牙设备是可被搜索到的,取消勾选则其他设备便无法发现该设备。

@一般来说,当便携式设备进入搜索模式后,会出现指示灯一闪一闪的情况。下面以Ubuntu为例,此时就可以在Ubuntu系统任务栏上单击蓝牙标志,在其菜单中选择“设置新的设备”命令,如图13-19所示。

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-18图13-19

 

弹出图13~20所示的向导页面.单击“前进”按钮继续下一步。

稍等片刻,就能看到找到了两个蓝牙设备,如图13-21所示,在设备搜索界面中会在类型中给出定义。其中,名为mckh3e8b4flbc6是一台计算机,也就是要连接的安装Windows 2003系统的笔记本电脑。

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-20 图13-21

 

④此时,若希望看到蓝牙设备的MAC地址,也可以在Shell下使用hcitool命令进行 蓝牙设备扫描,就能够看到当前可搜索蓝牙设备对应的MAC,如图13-22所示。 关于hcitool命令将在后面进行详细讲解。

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-22

 

使用蓝牙适配器进行设备间配对。

前面提到蓝牙设备的互联需要进行配对,所谓配对就是建立一个相互信任的桥梁。在蓝牙设 备配对中,并不需要输入账户,只需要被连接方输A确的PIN码,就能够建立合法的蓝牙连接。

④在图13-21中选择搜索到的名为mckh3e8b4flbc6的设备,然后单击该页面下方的“前进”按钮,如图13-23所示,当前的Ubuntu 9.10系统就会自动生成一个随机PrN码,并要求对方设备输入该PIN码以建立合法的可信连接。

@当然,若用户希望使用简单的固定PIN码,而非随机码,也可以在图13-21中单击“PIN选项”按钮,在弹出的图13-24所示的对话框中选择诸如0000、1111、1234等固定PIN码。这类PIN码一般都是诸如蓝牙耳机、蓝牙GPS模块等设备固定使 用的,都是由厂商出厂之前直接设置好的,在其产品说明书中都会有说明。

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-23 囹13-24

 

当Ubuntu下出现图13-23所示的内容后,此时在Windows 2003下的蓝牙配置工具BlueSoleil上就会出现图l3-25所示的对话框,上面告知Windows 2003用户当前有设备试图进行配对,此时直接输入事先制定好的PIN码,单击“确定”按钮即可。

@若PIN码不正确会有提示,但只要成功配对,就能看到图13-26所示的内容,图中出现了一个计算机图标,且该图标与中心建立了一条关联线路,这就表示已经成功配对了。同时主界面下方的状态栏上也会有“已连接”的提示。

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-25

 

与此同时,在Ubuntu 9.10系统上也会出现图13-27所示的提示页面,告知蓝牙设备之间的配对已经完成。

与耳机建立通信并查看效果。

囝既然已经成功配对,此时就可以在BlueSoleil的主界面上方单击“蓝牙个人局域网”图标,可以直接双击建立连接,或者右击建立连接,查看状态、属性等。图13-28所示为右键连接。

 

什么是蓝牙,蓝牙技术体系及相关术语

@一旦连接成功,就会看到在BlueSoleil主界面中出现了一条不断闪动的双向链路,如图13-29所示。此时,蓝牙设备图标及Windows系统任务栏右下角蓝牙图标的颜色会从原来的篮色变成绿色。

 

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-28 图13-29

 

@现在,在Ubuntu下随意选择一个文件并右击,在弹出的快捷菜单中选择“发送到”命令,就能够看到图13-30所示的内容,在“发送作为”下拉列表中选择“蓝牙(OBEXPush)”,然后在“发送到”下拉列表中选择目标为已经建立关联的名为mckh3e8b4flbc6的主机设备,单击“发送”按钮。

此时,在Windows 2003下的BlueSoleil上就能够看到图13-31所示的对话框,提示 当前名为ZerOne-0的设备正试图建立蓝牙信息交互,单击“是”按钮来接受这一 请求。

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-30 图13-31

 

当Windows用户接受请求后,在Ubuntu下就会出现图13-32所示的文件传输界面,可以看到传输速度为77KB/s,这个速度和蓝牙设备间距离、蓝牙协议版本等都有关系。

这样,就成功地建立了不同类型操作系统间的 蓝牙连接,并能够通过该连接分享和传输诸如图 片、MP3、文档等各类文件,这样的蓝牙局域网传 输技术优点很明显。不但可以不需要路由器的支 持,也可以在最节省电量的情况下实现文件共享, 同时在距离上还能够保证lOm甚至更远范围内的 图13-32 有效传输。

 

什么是蓝牙,蓝牙技术体系及相关术语

 

类似地,当使用蓝牙耳机时,再也不用像以前那样被耳机线的距离所困扰。可以从容地 戴着耳机离开电脑,去隔壁的房间忙其他事情,也可以戴着蓝牙耳机躺在床上,甚至可以坐 在隔壁客厅玩游戏,而耳机里传来的却是自己笔记本电脑上喜欢的音乐。而这只是蓝牙耳机, 若是与手机配对,还可以互传文件、图片、音乐等,甚至还可以连游戏,现在觉得蓝牙是不 是很方便?

那接下来就看看带来方便的同时,背后的安全问题。

13.2基本的蓝牙黑客技术

本节开始接触基本的蓝牙黑客技术,为了使谟者快速掌握,大家可以考虑使用 BackTrack4 Linux或者WiFiway等专用操作系统进行本节内容的学习和测试。

13.2.1 识别及激活蓝牙设备

虽然蓝牙适配器有很多种,大小也各不相同,不过目前市面上的外置蓝牙适配器均以 USB接口为主。在识别及激活蓝牙设备前,需要在笔记本电脑上插入USB接口的外置蓝牙 适配器,正确插入USB外置蓝牙适配器的效果如图13-33和图13-34所示。

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-33 图13-34

 

在正确插入USB外置蓝牙适配器后,就可以使用Linux系统下内置的hciconfig命令对 蓝牙适配器的插入状态进行查询了,具体命令如下: 戮鬻鬻鬻蒸鬻鬻鬻黉囊l攀鬻纛鎏鬻篱荔鬻鏊蒸鬻鬻攀霪攀鋈鬻蘩黎豢鬻蕤l黍鬓鬻鬻蘩繁蒸l麟 一般都会先输入hciconfig来查看是否有蓝牙设备插入,按【Enterl键后即可看到当前 已经识别出来的蓝牙适配器,图13-35所示为hci0。注意:此时在hci0后面的BD Address 处显示为“00:00:00:00:00:00”,这就意味着该蓝牙适配器驱动并未载入。

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-35

 

在确认识别出蓝牙适配器后,就可以将蓝牙适配器载入,具体命令如下:

 

什么是蓝牙,蓝牙技术体系及相关术语

 

参数解释:

●hci0:此为蓝牙适配器名称,一般都为hci0,若有多个蓝牙适配器,则第二个就是

hcil,以此类推。

●up:与ifconfig类似,up就是载入该设备,若是down,就是卸载该设备。

在激活蓝牙适配器后,就能够看到图13-36所示的内容,其中,在BD Address赴可以清楚 地看到具体的MAC,这就表示系统已经正确识别并载入了该蓝牙适配器的驱动。

 

什么是蓝牙,蓝牙技术体系及相关术语

 

13.2.2查看蓝牙设备相关内容

hciconfig所能提供的功能有很多,在Linux下可以使用-help参数或者使用man命令来 查看这些支持的功能,例如:

什么是蓝牙,蓝牙技术体系及相关术语

 

参数解释:

●hci0:这里指的是当前已经载入的蓝牙设备。

●class:支持级别、内容。 按【Enter]键后就能看到图13-37所示的内容,不过在Device Class和Service Classes 等处并没有显示出很详细的内容。

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-3 7

 

对于有的蓝牙适配器,hciconfig可以轻松地将其提取出来。如图13-38所示,可以看到 在Service Classes处显示为Rendering,Information,而在Device Class处显示为Computer, Laptop。

 

什么是蓝牙,蓝牙技术体系及相关术语

 

13,2.3扫描蓝牙设备

为了便于蓝牙设备的连接,那些开启了蓝牙功能的智能手机、PDA、PSP等便携式设备, 在默认情况下,都是广播其开启状态的,也就是说,允许其他任意蓝牙设备探测。而在Linux 系统下,常用到的工具就是hcitool及图形化的btscanner。

1.hcitool

通过前面的升级操作后,BackTrack4 Linux系统下将会安装好蓝牙的全套操作工具,其 中包括hcitool。该工具支持大量的蓝牙设备操作,从扫描到查看设备届性等均支持。先来看 看如何进行扫描,具体命令如下:

什么是蓝牙,蓝牙技术体系及相关术语

 

参数解释:

●-i设备名称:这里的蓝牙设备名称就是hci0,可以先输入hciconfig来查看其名称,若只有一个蓝牙适配器,一i参数可省略。

●scan扫描模式:该模式下将对附近蓝牙适配器工作范围内的所有蓝牙设备进行探测。

按【Enter]键后开始扫描,稍等片刻就可以看到图13-39所示的内容,可以看到发现了 两个蓝牙设备,在名称描述上出现了Dell Wireless 365 Bluetooth Module字样的设备,根 据经验,显示为Module即模块的一般都是笔记本电脑上的蓝牙模块,所以初步判断为两台 开启了蓝牙功能的笔记本电脑。

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-39

 

该命令很简单直观,而缺点是不能够持续地探测周边的蓝牙设备。

2. btscanner

对于不习惯上面在Linux Shell下进行蓝牙设备扫描的朋友,也可以通过菜单选择 btscanner打开该工具,或者可以通过打开一个Shell,然后在其中输入btscanner也能够打开。

在打开btscanner之前,该工具会自动检查是否存在蓝牙设备,如果存在则启动并进入 图形模式,否则不能启动。刚进入btscanner时,会看到图13-40所示的界面,在下方可以看 到给出了参数的关键字。

输入字母i,即采用inquiry scan方式,按【Enter】键后稍等片刻,就能够看到图13-41 所示的内容,在图中上方可以看到发现了两个开启了蓝牙的设备。

与hcitool不同的是,这款工具会实时对当前蓝牙适配器有效探测范围(一般以6m为半 径)内进行扫描,并将扫描结果实时地显示在上方。换句话说,就是不停地对周边进行雷达 式扫描。如图13-41所示,在下方会看到不停地出现Found device XXXXXXXXX捉示,这 就表示扫描到了新的蓝牙设备。

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-40 图13-41

 

需要注意的是,有时由于距离、扫描频率等因素,btscanner在初次扫描时,会识别 不出蓝牙设备的名称,如图13-42所示,在设备后面会出现unknown即未知的提示。

不过只要稍等片刻,btscanner就会识别出该蓝牙设备的名称,如图13 -43所示,刚才显 示为unknown的设备名称已经被识别出来,即OMIZ 2219,这是一款蓝牙耳机。

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-42 图13-43

 

3. bluescan

若是对btscanner的不间断扫描方式但不能保持在同一界面上的缺点无法忍受,也可以 使用bluescan来进行蓝牙设备的搜索,具体命令如下:

什么是蓝牙,蓝牙技术体系及相关术语

 

输入效果如图13-44所示,不需要参数,直接按【Enter]键就可以开始扫描。

 

什么是蓝牙,蓝牙技术体系及相关术语

 

开始扫描后,bluescan会不断地扫描周 边的蓝牙信号,并同时将扫描的结果反馈到 当前界面上,如图13-45所示,可以看到多 个名称为Dell Wireless 365 Bluetooth 图13-44 Module的设备被扫描到,这些设备MAC地址皆不相同,这是由于当前环境中有多台Dell 笔记本电脑正在使用的缘故。

如图13-46所示,bluescan会自动不断地刷新周边的蓝牙设备,并将其一一显示在当前 界面上,也就是说,会出现不断刷屏的情况。在图中可以看到在不断刷屏的过程中中出现了 多个蓝牙设备,除了名为Dell Wireless 365 Bluetooth Module的笔记本蓝牙模块外,还出现 了苹果的iPod设备。

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-45 图13-46

 

由于该软件是不间断地刷新羼幕,所以会出现重复的情况。当不需要继续扫描时, 可以按【Ctrl+C】组合键来强制中断扫描。如图13-47所示,在中断后,BlueScan会提 示保存扫描结果,输入数字“2”并按【Enter]键即可保存,该文件被保存在/root/bslog. txt中。

若需要查看扫描结果,在Linux下可以使用cat命令打开该文件,具体命令如下:

 

什么是蓝牙,蓝牙技术体系及相关术语

 

按【Enter]键后就可以看到图13-48所示的内容,该文本中记录了所有已扫描到的蓝牙 设备名称、地址及发现时间。

 

什么是蓝牙,蓝牙技术体系及相关术语

 

13.2.4蓝牙攻击

作为目前流行的蓝牙协议版本而言,最为流行的应该是2.0及1.1了。而对于2005年以 前生产的手机、PDA等便携式设备,普遍还是使用1.1版本。而作为早期的蓝牙1.1已经被 公布存在大量的漏洞和潜在攻击隐患,尤其是一些厂商的某些型号。下面来看一看较为出名 的Bluebugging攻击和Bluej acking攻击。

1.Bluebugging攻击

Bluebugging允许恶意攻击者利用蓝牙无线技术,在事先不通知或提示手机用户的情况 下,访问手机命令。此缺陷可以使恶意的攻击者通过手机拨打电话、发送和接收短信、阅读 和编写电话簿联系人、偷听电话内容以及连接至互联网。要在不使用专门装备的情况下发起 所有这些攻击,黑客必须位于距离手机蓝牙有效工作范围内。

此类攻击最早出现于2005年4月,主要是蓝牙自身缺陷导致的,受其影响的机型 也主要为2005年前后的Nokia6310、63101及索爱T68等几款机型,现在正规厂商生产 的新款智能手机已基本不受其影响。这方面较出名的工具就是Bluebugger了,具体命 令如下:

什么是蓝牙,蓝牙技术体系及相关术语

 

参数解释:

●-a设各地址:这里的设备地址就是预攻击的地址。

●info:获取目标手机上的信息。

按【Enter]键后如图13-49所示,可以看到在攻击开启了蓝牙功能的Nokia6310i的手 机后,成功地获取了目标手机的部分联系人名单,包括姓名和对应的手机号码。而在最下方, 可以看到还获取了对方的短信内容。

而当攻击失败时,会出现图13-50所示的Cannot open的提示,这往往是由于目标设备 当前蓝牙版本过高或者非手机类便携设备所致,图13-38所示的目标就是一台纯粹的PDA, 而非智能手机。

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-49 图13-50

 

2.Bluejacking攻击

Bluej acking指手机用户使用蓝牙技术匿名发送名片的行为。需要注意的是,Bluejacking 并不会从设备删除或修改任何数据。而这些名片通常包括一些玩笑、挑逗或骚扰性的消息, 而不是通常大家所说的姓名和电话号码。Bluej acker通常会寻找Ping通的手机或有反应的 用户,随后会发送更多的其他个人消息到该设备。同样,要进行Bluej acking,发送和接收 设备之间的距离必须在蓝牙有效通信范围之内。

从攻击本质上说,接收Bluej acking消息并不会对自身的 手机造成危害,但接收Bluejacking文件会存在感染恶意代码的 可能,所以为避免垃圾消息群发攻击及无意识的私人消息泄 露,作为手机机主应拒绝将此类联系人添加至通信簿。通常设 置为不可发现模式的设备不容易受到Bluejacking之类的攻击。

图13-51所示为在PDA上对开启蓝牙功能的Nokia 5300 进行Bluejacking攻击,通过蓝牙发送恶意名片的工作界面。 这里写了一条短信,内容就一句话“Hi,l'm Christopher Yang!!”,而作为目标的Nokia 5300,此对会有提示收到一条 未知的短信,询问是否查看,如果使用者选择接收,就能够 收到该短信。

 

什么是蓝牙,蓝牙技术体系及相关术语

 

13.2.5修改蓝牙设备地址

在第6章讲述对付无线网络中的MAC地址过滤时,提到了如何修改无线网卡的MAC 地址及对应的工具。而对于蓝牙设备而言,同样地,为了躲避可能的搜寻和跟踪,黑客 也会将蓝牙适配器的MAC修改成其他的或者指定的地址,达到迷惑对方或者欺骗对方 的目的。这里比较出名的工具就是bdaddr,该工具在黑客常用的BackTrack4 Linux下已 经内置了。

下面就来看看bdaddr的使用,首先来查看当前蓝牙设备的地址,输入hciconfig,按【Enter】 键后如图13-52所示。

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-52

 

既然知道了当前设备的MAC,那么就来进行一下修改,具体命令如下:

 

什么是蓝牙,蓝牙技术体系及相关术语

 

参数解释:

●-i:后跟蓝牙设备,就是前面载入的设备,一般都是以hci0、hcil等名称设置,

这里是hci0。

●bd addr:此为希望修改成的蓝牙MAC地址,作为测试,这里就修改成

"00:11:22:33:44:55”,其实严格来说是不能这样改的,因为这样修改出来的设备MAC

也许会超出蓝牙地址定义范围。

按【Enter]键后,可以看到图13-53所示的内容,只要蓝牙芯片支持就可以识别,看到 在Manufacturer即制造商处显示为Cambridge Silicon Radio,即鼎鼎有名的CSR芯片,现在 市面上很多蓝牙适配器都采用的是CSR厂商的芯片。而在MAC地址下方显示的是Address changed-Reset device now,即地址成功修改,重新启动蓝牙适配器。接下来只要使用命令 hciconfig hcio reset就可以了。

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-53

 

关于这个工具需要特别说明.目前bdaddr这款工具仅支持Ericcson、Cambridge Silicon Radio及Zeevo这3个厂商的蓝牙芯片,其中Cambridge Silicon Radio就是目前被广泛使用 的CSR芯片,如图13-54所示,由于当前的蓝牙适配器芯片是Broadcom的,而bdaddr并不 支持,所以显示为Unsupported manufacturer,即不支持的制造商。

 

什么是蓝牙,蓝牙技术体系及相关术语

图13-54