Live data from Hacker News

Nike+ FuelBand SE BLE Protocol Reversed

evilsocket.net

21–30 of 31 posts

Re: Nike+ FuelBand SE BLE Protocol Reversed

#22
It's interesting that somehow, because this is reverse engineered now and I can do funny things with it and hack around with it, I actually consider to buy this thing.

I would wish that more companies would allow for modifications / hacks right from the start and actually support that. That would attract the hacker community and might result in many more interesting use cases.

Re: Nike+ FuelBand SE BLE Protocol Reversed

#23

It's interesting that somehow, because this is reverse engineered now and I can do funny things with it and hack around with it, I actually consider to buy this thing. I would wish that more companies would allow for modifications / hacks right from the start and actually support that. That would attract the hacker community and might result in many more interesting use cases.

I got one as a present and oh, how I hate Nike for not even caring about android users, much less of using this kind of sensitive data without uploading to their cloud. The device itself is usable as a quite ok step counter requiring Windows only software to even do _anything_ with it. As it measures mainly walking, I cannot even recommend it for the intended purpose.

Re: Nike+ FuelBand SE BLE Protocol Reversed

#24

I'm baffled by the intended authentication path not using the entire 4 bytes of the CRC after bothering with such a big random number.

I'm baffled by everything about the intended authentication path?! TFA has like 6 paragraphs which reduce to;

  CRC32(MD5(Pin)||Nonce)[0:1]
My eyes! Is something wrong with HMAC?

Re: Nike+ FuelBand SE BLE Protocol Reversed

#25

Here is a related, quite detailed teardown of the FuelBand: http://www.youtube.com/watch?v=7xdajSS_cOU

This is great video and thanks for the link, but just to be clear to others it is not a teardown of the current BLE capable model that the OP has reverse engineered.

Re: Nike+ FuelBand SE BLE Protocol Reversed

#27
post #11

Earlier quoted context omitted.

I'm seriously thinking about buying/building one of those

FYI, I've recently worked on a similar project, and I tried both the ubertooth and this TI development kit device [1]. The TI device and software was much more reliable and is pretty much plug in and go. Did you do all of this through an Android phone? Very cool. [1] http://www.ti.com/tool/cc2540emk-usb

yep, android phone ( nexus 5 ) and some hci bluetooth sniffing on a nexus 4 ( you can enabled it on 4.4.4 under dev settings panel )

Re: Nike+ FuelBand SE BLE Protocol Reversed

#28
post #12

So I'm confused.. was author just not able to follow thru code path to find that the auth token was just spamming 1's? or was it a bit more cryptic than that? the real code in the APK for computing the auth_token was probably some developers some pride and joy, worked weeks on it.. but when it came time to ship, damn thing wouldnt work with the shipped hardware.. so they buried a small assignment which overwrote the…

author here ... it's not THAT easy, that specific piece of code was highly obfuscated by proguard ( you know the a.class, b.class, c.class thing? XD ) and everything made me think about the "correct" algorithm, still I can't find where that 0xFF... is being set :P

Re: Nike+ FuelBand SE BLE Protocol Reversed

#29
post #12

So I'm confused.. was author just not able to follow thru code path to find that the auth token was just spamming 1's? or was it a bit more cryptic than that? the real code in the APK for computing the auth_token was probably some developers some pride and joy, worked weeks on it.. but when it came time to ship, damn thing wouldnt work with the shipped hardware.. so they buried a small assignment which overwrote the…

author here ... it's not THAT easy, that specific piece of code was highly obfuscated by proguard ( you know the a.class, b.class, c.class thing? XD ) and everything made me think about the "correct" algorithm, still I can't find where that 0xFF... is being set :P

In other words, obsfuscation was used instead of just applying good practice, and good practice is seemingly harder to debug for development than obsfuscation.

Re: Nike+ FuelBand SE BLE Protocol Reversed

#30
post #29

Earlier quoted context omitted.

author here ... it's not THAT easy, that specific piece of code was highly obfuscated by proguard ( you know the a.class, b.class, c.class thing? XD ) and everything made me think about the "correct" algorithm, still I can't find where that 0xFF... is being set :P

In other words, obsfuscation was used instead of just applying good practice, and good practice is seemingly harder to debug for development than obsfuscation.

EXACTLY :D
Post reply on HN