A Comprehensive Formal Security Analysis of OAuth 2.0
Daniel Fett, Ralf Küsters, Guido Schmitz
Abstract
The OAuth 2.0 protocol is one of the most widely deployed authorization/single sign-on (SSO) protocols and also serves as the foundation for the new SSO standard OpenID Connect. Despite the popularity of OAuth, so far analysis efforts were mostly targeted at finding bugs in specific implementations and were based on formal models which abstract from many web features or did not provide a formal treatment at all. In this paper, we carry out the first extensive formal analysis of the OAuth 2.0 standard in an expressive web model. Our analysis aims at establishing strong authorization, authentication, and session integrity guarantees, for which we provide formal definitions. In our formal analysis, all four OAuth grant types (authorization code grant, implicit grant, resource owner password credentials grant, and the client credentials grant) are covered. They may even run simultaneously in the same and different relying parties and identity providers, where malicious relying parties, identity providers, and browsers are considered as well. Our modeling and analysis of the OAuth 2.0 standard assumes that security recommendations and best practices are followed in order to avoid obvious and known attacks. When proving the security of OAuth in our model, we discovered four attacks which break the security of OAuth. The vulnerabilities can be exploited in practice and are present also in OpenID Connect. We propose fixes for the identified vulnerabilities, and then, for the first time, actually prove the security of OAuth in an expressive web model. In particular, we show that the fixed version of OAuth (with security recommendations and best practices in place) provides the authorization, authentication, and session integrity properties we specify. * An abridged version appears in CCS 2016 [18] .
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Cited by top-tier papers25
- 5GReasoner: A Property-Directed Security and Privacy Analysis Framework for 5G Cellular Network ProtocolSyed Rafiul Hussain, Mitziu Echeverria, Imtiaz Karim, Omar Chowdhury et al.CCS 2019 · 188 citations
- How Bad Can It Git? Characterizing Secret Leakage in Public GitHub RepositoriesMichael Meli, Matthew R. McNiece, Bradley ReavesNDSS 2019 · 130 citations
- O Single Sign-Off, Where Art Thou? An Empirical Analysis of Single Sign-On Account Hijacking and Session Management on the WebMohammad Ghasemisharif, Amrutha Ramesh, Stephen Checkoway, Chris Kanich et al.USENIX Security 2018 · 63 citations
- The Cookie Hunter: Automated Black-box Auditing for Web Authentication and Authorization FlawsKostas Drakonakis, Sotiris Ioannidis, Jason PolakisCCS 2020 · 56 citations
- An Extensive Formal Security Analysis of the OpenID Financial-Grade APIDaniel Fett, Pedram Hosseyni, Ralf KüstersS&P 2019 · 29 citations
Related papers
- WPSE: Fortifying Web Protocols via Browser-Side Security MonitoringStefano Calzavara, Riccardo Focardi, Matteo Maffei, Clara Schneidewind et al.USENIX Security 2018 · 29 citations
- Audience Injection Attacks: A New Class of Attacks on Web-Based Authorization and Authentication StandardsPedram Hosseyni, Ralf Küsters, Tim WürteleS&P 2026 · 1 citation
- Demystifying the (In)Security of Oauth-Based Account Linking in Connector EcosystemsKaixuan Luo, Xianbo Wang, Adonis P. H. Fung, Wing Cheong LauS&P 2026
- DISTINCT: Identity Theft using In-Browser Communications in Dual-Window Single Sign-OnLouis Jannett, Vladislav Mladenov, Christian Mainka, Jörg SchwenkCCS 2022 · 11 citations
- AuthSaber: Automated Safety Verification of OpenID Connect ProgramsTamjid Al Rahat, Yu Feng, Yuan TianCCS 2024 · 1 citation
