Tim Cook threatened to kick Uber out of the App Store for “fingerprinting” iPhones

From the New York Times profile of Uber CEO Travis Kalanick, about Kalanick being summoned to a meeting with Tim Cook in early 2015:

For months, Mr. Kalanick had pulled a fast one on Apple by directing his employees to help camouflage the ride-hailing app from Apple’s engineers. The reason? So Apple would not find out that Uber had been secretly identifying and tagging iPhones even after its app had been deleted and the devices erased — a fraud detection maneuver that violated Apple’s privacy guidelines.

But Apple was onto the deception, and when Mr. Kalanick arrived at the midafternoon meeting sporting his favorite pair of bright red sneakers and hot-pink socks, Mr. Cook was prepared. “So, I’ve heard you’ve been breaking some of our rules,” Mr. Cook said in his calm, Southern tone. Stop the trickery, Mr. Cook then demanded, or Uber’s app would be kicked out of Apple’s App Store.

For Mr. Kalanick, the moment was fraught with tension. If Uber’s app was yanked from the App Store, it would lose access to millions of iPhone customers — essentially destroying the ride-hailing company’s business. So Mr. Kalanick acceded.

More on fingerprinting:

The idea of fooling Apple, the main distributor of Uber’s app, began in 2014.

At the time, Uber was dealing with widespread account fraud in places like China, where tricksters bought stolen iPhones that were erased and resold.

And:

To halt the activity, Uber engineers assigned a persistent identity to iPhones with a small piece of code, a practice called “fingerprinting.” Uber could then identify an iPhone and prevent itself from being fooled even after the device was erased of its contents.

There was one problem: Fingerprinting iPhones broke Apple’s rules. Mr. Cook believed that wiping an iPhone should ensure that no trace of the owner’s identity remained on the device.

And:

So Mr. Kalanick told his engineers to “geofence” Apple’s headquarters in Cupertino, Calif., a way to digitally identify people reviewing Uber’s software in a specific location. Uber would then obfuscate its code for people within that geofenced area, essentially drawing a digital lasso around those it wanted to keep in the dark. Apple employees at its headquarters were unable to see Uber’s fingerprinting.

The audacity! But Apple caught on, thus the meeting with Cook.

Clues to this fingerprinting emerged late last year. From TechCrunch:

Uber responded today to reports that its app continues to check users’ locations even when they hadn’t used the ride-hailing service for days or weeks. The company explained that the issue is being caused by the iOS operating system itself, not direct tracking by its app.

But, as John Gruber writes:

After writing about how you can verify that Uber is not tracking your location other than within five minutes of ending a ride, Daring Fireball readers on Twitter started sending me screenshots of their Location Services settings, showing that the Uber app is still checking for their location days or even weeks after they last used the app.

A few more reads:

  • This TechCrunch article digs into a more detail on the fingerprinting process, and includes a response from Uber on the Times’ piece.

  • John Gruber digs into the Times article in detail, and raises some unanswered questions of his own.

One last thought: Uber has a 3rd party API, detailed here. If someone deletes the Uber app from their phone, what’s to prevent one of the other Uber API-using apps from reporting data back to Uber, even unknowingly? Could this explain why users report being tracked even after deleting the app?