Agenda - Frontline Test Equipment

advertisement
Welcome to Redmond, Washington
March 3, 2011
1
Agenda
9:00 - 9:15
Introduction and Logistics
9:15 - 10:30
Bluetooth® Protocol; Classic and Low Energy
10:30 - 10:45 Break
10:45 - 12:00 Bluetooth Protocol
2
12:00 - 1:00
Lunch
1:00 - 1:45
Frontline-Centric Bluetooth Protocol
1:45 - 2:30
Frontline 101
2:30 - 3:00
Break
3:00 - 3:45
Frontline 202
3:45 - 4:30
BT / Wi-Fi; USB / HCI; BT Robustness; Dual Mode
4:30 - 4:45
Wrap-up
Bluetooth Fun Facts
The name Bluetooth is derived from the cognomen of a
10th century king, Harald Bluetooth, King of Denmark
and Norway from 935 and 936 respectively, to 940. He is
known for his unification of warring tribes from Denmark
(including Scania, present-day Sweden, where the
Bluetooth technology was invented) and Norway.
Bluetooth likewise was intended to unify different
technologies like computers and mobile phones. The
name may have been inspired less by the historical
Harald than the loose interpretation of him in The Long
Ships by Frans Gunnar Bengtsson, a Swedish bestselling Viking-inspired novel. The Bluetooth logo merges
the Nordic runes analogous to the modern Latin H and B.
3
H=Haglaz
B=Berkanan
About Frontline Test Equipment
• Founded in 1985
• Over 40,000 units shipped
• #1 Seller is FTS4BT Classic O-T-A
• Thousands of global customers
Charlottesville is located at the foothills of the
Blue Ridge Mountains in the Commonwealth
of Virginia. The City is named after Princess
Sophia Charlotte of Mecklenburg-Strelitz, the
wife of King George III of England. The area
has an incredibly rich history that draws
millions of visitors every year to Monticello,
home of Thomas Jefferson, AshlawnHighlands, home of James Monroe, and
Montpelier, home of James Madison as well
as the renowned University of Virginia.
4
• Sales and support in San Jose, CA
• Headquarters in Charlottesville, VA
Bluetooth Specifications
Bluetooth 2.0 + EDR
Introduced Enhanced Data Rate, data transfer up to 3mbps. Useful for stereo
(A2DP) transmissions
Bluetooth 2.1 + EDR
Includes Secure Simple Pairing (SSP), making it easier for users to pair
devices
Bluetooth 3.0 + HS
Allows for high speed transfer of data over alternate MAC/Phy, in this case
802.11
Bluetooth 4.0
The new name for Bluetooth low energy. For transferring small amounts of
data infrequently. Longer battery life. Typical applications are medical and
sports and fitness
5
Version/Host/Controller Matrix
How to determine the specification version of End Product when combining hosts and
controllers conforming to different specification releases.
BR/EDR Controller
3.0 (with EDR)
3.0 (with EDR)
3.0 (with EDR)
3.0 (with EDR)
3.0
3.0
3.0
3.0
3.0
3.0
2.1 + EDR
2.1 + EDR
2.1 + EDR
2.1 + EDR
2.1 + EDR
2.1 + EDR
2.0 + EDR
2.1
2.1
2.1
2.1
2.1
2.1
2.0
1.2
6
Host
3.0 + HS
2.1 + EDR
2.0 + EDR
1.2
3.0 + HS
3.0 + HS
3.0
2.1 + EDR
2.0 + EDR
1.2
3.0 + HS
3.0 + HS
3.0
2.1 + EDR
2.0 + EDR
1.2
1.2 or later
3.0 + HS
3.0 + HS
3.0
2.1 + EDR
2.0 + EDR
1.2
1.2 or later
1.2 or later
AMP Controller
3.0 + HS
N/A
N/A
N/A
3.0 + HS
Not present
N/A
N/A
N/A
N/A
3.0 + HS
Not present
N/A
N/A
N/A
N/A
N/A
3.0 + HS
Not present
N/A
N/A
N/A
N/A
N/A
N/A
Design Core Version
3.0 + HS
2.1 + EDR
2.0 + EDR
2.0 + EDR
3.0
3.0
3.0
2.1
2.0
2.0
3.0 + HS
3.0
3.0
2.1 + EDR
2.0 + EDR
2.0 + EDR
2.0 + EDR
3.0
3.0
3.0
2.1
2.0
2.0
2.0
1.2
What is FTS4BT?
FTS4BT is a Bluetooth Protocol Analyzer based on Frontline’s
“Frontline Test System”
• FTS is a common platform for a range of data communications
analyzers
FTS4BT
• Captures Bluetooth messages at various points in an application
system
• Decodes the various profile and protocol layers to the “bit level”
• Analyzes error rates and data transmission efficiency
• Extracts pictures, business cards, audio and other high level objects
from a Bluetooth application profile session
77
Bluetooth Device 1
Bluetooth Device 2
HOST
HOST
Profiles
Profiles
HCI Sniffing
RFCOMM
L2CAP
SDP
USB
USB Internal Tap (H2)
USB ComProbe (H2)
Virtual
Sniffing
RFCOMM
L2CAP
SDP
Asynchronous Serial
HCI
Host
Controller
Interface
HCI
HCI UART (H4)
3-Wire UART (H5)
Host
Controller
Interface
BCSP
HCI
Air Sniffing
HCI
Link Controller/
Link Manager
Link Controller/
Link Manager
Baseband
Baseband
HOST Controller
HOST Controller
Bluetooth ComProbe
88
Points of Observation
Firmware Upgrades
Firmware is available with new software builds. Check to see if
FW needs to be upgraded with new build.
Use “Bluetooth ComProbe Maintenance Tool” for FW upgrades.
“Bluetooth ComProbe Maintenance Tool” available in “Setup
Folder” of FTS4BT Desktop folder.
9
Firmware Upgrades
(Bluetooth ComProbe Maintenance Tool)
Select Device
10
Check FW Version
Firmware Upgrades
Update Firmware
11
will take you to the Firmware path automatically
Firmware Upgrades
Looks for Driver as DFU mode is seen as new device.
2
1
3
12
Bluetooth Air Sniffing
1
2
3
4
14
Bluetooth/802.11 Air Sniffing (Optional)
15
Bluetooth/802.11 Air Sniffing (Optional)
16
High Speed Serial Sniffing (Optional)
17
Air Sniffing Configurations
18
Single Connection (Air Basic)
• This configuration should be used when there is one Master device
and one Slave device in use
• Either the Standard or the Alternate Clock Synchronization Mode may
be chosen
• Only one Bluetooth ComProbe is needed for this configuration
• This configuration can be used when there is one Master device with
multiple Slaves, IF security (encryption) will not be used on any of the
links
• The Bluetooth ComProbe can only decrypt data between a single pair of
devices
19
Interlaced Page Scan (IPS)
This configuration should be used when
• There is one Master device and one Slave device in use, AND
• The Slave device is using Interlaced Page Scan (IPS)
Two Bluetooth ComProbes are needed for this configuration
• One of the ComProbes is configured to follow one of the Inquiry and
Paging Sequences
• The other ComProbe is configured to follow the other Inquiry and
Paging Sequence
20
Multiple Connections
This configuration should be used when there are multiple
Master devices in use
• In other words, a Scatternet
This configuration is effectively the same as using multiple
copies of Single Connection (Air Basic)
• The difference is that the data for each Master/Slave device pair is in
the same capture file
• The individual Piconets that make up the Scatternet are identified and
tracked separately
A Bluetooth ComProbe is needed for each master in this
configuration
21
Wi-Fi Coexistence
26
802.11/Bluetooth Coexistence
This configuration should be used when
• There is one Master device and one Slave device, AND
• It is desired to capture 802.11 (Wi-Fi) data at the same time
OR, when Bluetooth 3.0 + HS is being used with an 802.11 AMP
(Alternative MAC Phy )
This configuration needs
• One Bluetooth ComProbe to capture the Bluetooth BR/EDR data
• One Wi-Fi ComProbe to capture the 802.11 data
In this configuration, the Packet Timeline displays Coexistence
of BR/EDR packets and the 802.11 packets
27
Preparing to Use the Air Sniffer
28
I/O Settings
The I/O Settings dialog is the place to provide information about
the device(s) to be sniffed.
29
Selecting The Bluetooth Devices
The [Device Discovery] button will perform an Inquiry process
in order to identify nearby devices
• If a device that you wish to use is not currently discoverable, it will not
be found
Once the Inquiry process has completed, the device(s) may be
selected in either the Master or Slave drop down lists
• The Master and Slave selections refer to each devices role in the
piconet
If a device is not discoverable, its Bluetooth Device Address
may be entered manually
30
Synchronization Modes
FTS4BT provides two synchronization modes:
Standard Mode
• The Slave device must be connectable
• The Slave device does Not need to be discoverable
• This mode is formerly known as Slave Page
Alternate Mode
• The Slave device must be discoverable
• The Slave device may be connectable
• This mode is formerly known as Slave Inquiry
31
Synchronization Modes
Different devices may need different modes
• Most devices work well with Standard Mode
• For some devices, Alternate Mode is a better choice
• If the Slave device is using Interlaced Page Scanning then you Should
use Interlaced Page Scan (IPS) application.
32
Pairing
• The Pairing process between two Bluetooth devices produces a new
common Link Key
• The Bluetooth ComProbe must be sniffing during the pairing process
so it can calculate the new Link Key
• Failure to learn the new Link Key will cause received packets to be
processed incorrectly if encryption is used on the data link
• If one of the devices has the capability to display its current link key, it
may be entered into the Air Datasource
33
Authentication And Encryption
• The information needed for the Bluetooth ComProbe to calculate the
correct Link Key during Pairing is entered in the “Encryption” area of
the dialog
• If the Link Key currently in use between the devices is known, it may
be entered into FTS4BT by selecting “Link Key” as the “Pairing
Method”
34
Authentication And Encryption
If the pair of devices are using Bluetooth Core Specification 2.1 or
later, then
• One of the devices must be in Secure Simple Pairing Debug Mode
• Or, one of the devices must be capable of displaying the Link Key shared
by the devices
• Or, an HCI trace must be taken in order to capture the Link Key
Notification event
35
How Encryption Works in Bluetooth
The sequence of events used to create the link key, called “the
pairing process”, is shown below on the LMP filter Tab.
36
How FTS4BT Decrypts Data
FTS4BT must use the same link key being used by the devices being sniffed.
The Link Key is calculated during Pairing process only.
The link key is never transmitted over the air, so FTS4BT must capture (sniff)
the Pairing session in order to calculate the same link as is calculated on the
devices that are being paired.
37
Two Types of Encryption (Legacy and SSP)
Spec is backward compatible
SSP implemented on V2.1 devices
38
Secure Simple Pairing (SSP)
• New different method of encryption/decryption
• All devices with V2.1 spec and above must use SSP
• To successfully decrypt SSP on FTS4BT, at least One device Must be in
DEBUG MODE.
• Debug mode is mandatory on core specification V2.1
• It is not mandatory for Device to support Debug mode.
• If debug mode is not available then Link Key may be found:
• A) From HCI trace.
• B) from in-house tool
• Possible to insert Link Key manually.
39
How FTS4BT Decrypts Data
To decrypt, FTS4BT must know the PIN code and capture:
• The LMP Opcode in_rand Request and accept.
• Both (Master and Slave) LMP Opcodes comb_keys
• Both (Master and Slave) LMP Opcodes au_rand/sres
If any of these packets are missed by FTS4BT, the wrong Link Key will be
calculated and FTS4BT decryption will fail because FTS4BT will not have the
same Link Key as is used in the Piconet.
40
Failure to Decrypt
If FTS4BT doesn’t have all the information it needs, it won’t be able to
calculate the link key correctly.
In the example below, after frame 24 – the LMP Opcode “Start Encryption
Request” - all following frames are shown as bad (Red) packets.
This is a good indication that the sniffer is unable to decrypt any payload
data in the baseband packets after encryption is enabled within the piconet.
41
Example of LMP for SSP Pairing
One device MUST be in Debug Mode
42
Capturing Data From The Air
43
Starting Data Capture
Once the information in the I/O Settings dialog has been
completed, the [Start Sniffing] button initiates data capture
The icon on the Air Datasource window (and in the system tray)
indicates the state of capture
(Clear) Data capture is not active
(Red) The Bluetooth ComProbe is attempting to
synchronize with the selected device
(Green) The Bluetooth ComProbe is is synchronized to
the slave, and waiting for the Master device to initiate a
connection
(Blue) A Bluetooth connection exists and data is being
captured
(Yellow) The Air Datasource is about to resynchronize
with the selected device
44
Resynchronization
Bluetooth devices that are not currently active in a connection
operate independently
This independence means that after some period of time the
Bluetooth ComProbe will not be able to detect a connection
initiation from the Master device (clock drift).
To correct for this, the Air Datasource resynchronizes with the
target device every 30 seconds
• A warning that this is about to happen is indicated by the status icon
turning yellow five seconds before the resynchronization
45
Common Problems While Air Sniffing
46
Inability To Synchronize
With The Master Device
The most common causes for this type of problem include
• Selection of the wrong device address
• The surrounding environment is RF “noisy”
• The Master and Slave devices are too far apart
• This results in higher transmission power levels which may overwhelm the
Bluetooth ComProbe
• The Master and Slave devices are too close to each other
• This results in lower transmission power levels which may not reach the
Bluetooth ComProbe
• Interlaced Page Scanning is being used
• This can result in the Bluetooth ComProbe listening to the wrong set of
paging frequencies
47
All Packets Are Captured With Errors
This most commonly occurs after the Master and Slave initiate
encryption on the link
In this case, the captured packets are not being decrypted
properly. This can be caused by
• Entering the wrong PIN Code or not entering a PIN Code
• Failing to capture the Pairing process
• Devices re-executing the Pairing process when the Bluetooth
ComProbe wasn’t listening
48
All Packets Are Captured With Errors
This can usually be confirmed by looking at the last packet in
the LMP tab
• The last packet seen is an LMP_start_encryption_req
• All following packets (except NULLs and POLLs) have length and CRC
errors
It is possible that some number of packets immediately
following an LMP_start_encryption_req will not be properly
decrypted
• Prioritized Decryption can used to minimize the number of such
packets
• Prioritized Decryption can cause packets to not be captured
• Prioritized Decryption is enabled on the Advanced I/O Settings
49
The Analyzer Asks For Help Decoding
Packets are decoded based on information that was discovered
earlier in the connection
• If there is missing information earlier in the session, the decoder
subsystem may ask for help
Missing information may be caused by
• Packets not being decrypted
• See Prioritized Decryption on the previous slide
• Clearing the capture buffer during a connection
• Sniffer missed SDP information.
50
Download