So in case you aren't fully up-to-speed on useless hacker trivia, "The Fappening" (also sometimes referred to as "Celebgate") was a series of targeted end-user cyber attacks which occurred back in 2014 (which strangely feels like forever in tech years), that resulted in unauthorized access to the iCloud accounts of several prominent celebrity figures. Following these breaches, photographs (for many including personal sexually explicit or nude photos) of the celebrities were then publicly released online. Most evidence points to the attack vector being spear phishing email attacks which directed the victims to a fake icloud login site, and then collected the victim's credentials to subsequently access their real icloud accounts.
To demonstrate this risk, we were able to put together a fairly simple proof of concept by doing the following:
Responsible Disclosure Notice - These issues were responsibly reported to Apple (in February 2020), and have since been triaged and closed.
Migration to MFA
In response to these events, Apple has made iCloud one of the very few social web services that implements compulsory MFA ("Multi-Factor Authentication"). But while they might be ahead of the industry in that regard, they are still falling behind many of the other tech giants in its adoption of strong cryptographic MFA -- specifically FIDO U2F.But not quite secure enough ¯\_(ツ)_/¯...
Because of their failure to support FIDO U2F, it is still possible to create a fake (evil twin) website and fully compromise access to user accounts -- just like the attacks that resulted in "The Fappening". The only difference in the attack, is that the attacker would now need to (because of the MFA token expiry) replay the credentials acquired from the victim in real-time to the legitimate iCloud site...to then subsequently hijack the session and gain unauthorized access.To demonstrate this risk, we were able to put together a fairly simple proof of concept by doing the following:
- Copied the recursive HTML source code for the iCloud login (to create the evil clone).
- Hosted the copied HTML on a Apache web server
- Configure basic handler using Python/Flask to receive the iCloud form POST request data and replay to the actual iCloud site using Selenium browser (would use headless for real attack, but to visually demonstrate, used a headed browser in POC)
- Modify the Action attribute of the HTML form, to have it POST to a Python Flask handler
Comments
Post a Comment