"Encrypted packet decrypted incorrectly (bad MIC)" - how to get LTK

Hi,

I am trying to sniff between my phone and a BLE device.

When I put the device in pairing mode, I can see it in the "advertising" list. Then I select it (but I don't know if I should select anything from the "legacy passkey", "legacy ltk", "follow le address") 

I can see packets from/to that device.

Then I make the pairing on my phone (no PIN is required)

But then I can't get any data , all is encrypted and all I see is "empty PDU" or "Encrypted packet decrypted incorrectly (bad MIC)"

What is the correct method ?

As far as aI remember from my past experiences, if I sniff within the pairing session , I should not need a LTK.

But if LTK will help, can you guide me how to get the LTK ?

Btw, if I do the pairing, I no longer see the device in "advertising" list. If I get the LTK and try to sniff after pairing, how do I filter that device ?

Parents Reply
  • I have read through that tutorial/course, but as you can see in my scenario, LTK is not transferred in pairing phase (or am I missing it ?) 

    I have already provided you pcap output, so you can see from there.

    So what is the point of following that tutorial in my case ?

    If the LTK is not provided while pairing , I won't be able to decrypt packets. 

    I asked you if it would be possible to get the LTK , or decrypt using hci sniff on the android phone.

    I could not get an answer to this.

    So what is the purpose of suggesting me to read the tutorial (which I already did) ?

Children
Related