Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

decoding packets in secure connection (le audio) #73

Open
tamv12 opened this issue May 5, 2024 · 2 comments
Open

decoding packets in secure connection (le audio) #73

tamv12 opened this issue May 5, 2024 · 2 comments
Labels
question Further information is requested

Comments

@tamv12
Copy link

tamv12 commented May 5, 2024

Hi,
I purchased TI CC26x2R Launchpad Board, followed instructions and flashed version 1.9.1. I want to sniff packets of le audio protocol.
I can see using sniffle data being transferred but since the connection is secured (Secure connection) I can't see the real data.

I saw that some snifferes support decoding the data if pairing is made during the sniffing and ltk is being exchanged. I tried to find a way if wireshark could receive the ltk and then decode it, but did not find a way.

any suggestions how can I get the real data?
thanks

Screenshot 2024-05-05 at 12 01 08

Screenshot 2024-05-05 at 12 00 48

@tamv12 tamv12 changed the title d decoding packets in secure connection (le audio) May 5, 2024
@sultanqasim
Copy link
Collaborator

The old legacy pairing process was insecure, so it could be cracked if you sniffed the pairing process. You can use Mike Ryan's "crackle" for this purpose: https://github.com/mikeryan/crackle

Modern devices should be using LE Secure Connections, which uses a different Elliptic Curve Diffie-Hellman based pairing process that can't be cracked easily unless one of the sides is using known (debug) keys. You could still extract the derived LTK from a rooted Android phone, and then use crackle to decrypt.

Regarding LE audio, be aware that Sniffle does not yet support Connected or Broadcast Isochronous Groups (CIG and BIG). Thus, you won't be able to capture the actual audio data at the moment with Sniffle. I do plan to implement this in the future, though I can't give any timelines.

@mafaneh
Copy link

mafaneh commented May 6, 2024

Modern devices should be using LE Secure Connections, which uses a different Elliptic Curve Diffie-Hellman based pairing process that can't be cracked easily unless one of the sides is using known (debug) keys. You could still extract the derived LTK from a rooted Android phone, and then use crackle to decrypt.

Actually, you can access the LTK on both Android and iOS without any rooting. The LTK is supplied by the Host, so by capturing the HCI commands, you'll be able to see the LTK on both establishing encryption the first time or upon reconnection.

I've documented both procedures here:

iOS: https://novelbits.s3.us-east-2.amazonaws.com/Developer+Guides/iOS+Bluetooth+Debugging+Guide.pdf
Android: https://novelbits.s3.us-east-2.amazonaws.com/Developer+Guides/Android+Bluetooth+Debugging+Guide.pdf

@sultanqasim sultanqasim added the question Further information is requested label May 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

3 participants