Breaking the Guest List: Hacking Invitation Systems for Fun and Profit
Where
Breaking Ground
BSides Las Vegas
Duration
38 min
Walks through invitation flow bugs on Facebook and Snapchat that let attackers regain access or add unwanted users.
Summary
Ali Kabeel explains that business logic flaws arise when developers and attackers see an application differently. Invitation systems are a useful case because they appear everywhere, from social groups to B2B seat management, and the same mistakes keep recurring. Predictable tokens, unchecked identifiers in invite links, and reliance on the interface for enforcement are the recurring themes.
The talk walks through three case studies. A Facebook invite could re-friend someone after they had been removed, and blocking did not help because invites did not expire and were not single use. A later Facebook group flow let an email invite be hidden by loading its link without accepting, so an attacker could hold a persistent, distributable invitation. Each fix was bypassed, including by moving an email between accounts and reaching a removed feature through a still-live API. On Snapchat Business Manager, creating an invite and assigning its role were separate requests, so an attacker could leave a user in a broken state. Joining without confirmation then allowed a forged request from a web page to add victims to an organization.
The takeaways are to bind invitations to a user attribute, make them single use and expiring, allow revocation, keep related operations atomic, define valid start and end states, require confirmation, and retire old API versions. Fixing the interface alone does not secure the server behavior.
Related talks
Talks·52 min
Nicholas Anastasi · Juan Pablo Gomez Postigo
Shows how a trusted proxy header bypassed authentication in popular self-hosted Servarr media applications.
Talks·45 min
Katie Paxton-Fear
Traces application security changes through the history of the Neopets virtual pet website, from plaintext passwords to bot defenses.
Bug Bounty Village·21 min
Glendon Chong
Walks through three TikTok bug bounty reports where web cache poisoning on an OAuth login endpoint led to account takeovers.


