Fuzz Testing with the Bluetooth A2DP and HFD Protocols

Overview

This topic describes how to test the Bluetooth A2DP and HFD protocols in beSTORM.

Testing environment

Testing requires the following environment:

  • beSTORM 10.3 or later (licensed)

  • Windows 10 or later

  • beSTORM BT Router

  • A device-under-test (DUT) that supports A2DP or HFP protocols (for example, Anker SoundCore Mini Bluetooth speaker)

  • A CSR 4.0 USB Bluetooth dongle

NOTE: Depending on your DUT and the current Bluetooth devices installed on your computer, your settings and testing information may vary from the images shown in this topic.

Setup and testing

To begin testing, do the following:

  1. In Device Manager, disable all devices under the Bluetooth category.

  2. Insert the CSR 4.0 USB Bluetooth dongle into your Windows 10 (or later) computer. Windows will detect and install the driver for the dongle automatically.

  3. Open Settings in Windows and under Bluetooth & other devices, confirm Bluetooth is set to On.

  4. Pair your DUT device with your computer (this example will use the Anker SoundCore Mini Bluetooth speaker).

    NOTE: If your DUT does not connect automatically, select Connect to pair the device.

    IMPORTANT: If you are currently connected to a VPN, disconnect from it before proceeding with the next steps.

  5. Open the beSTORM BT Router.

  6. From the Devices list, select your DUT.

  7. From the Bluetooth Profiles list, select Advanced Audio Distribution Profile (A2DP).

  8. Select Start. The BT Router will establish a connection with the DUT and display “Established A2DP connection with: SoundCore mini.”

  9. To proceed with testing, select Ring to test the connection noise, select Stop to stop the noise, and then select Start to begin listening to the device communicate.

  10. Right-click beSTORM_Client.exe (C:\Program Files (x86)\beSTORM),and then select Run as administrator.

  11. Select New Project. The beSTORM New Project Wizard opens.

  12. On the Welcome page, do the following:

    1. In the Project Name box, enter a name.

    2. Optionally, select a different file location for your project in the Location Name box.

    3. Leave all other parameters to their default settings.

  13. Select Next.

  14. On the Basic Configuration page, do the following:

    1. In thebeSTORM's predefined modules list, select a file module. This example will use Advanced Audio Distribution Profile.

    2. In the Hostname or IP address box, enter the IP address of the computer hosting the beSTORM BT Router.

    3. In the Remote Port box, enter 1521.

      1. The IP address of the computer hosting BT Router may not use the usual local IP address 127.0.0.1. To discover its current IP address, do the following:

        1. In the Windows search box, enter Command Prompt.

        2. In the search results, right-click Command Prompt, and then select Run as administrator.

        3. Enter netstat -nab, and then run the command.

        4. Find the beSTORM BT Router.exe process connection listening on port 1521 and make note of the corresponding IP address.

  15. Select Next.

  16. On the Module Environment page, review your parameter settings for the module.

  17. Select Next.

  18. On the Extra Configuration page, set Saturation Rate Threshold to 1.

  19. Select Next.

  20. On the Complete beSTORM wizard page, select Finish to start testing, or clear the Auto-start beSTORM scan now checkbox to exit the wizard and test later.

  21. If you chose to start testing, the combinations being tested are shown under Combinations Covered in the beSTORM Client.

  22. The beSTORM BT Router will display "Injecting A2DP data" and "Done streaming A2DP data" while the test runs. A consistent tick-tock sound may play through the speaker indicating it is receiving packets from beSTORM.