Skip to main content
QUICK REVIEW

[논문 리뷰] WPSE: Fortifying Web Protocols via Browser-Side Security Monitoring

Stefano Calzavara, Riccardo Focardi|arXiv (Cornell University)|2018. 06. 24.
Network Security and Intrusion Detection인용 수 12
한 줄 요약

WPSE는 OAuth 2.0 및 SAML 2.0와 같은 웹 프로토콜에서 정확한 프로토콜 흐름, 기밀성 및 무결성을 보장하기 위해 형식적으로 명세화하고 런타임에서 강제 적용하는 브라우저 측 보안 모니터이다. 이는 실제 웹 환경에서 90개 중 55개(61.1%)의 취약한 OAuth 2.0 구현을 탐지했으며, 추적 라이브러리로 인한 심각한 결함도 발견했고, Google의 SAML 2.0 구현에서 새로운 SAML 2.0 취약점을 밝혀냈다.

ABSTRACT

We present WPSE, a browser-side security monitor for web protocols designed to ensure compliance with the intended protocol flow, as well as confidentiality and integrity properties of messages. We formally prove that WPSE is expressive enough to protect web applications from a wide range of protocol implementation bugs and web attacks. We discuss concrete examples of attacks which can be prevented by WPSE on OAuth 2.0 and SAML 2.0, including a novel attack on the Google implementation of SAML 2.0 which we discovered by formalizing the protocol specification in WPSE. Moreover, we use WPSE to carry out an extensive experimental evaluation of OAuth 2.0 in the wild. Out of 90 tested websites, we identify security flaws in 55 websites (61.1%), including new critical vulnerabilities introduced by tracking libraries such as Facebook Pixel, all of which fixable by WPSE. Finally, we show that WPSE works flawlessly on 83 websites (92.2%), with the 7 compatibility issues being caused by custom implementations deviating from the OAuth 2.0 specification, one of which introducing a critical vulnerability.

연구 동기 및 목표

  • 브라우저가 프로토콜 의미를 인식하지 못하는 웹 프로토콜 실행에서 발생하는 브라우저 측 불확실성으로 인한 보안 위험을 해결하기 위해.
  • 브라우저 측에서 세 가지 핵심 보안 속성을 형식화하고 강제 적용하기 위해: 프로토콜 흐름 준수, 메시지 기밀성, 메시지 무결성.
  • 기존 기능을 손상시키지 않으면서 웹사이트에 대한 변경 없이도 일관되게 프로토콜 명세를 강제 적용할 수 있는 실용적이고 후행 호환성 있는 브라우저 확장 프로그램을 제공하기 위해.
  • 대규모 실증 평가를 통해 실제 OAuth 2.0 및 SAML 2.0 배포 환경에서의 취약점을 탐지하기 위해.
  • 브라우저 측 프로토콜 모니터링이 일반적인 웹 프로토콜 공격에 대비한 확장 가능한 방어 수단으로서의 실현 가능성과 영향력을 입증하기 위해.

제안 방법

  • WPSE는 의도된 제어 흐름, 메시지 기밀성 및 무결성을 포괄하는 보안 오토마타 모델을 사용하여 웹 프로토콜 명세를 형식화한다.
  • 이 모니터는 브라우저 요청 시퀀스를 분석하여 명세된 프로토콜 동작에서의 이탈을 탐지함으로써 런타임에서 이러한 속성을 강제한다.
  • 웹사이트나 서버 측 인fra의 변경 없이도 구현이 가능하도록 Google Chrome 확장 프로그램으로 제작되었다.
  • 프로토콜 명세의 정적 분석을 통해 런타임에 브라우저 동작을 실시간으로 검사할 수 있는 유한 상태 모니터를 생성하는 방법을 사용한다.
  • 보안 정책은 프로토콜 의미에서 유도된 상태기반 기반의 상태기계로 표현되며, 토큰 泄露 또는 잘못된 리디렉션 순서와 같은 비정상 동작을 탐지할 수 있다.
  • 연구는 90개의 실제 OAuth 2.0 웹사이트에서 평가되었고, SAML 2.0에 대해서도 추가적인 형식화 및 테스트를 통해 새로운 취약점을 발견했다.

실험 결과

연구 질문

  • RQ1브라우저 측 런타임 모니터링은 널리 배포된 웹 프로토콜인 OAuth 2.0 및 SAML 2.0에서 실제 발생하는 프로토콜 구현 버그를 탐지하고 방지할 수 있는가?
  • RQ2브라우저 측 동작에서 비롯된 공격을 방지하기 위해 브라우저 모니터에 형식화된 프로토콜 명세를 적용할 수 있는 정도는 어느 정도인가?
  • RQ3특정 비준수 또는 커스터마이징된 구현이 있는 기존 웹 애플리케이션과 브라우저 측 보안 모니터의 호환성은 얼마나 되는가?
  • RQ4이러한 모니터는 Google과 같은 주요 제공자에서 운영 중인 시스템에서도 이전에 알려지지 않은 취약점을 탐지할 수 있는가?
  • RQ5대규모로 브라우저 측 보안 모니터를 배포하는 데 있어 실용성과 성능 영향은 어떠한가?

주요 결과

  • WPSE는 테스트한 90개의 OAuth 2.0 웹사이트 중 55개(61.1%)에서 보안 결함을 탐지했으며, Facebook Pixel과 같은 제3자 추적 라이브러리로 인한 심각한 취약점도 포함되어 있었다.
  • 모니터는 90개 웹사이트 중 83개(92.2%)에서 정상적으로 작동했으며, 나머지 7개 호환성 문제는 비준수 커스터마이징 구현에서 기인했고, 그 중 하나는 심각한 취약점을 내포하고 있었다.
  • WPSE에서 SAML 2.0 명세를 형식화함으로써 Google의 SAML 2.0 구현에 대한 새로운 공격을 발견했으며, 이는 Google의 버그 바우처 프로그램에서 보상금을 수여받았다.
  • 이 방법은 실용적이고 효과적이다: 존재하는 기능을 손상시키지 않고 보안 정책을 강제 적용할 수 있으며, 브라우저 확장 프로그램으로 배포할 수 있다.
  • 연구 결과는 브라우저 오작동에서 기인하는 다양한 공격(예: Referer 헤더를 통한 토큰 泄露 또는 오픈 리디렉터)을 방지할 수 있음을 보여준다.
  • 결과적으로 형식화된, 브라우저에 의해 강제 적용되는 프로토콜 명세는 여러 웹사이트와 프로토콜 간에 확장 가능하고 재사용 가능한 방어 수단이 될 수 있음을 시사한다.

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

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

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

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