Nikola Jokic is the most over-protected player in NBA history. He is a regular-season stat-padder who gets exposed the second he has to guard a basic pick-and-roll. If he played in the 90s, He’s a big man off the bench. (1/5)
Some people seem confused on why this is a problem so let me give a couple scenarios:
Similar to the upset about Signal messages being retrieved via notifications after an app is uninstalled, people rightfully expect that all of an app's data is disposed of when uninstalling it. (Exception if iCloud backups are enabled).
In this scenario with Discord, let's say you want to create a *new* account that is not linked to your previous one at all. You turn off iCloud backups for Discord, you sign out of Discord, uninstall it, then reinstall it, then use a new email to sign up. Discord, without your knowledge, could have stored keychain values that will persist and identify you across installs, thus violating your privacy. The only way to prevent this is to FULL WIPE THE PHONE.
Another scenario, similar to the Signal issue, is that in a panic or situation you think your phone might be unlocked against your will and will be investigated, you may uninstall apps that you want to discard data of or not allow adversaries to have access to. Even if you uninstalled Discord, if you forgot to sign out of it manually, the adversary can install Discord and you'll magically be signed in again, exposing anything on your account. Obviously this is a silly example and a pretty high threat, but it is an issue nonetheless.
I want to also add that an app has control over how they take care of these old keychain values once the app is reinstalled. In a perfect world, they would only be discarded, however apps can not be trusted to do the right thing.
There is also an edge case with app groups, where apps can share values with each other if they are from the same developer, which means uninstalling one app from that developer may not guarantee all of the data from that app would be removed anyways. I think there would be a reasonable exception for this. But all values should be removed when all apps from that group are uninstalled.
In my opinion, the "convenience" of being automatically signed in after reinstalling an app is not worth the user and developer confusion, and the privacy/security downsides.
For those who don’t understand, here’s what this looks like with Discord:
- Turned off iCloud backups
- Installed Discord and created a new account
- Uninstalled and reinstalled Discord
- Still signed in without any manual intervention
This is a big security and privacy issue.
🤯 Every app installed on the iPhone can read the iPhone's storage volume creation timestamp (down to the second). No permission required. This value remains the same until the volume is erased. Yikes!!
The UUID seems to be the same for all devices.