Android random MAC: Game over for WiFi analytics companies?
Android 6.0 may cause problems for WiFi Analytics companies. According to the official Android 6.0 Changes, the MAC address of Android Phones that run Marshmallow (Android 6.0) will be randomized. This will be a problem for applications that relay on capturing MAC addresses from WiFi packets like probe requests to identify smartphones. With this change android is following Apples iOS which introduces mac address randomization in iOS 8. That was 2014, and it caused a lot of trouble of the WiFi analytics companies. Apples market share on this time in middle Europe was about 25%. In 2-3 Years the majority of used android devices will run android 6. I would say that is time enough to change the business strategy.
Also Apps that used the MAC address as identifier need to say “Good Bye” to the method because in Android 6.0 you can not get mac address programmatically.
Note: When a device running Android 6.0 (API level 23) initiates a background Wi-Fi or Bluetooth scan, the operation is visible to external devices as originating from a randomized MAC address.
tcpdump -I -e -i en1 -s 256 type mgt subtype probe-req
3538260410us tsft 1.0 Mb/s 2452 MHz 11g -48dB signal -91dB noise antenna 0 BSSID:Broadcast DA:Broadcast SA:c0:ee:fb:xx:xx:xx (oui Unknown) Probe Request (I love Chicken) [1.0 2.0 5.5 11.0 Mbit]
Experiment 2 – Phone is searching for a WiFi network:
tcpdump -I -e -i en1 -s 256 type mgt subtype probe-req | grep c0:ee:fb:xx:xx:xx
61637532us tsft 1.0 Mb/s 2452 MHz 11g -56dB signal -91dB noise antenna 0 BSSID:Broadcast DA:Broadcast SA:c0:ee:fb:xx:xx:xx (oui Unknown) Probe Request () [1.0 2.0 5.5 11.0 Mbit]
Even though the note says that a device running Android 6.0 (API level 23) will send a randomized MAC address, I could capture a probe request that included my phones mac address. That good news for the WiFi analytics business but a bit confusing for us. The expectation was not fulfilled. Maybe one can observe the randomize MAC behaviour only on Google Phones ? What do you think…