10 Yr-Old Facebook Bug Allow Hackers to Steal Access Token & Hijack Anyone’s Facebook Account – 55,000$ Bounty Rewarded

A researcher discovered a critical Account takeover vulnerability in Facebook’s Authorization feature “Login with Facebook” and, it allowed attackers to steal the Access_Token and completely take over the victim’s Facebook account.

Facebook using OAuth 2.0 as an Authorization protocol that helps to exchange the token from Facebook and other third party websites.

The vulnerability resides in the “Login with Facebook” feature that allowed attackers to set up a malicious website, and steak the Access token for several apps including Instagram, Oculus, Netflix, Tinder, Spotify, etc along with Facebook accounts.

Once the attacker compromised the targeted accounts using the stolen tokens, he/she could able to gain full read/write privileges such as messages, photos, videos even if privacy control is set to the “only me”.

Indian Security Researcher Amol Baikar who found this Vulnerability told GBHackers on Security ” This critical Facebook Vulnerability could allow to takeover accounts including Facebook, Instagram, Oculus and more Facebook services. at the same time attack can gain access to all third-party websites such as Netflix, Tinder, Spotify. (where Facebook login is implemented) “

The vulnerability was reported to Facebook last year December and Facebook issues a quick fix for this critical bug, also issued a reward of $55,000 under responsible disclosure bug bounty program.

This is highest bounty awarded for any client site account takes over a vulnerability that ever finds on Facebook.

Stealing The Access Token & Account Takeover

There are two different points that were importantly notified in this vulnerability flow.

  1. Missing the “X-Frame-Options” header. (completely framable flow)
  2. Additionally “window.parent” which itself saves the user interaction to zero. Wasn’t needed to bother with window.open or any button onClick event.

In results, following cross-domain communication were exposed and access_token could leak to any origin without victim knowledge and the entire account will be compromised.

var app_id = '124024574287414',
app_domain = 'www.instagram.com';

var exploit_url = 'https://www.facebook.com/connect/ping?client_id=' + app_id + '&redirect_uri=https%3A%2F%2Fstaticxx.facebook.com%2Fconnect%2Fxd_arbiter%2Fr%2F7SWBAvHenEn.js%3Fversion%3D44%23origin%3Dhttps%253A%252F%252F' + app_domain;

var i = document.createElement('iframe');
i.setAttribute('id', 'i');
i.setAttribute('style', 'display:none;');
i.setAttribute('src', exploit_url);
document.body.appendChild(i);

window.addEventListener('OAuth', function(FB) {
  alert(FB.data.name);
}, !1);

During the research, Amol observed that the vulnerability leaking the 1st party graphql tokens which help to query a mutation calls to add and confirm a new phone number for account recovery.

Stealing Access token

“Since they are whitelisted for GraphQL queries and they don’t need to bother with any permission checks. They have full read/write privileges such as messages, photos, videos even if privacy control is set to the “only me”, ” Amol said.

GBHackers learned some important points that need to be noted in this Facebook vulnerability.

1. All Facebook apps and third-party apps access token could be a leak at the same time. (within Seconds).

2. Leakage of the first party token has full read/write/update/delete permission for the Facebook account. (the attacker can fo anything with Facebook accounts, including adding, phone email which can use later for forgot password) (also tokens can query to read each and each private msgs, photos, videos even if they are set to “only me” privacy control)”.

3. Due to an incorrect post message configuration, someone visiting an attacker-controlled website could have had their first party access tokens stolen for vulnerable apps using Facebook’s OAuth flow.

4.First party tokens are non-expirable. (never expires).

5. First party token remains valid even user changes there Facebook Account password. The attacker still has control over the user’s account. They can harvest the data even user changes his password.

Since the Vulnerability existing in the “Login with Facebook” feature for nearly 10 years, it’s unclear that the bug is exploited or not. So Facebook users are advised to change the password and make sure to log out in all the devices once.

Balaji

BALAJI is an Ex-Security Researcher (Threat Research Labs) at Comodo Cybersecurity. Editor-in-Chief & Co-Founder - Cyber Security News & GBHackers On Security.

Recent Posts

Hunters International Claims Tata Technologies Cyberattack

Multinational engineering and technology services firm Tata Technologies has reportedly fallen victim to a significant…

6 minutes ago

Authorities Seize $31 Million Linked to Crypto Exchange Hack

U.S. authorities announced the seizure of $31 million tied to the 2021 Uranium Finance decentralized…

27 minutes ago

Google, Meta, and Apple Power the World’s Biggest Surveillance System

Imagine a government that tracks your daily movements, monitors your communications, and catalogs your digital…

32 minutes ago

Docusnap for Windows Flaw Exposes Sensitive Data to Attackers

A recently disclosed vulnerability in Docusnap's Windows client software (CVE-2025-26849) enables attackers to decrypt sensitive…

2 hours ago

CISA Warns of Active Exploitation of Microsoft Windows Win32k Vulnerability

The U.S. Cybersecurity and Infrastructure Security Agency (CISA) has added CVE-2018-8639, a decade-old Microsoft Windows privilege…

2 hours ago

Update Alert: Google Warns of Critical Android Vulnerabilities Under Exploit

Google’s March 2025 Android Security Bulletin has unveiled two critical vulnerabilities—CVE-2024-43093 and CVE-2024-50302—currently under limited,…

5 hours ago