Google authenticator sync doesn’t use end-to-end encryption 😬 https://defcon.social/@mysk/110262313275622023
Mysk🇨🇦🇩🇪 (@[email protected])

Attached: 4 images Google has just updated its 2FA Authenticator app and added a much-needed feature: the ability to sync secrets across devices. TL;DR: Don't turn it on. The new update allows users to sign in with their Google Account and sync 2FA secrets across their iOS and Android devices. We analyzed the network traffic when the app syncs the secrets, and it turns out the traffic is not end-to-end encrypted. As shown in the screenshots, this means that Google can see the secrets, likely even while they’re stored on their servers. There is no option to add a passphrase to protect the secrets, to make them accessible only by the user. Why is this bad? Every 2FA QR code contains a secret, or a seed, that’s used to generate the one-time codes. If someone else knows the secret, they can generate the same one-time codes and defeat 2FA protections. So, if there’s ever a data breach or if someone obtains access .... 🧵 #Privacy #Cybersecurity #InfoSec #2FA #Google #Security

DEF CON Social
Shameless plug: thanks to some hard work by my awesome iCloud Keychain colleagues, all your keychain secrets are belong to you. They’re end-to-end encrypted and we have no way to read them: https://support.apple.com/guide/security/icloud-keychain-security-overview-sec1c89c6f3b/1/web/1
iCloud Keychain security overview

With the iCloud Keychain, users can securely sync their passwords between iPhone, iPad, and Mac devices without exposing that information to Apple.

Apple Support
@fay59 @rmondello Does this mean that I lose everything stored in my iCloud KeyChain if I lose my Mac, have no other iOS devices, and so my iCloud account is the only form of storage left?
@MildlyAggrievedScientist @rmondello No: if you can both log in to your iCloud account, and you can provide the password of your lost/stolen Mac’s user account, you will be able to recover the keychain. https://support.apple.com/en-us/guide/security/secdeb202947/web
Secure iCloud Keychain recovery

iCloud Keychain recovery allows users to escrow their keychain with Apple without allowing Apple to read the passwords and other data it contains.

Apple Support
@fay59 @rmondello There appear to be lots of hidden assumptions here and, without knowing them, I can't understand the security promise. Does it assume my password is strong enough to resist an offline guessing attack? Does it assume that an HSM can effectively rate limit guesses?
@MildlyAggrievedScientist @rmondello I’m not able to talk about topics not covered in the guide, sorry. If I’m made aware of more information coming out on that topic I can try to remember to let you know.
@fay59 @rmondello Escrow is defined as safeguarding valuables with a third party (e.g., https://www.merriam-webster.com/dictionary/escrow), so it shouldn't be surprised that the phrase "escrowed with Apple" would be unclear. The protection provided by any escrow arrangement is contingent on the rules governing when property may be released form escrow. If you can't/won't explain the rules your HSMs follow, then the article will only reassure those who cannot see how empty the promise is.
Definition of ESCROW

Definition of 'escrow' by Merriam-Webster

@MildlyAggrievedScientist @rmondello I know why it’s not giving you what you want to know. I’m not answering your question because it’s not my area and my director reads my toots, so (1) I don’t want to risk misrepresenting the technology, and (2) if my director feels this needs to be clarified, he has the avenues to make the information public which I don’t have.
@fay59 @rmondello Are you allowed to say who your director is?
Escrow security for iCloud Keychain

iCloud provides a secure infrastructure for keychain escrow to help ensure that only authorized users and devices can perform a recovery.

Apple Support
@SolTwoOne @fay59 @rmondello Thanks! Interesting design and tradeoffs. If you discover the HSM code has any vulnerabilities, you either have to dump all the data or wait to push all the clients to a new cluster when you next hear from them. HSMs must have very long lifetimes. Is there a way to self-escrow if I provide a public key?
@fay59 @rmondello Now, if only the keychain could store secure notes…