Instagram flaw allowed to see private, archived Posts/Stories of users without following them

Pierluigi Paganini June 15, 2021

Instagram has addressed a new flaw that allowed anyone to access private accounts viewing archived posts and stories without having to follow them.

Researcher Mayur Fartade has found a vulnerability in Instagram that allowed anyone to access private accounts, viewing archived posts and stories without having to follow them.

The expert reported the flaw to the Facebook’s security team on April 16, 2021, and the company addressed the issue on June 15. The company awarded the expert with a $30,000 payout as part of its bug bounty program.

“This bug could have allowed a malicious user to view targeted media on Instagram. An attacker could have been able to see details of private/archived posts, stories, reels, IGTV without following the user using Media ID.
Details include like/comment/save count, display_url, image.uri, Facebook linked page(if any) and other.” Fartade wrote on Medium.
“Data of users can be read improperly. An attacker could able to regenerate valid cdn url of archived stories & posts. Also by brute-forcing Media ID’s, attacker could able to store the details about specific media and later filter which are private and archived.”

The expert discovered that it is possible to access images, videos, or albums by simply knowing the related media ID. Anyway, an attacker could perform a brute-force of Media ID to retrieve specific media and filter which are private and archived.

The researchers crafted a POST request to a GraphQL endpoint to retrieve data from an account, even without following its owner.

Below the steps to reproduce it:

  1. Obtain target’s post/reel/IGTV/story media id (By brute-forcing or other technique)
  2. Send a POST request to
  3. Where [MEDIA_ID] is the media_id of any post/reel/IGTV/story.
    doc_id is redacted.
  4. In the response, display_url, save_count & other details of a particular media disclosed.

The expert also found another endpoint with doc_id=[REDACTED] that could be used to access the same information.

Facebook has changed both endpoints, below the timeline for this vulnerability:

16 April 2021 : Report sent
19 April 2021 : Reply from Facebook Security Team — Need more info
19 April 2021 : Information Sent
22 April 2021 : Report Triaged
23 April 2021 : Found another endpoint disclosing the same info
29 April 2021 : Fixed
29 April 2021 : Vulnerability not completely patched. Sent the information to FB Security Team
…. some messages exchanged …
15 June 2021: Fixed and awarded $30000 bounty.

Follow me on Twitter: @securityaffairs and Facebook

[adrotate banner=”9″][adrotate banner=”12″]

Pierluigi Paganini

(SecurityAffairs – hacking, ransomware)

[adrotate banner=”5″]

[adrotate banner=”13″]

you might also like

leave a comment