Skip to main content
QUICK REVIEW

[논문 리뷰] On the security of modern Single Sign-On Protocols: Second-Order Vulnerabilities in OpenID Connect

Vladislav Mladenov, Christian Mainka|arXiv (Cornell University)|2015. 08. 18.
Web Application Security Vulnerabilities참고 문헌 15인용 수 12
한 줄 요약

이 논문은 OpenID Connect의 새로운 제2차 유형 취약성을 규명한다. 특히 Discovery 및 Dynamic Registration 확장을 악용하여 악성 엔드포인트 공격을 가능하게 하며, 이는 정상적인 프로토콜 구현에도 불구하고 인증 실패, SSRF, 코드 인젝션, DoS를 유도한다. 공격자는 등록 단계에서 피로를 저장하고 이후 인증 플로우에서 이를 실행함으로써 프로토콜의 보안을 약화시킨다.

ABSTRACT

OAuth is the new de facto standard for delegating authorization in the web. An important limitation of OAuth is the fact that it was designed for authorization and not for authentication. The usage of OAuth for authentication thus leads to serious vulnerabilities as shown by Zhou et. al. in [44] and Chen et. al. in [9]. OpenID Connect was created on top of OAuth to fill this gap by providing federated identity management and user authentication. OpenID Connect was standardized in February 2014, but leading companies like Google, Microsoft, AOL and PayPal are already using it in their web applications [1], [2], [3], [30]. In this paper we describe the OpenID Connect protocol and provide the first in-depth analysis of one of the key features of OpenID Connect: the Discovery and the Dynamic Registration extensions.We present a new class of attacks on OpenID Connect that belong to the category of second-order vulnerabilities. These attacks consist of two phases: First, the injection payload is stored by the legitimate application. Later on, this payload is used in a security-critical operation. Our new class of attacks - called Malicious Endpoints attacks - exploits the OpenID Connect extensions Discovery and Dynamic Registration. These attacks break user authentication, compromise user privacy, and enable Server Side Request Forgery (SSRF), client-side code injection, and Denial-of-Service (DoS). As a result, the security of the OpenID Connect protocol cannot be guaranteed when these extensions are enabled in their present form. We contacted the authors of the OpenID Connect and OAuth specifications. They acknowledged our Malicious Endpoint attacks and recognized the need to improve the specification [29]. We are currently involved in the discussion regarding the mitigation of the existing issues and an extension to the OAuth specification.

연구 동기 및 목표

  • OpenID Connect의 보안, 특히 이전에 깊이 분석되지 않은 Discovery 및 Dynamic Registration 확장을 분석하기 위해.
  • 악성 피로가 프로토콜 설정 단계에서 저장되고 이후 단계에서 실행되는 새로운 유형의 취약성—제2차 공격—을 식별하고 실험적으로 입증하기 위해.
  • 이러한 취약성이 구현 시 정확한 프로토콜 준수 여부와 관계없이 사용자 인증, 개인정보 유출, 시스템 무결성을 침해할 수 있음을 보여주기 위해.
  • OpenID Connect와 같은 복잡한 다단계 SSO 프로토콜에 대해 자동화된 탐지 도구의 격차를 해결하기 위해.
  • 향후 분산형 SSO 시스템을 대상으로 한 형식적 모델링 및 자동화된 분석 도구 개발을 촉진하기 위해.

제안 방법

  • Discovery 및 Dynamic Registration 단계에 집중하여 OpenID Connect 프로토콜의 수동적이고 깊이 있는 역공학 및 위협 모델링을 수행하였다.
  • 프로토콜가 신뢰할 수 없는 엔드포인트를 등록하고, 이후 보안 핵심 기능에서 적절한 검증 없이 사용할 수 있음을 확인하였다.
  • 공격자가 등록 단계에서 악성 엔드포인트를 삽입하고, 이후 인증 플로우에서 이를 실행하는 실용적인 악용 체인을 설계하고 검증하였다.
  • Discovery 및 등록 단계에서 클라이언트와 IDP 간의 상호 인증이 부족하여 악성 피로를 삽입하고 이후에 실행할 수 있음을 악용하였다.
  • 실제 환경과 유사한 상황에서 공격를 검증하였으며, 구현 오류나 잘못된 설정이 필요하지 않다—오직 프로토콜 수준의 취약성만으로도 가능하다.
  • OAuth 및 OpenID Connect 표준 작성자들과 협의하여 발견 사항을 인정받고 향후 표준 개선을 위한 노력이 진행 중이다.

실험 결과

연구 질문

  • RQ1OpenID Connect의 Discovery 및 Dynamic Registration 확장 기능은 기존의 제1차 유형 취약성 외에 어떤 새로운 공격 벡터를 제공하는가?
  • RQ2구현 오류 없이도 제2차 유형 취약성—공격 피로가 한 단계에서 저장되고 이후 단계에서 실행되는 유형—이 OpenID Connect에서 성공적으로 악용될 수 있는가?
  • RQ3이러한 취약성은 실제 배포 환경에서 사용자 인증, 개인정보 보호, 시스템 무결성에 얼마나 심각하게 영향을 미치는가?
  • RQ4기존의 자동화된 도구인 SSOScan 및 AuthScan이 SSO 프로토콜에서 이러한 제2차 유형 취약성을 탐지하는 데 왜 효과가 없는가?
  • RQ5이러한 취약성은 유사한 동적 신뢰 수립 메커니즘을 지원하는 다른 SSO 프로토콜에 어떤 영향을 미치는가?

주요 결과

  • 이 논문은 Discovery 및 Dynamic Registration 단계에서 검증 및 신뢰 수립이 부족하여 발생하는 새로운 제2차 유형 취약성의 새로운 유형을 발견하였다.
  • 이러한 취약성은 공격자가 등록 단계에서 악성 엔드포인트를 등록하고, 이후 인증 플로우에서 SSRF, 클라이언트 측 코드 인젝션, DoS 공격을 실행할 수 있게 한다.
  • 악성 피로가 합법적인 프로토콜 단계에서 저장되고 이후에만 실행되기 때문에, 전통적인 보안 메커니즘을 우회할 수 있으며 탐지가 어렵다.
  • 사용자 인증이 완전히 무너질 수 있으며, 공격자가 신원 토큰을 위조하거나 인증 플로우를 악성 IDP로 리디렉션할 수 있다.
  • 표준 작성자들이 발견 사항을 인정하고 있으며, 향후 OpenID Connect 및 OAuth 표준 버전에서 이러한 문제를 완화하기 위해 노력하고 있다.
  • 본 연구는 현재 보안 평가 관행에 심각한 격차가 있음을 드러내며, SSO 프로토콜의 2단계와 3단계에만 집중하는 반면, 이러한 취약성이 기인하는 초기 Discovery 및 등록 단계를 간과하고 있음을 보여준다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.