Breaking The Giants With Logic
Where
Day 2 Stream 2
BSides Las Vegas
Duration
25 min
Shows how business logic flaws in web apps, like invite and reset flows, let attackers bypass intended rules.
Summary
The talk frames business logic vulnerabilities as flaws that do not trigger errors or crashes, but instead let people use a feature in ways its designers never intended. The speaker argues that common automated tooling produces duplicate findings in bug bounty programs, so researchers benefit from reasoning about what a feature is supposed to do. A simple example is an e-commerce checkout where a client-supplied price parameter is changed before the order is submitted.
The middle of the talk walks through several cases. A password reset link carrying a sequential user ID let an attacker reset another account's password despite a strong token. Invitation links were next: altering group or sender identifiers, member type values, or reusing an invite could allow joining restricted groups, impersonating an inviter, or escalating privileges. Two case studies followed. In Facebook groups, a preview state kept a user hidden from admins while retaining rejoin access, and a removed feature's backend still accepted requests. On Instagram, a blocked account could still be followed, letting the user watch content unseen.
The closing advice is to use an application as a regular user before automating, learn which features and controls are weak, and read disclosed reports. Patterns found on one platform often recur on others, which motivates the speaker's plan to build a tool for hunting invitation-style flaws. The Q&A touched on whether stored invitations could enable denial of service, judged an unlikely edge case, and on how often backend remnants of removed features remain reachable.
Related talks
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.
Bug Bounty Village·24 min
Bruno Mendes · Rafael Silva
Shows how to turn a black-box arbitrary file write into remote code execution by fingerprinting the runtime and overwriting predictable framework files.
Track 3
Shows how to move past ordinary bug hunting toward finding a server-side request forgery worth a bounty.


