手机蓝牙安全性之Class of device

访客4年前关于黑客接单1142

Class of device,通称 CoD,用以叙述一个 BR/EDR 设备的种类。

当地设备进行 inquiry (HCI_Inquiry command) 后,远侧处在 inquiry scan 情况的设备会回应一些基础数据信息。这种数据信息被 controller 封裝在 event 中回到给 host。CoD 则是这种 event 中的一个主要参数。这时包括很有可能 CoD 的 event 以下:

HCI_Inquiry_Result event

HCI_Inquiry_Result_with_RSSI event

HCI_Extended_Inquiry_Result event

此外当当地设备接到远侧设备的联接要求时,将接到 HCI_Connection_Request event。该 event 也会带上 CoD。

分析 CoD 构造

CoD 的格式是可变性的,实际的格式由 Format Type 字段特定。在其中最普遍的格式是 “format #1”,且别的格式极为少见。这时 CoD 是一个尺寸为 3 bytes 的标值,它的构造如下图所显示(1st byte 为更大字节数):

下边将各自表述构成 CoD 的 3 个关键字段 Service Class, Major Device Class 与 Minor Device Class。

Service Class

下边为 0 的位被保存应用

Flag

Description

Example

1... .... 00.

Information

WEB-server, WAP-server

.1.. .... 00.

Telephony

Cordless telephony, Modem, Headset service

..1. .... 00.

Audio

Speaker, Microphone, Headset service

...1 .... 00.

Object Transfer

v-Inbox, v-Folder

.... 1... 00.

Capturing

Scanner, Microphone

.... .1.. 00.

Rendering

Printing, Speaker

.... ..1. 00.

Networking

LAN, Ad hoc

.... ...1 00.

Positioning

Location identification

.... .... 001

Limited Discoverable Mode

Major Device Class

Value

Description

Example

0b00000

Miscellaneous

0b00001

Computer

Desktop, Notebook, PDA, Organizers

0b00010

Phone

Cellular, Cordless, Payphone, Modem

0b00011

LAN /Network Access point

0b00100

Audio/Video

Headset, Speaker, Stereo, Video display, VCR

0b00101

Peripheral (HID)

Mouse, Joystick, Keyboards

0b00110

Imaging

Printing, Scanner, Camera, Display

0b00111

Wearable

0b01000

Toy

0b01001

Health

0b11111

Uncategorized

Others

Reserved

Minor Device Class

该字段尽管仅占有 8 bits,可是当 major device class 不另外,每一个 bit 的含意也不一样。因而该字段的界定很复杂,没有这儿过多阐释。实际能够参照 ref[1]。

一个分析 CoD 的事例

当 CoD 为 0x002540 时有:

0… …. …. …. …. ….=Service Classes: Information: False

.0.. …. …. …. …. ….=Service Classes: Telephony: False

..0. …. …. …. …. ….=Service Classes: Audio: False

…0 …. …. …. …. ….=Service Classes: Object Transfer: False

…. 0… …. …. …. ….=Service Classes: Capturing: False

…. .0.. …. …. …. ….=Service Classes: Rendering: False

…. ..0. …. …. …. ….=Service Classes: Networking: False

…. …0 …. …. …. ….=Service Classes: Positioning: False

…. …. 00.. …. …. ….=Service Classes: Reserved: 0x0

…. …. ..1. …. …. ….=Service Classes: Limited Discoverable Mode: True

…. …. …0 0101 …. ….=Major Device Class: Peripheral (HID) (0x05)

…. …. …. …. 01.. ….=Minor Device Class: Keyboard (0x1)

…. …. …. …. ..00 00..=Minor Device Class: Uncategorized device (0x0)

…. …. …. …. …. ..00=Format Type: 0x0

CoD 的掩藏

CoD 并并不是写死在 controller 中的数据信息,事实上它被 host 管理 *** 。Host 能够应用 HCI_Write_Class_of_Device command 改动当地设备的种类,进而做到掩藏的目地。应用以下指令能够载入或改动当地 BR/EDR 设备的种类:

hciconfig hci0 class

# hci0: Type: Primary Bus: USB

# BD Address: 11:22:33:44:55:19 ACL MTU: 310:10 SCO MTU: 64:8

# Class: 0x0c0000

# Service Classes: Rendering, Capturing

# Device Class: Miscellaneous,

sudo hciconfig hci0 class 0x002540

hciconfig hci0 class

# hci0: Type: Primary Bus: USB

# BD Address: 11:22:33:44:55:19 ACL MTU: 310:10 SCO MTU: 64:8

# Class: 0x002540

# Service Classes: Unspecified

# Device Class: Peripheral, Keyboard

此外 ref[2]是一个线上的 CoD *** 器,能够协助大家依据选中的设备种类自动生成 CoD 标值。

相关文章

怎么提高图片清晰度(一键提高图片清晰度)

怎么提高图片清晰度(一键提高图片清晰度)

1、尽量避免使用软件拍摄 这个主要针对手机,目前市场上设计了很多拍照的app,但是绝大部分都会对画质有损伤,尽管拍摄时,肉眼不可见,但是只要后期需要修图,基本就瞎了。 我们看一张用软件focos(已经...

明日方舟TW1如何打 明日方舟TW1通关心得技巧分享

明日方舟TW1如何打 明日方舟TW1通关心得技巧分享

在明日方舟里,TW1是没有什么新机制的常规关卡,是活动的第一关还是没什么难度的。下面就为大家带来详细的攻略介绍,一起来看看吧! TW1通关攻略 这关基本就是教学关,就很简单的出怪防守就好 大家基...

海燕 高尔基(高尔基《海燕》英俄中译文)

海燕 高尔基(高尔基《海燕》英俄中译文) “ .. Petrel Gorky 海燕之歌 高尔基 . , . High above the silvery o...

房产知识:请问如何计算房屋使用面积?

相信现在有很多的朋友们对于请问如何计算房屋使用面积?都想要了解吧,那么今天小编就来给大家针对请问如何计算房屋使用面积?进行一个介绍吧,希望小编介绍的内容能够为大家起到帮助哦 1、按房屋的内墙面水平投影...

黑客桌面英文(黑客的英文名称是)

黑客桌面英文(黑客的英文名称是)

本文目录一览: 1、linus是什么东西 2、什么是木马和黑客 3、“黑客”是什么 4、桌面用英文怎么说 linus是什么东西 Linux操作系统(Linux),是一种计算机操作系统。L...

力克千年虫(力克千年虫 第二部)

  力克千年虫(力克千年虫 第二部)   关注想写什么就写什么的木卫号   导   语   前阵子太冷了,疫情又反复,似乎欠大家一大堆推送更新。后面慢慢补上。   今天要讲的,是一部台湾电影。不少人应...