Skip to main content
QUICK REVIEW

[논문 리뷰] Deemon: Detecting CSRF with Dynamic Analysis and Property Graphs

Giancarlo Pellegrino, Martin Johns|arXiv (Cornell University)|2017. 08. 29.
Web Application Security Vulnerabilities참고 문헌 28인용 수 4
한 줄 요약

Deemon은 동적 분석과 성질 그래프 모델링을 사용하여 인증된 크로스사이트 요청 위조(aCSRF) 취약성을 자동으로 탐지하는 최초의 프레임워크이다. 런타임 트레이스에서 통합 모델을 유추하고, 그래프 탐색을 통해 의심스러운 상태 변경 요청을 식별하며, 자동 테스팅을 통해 취약성을 검증함으로써 실제 웹 애플리케이션에서 기존에 알려지지 않은 14개의 aCSRF 취약성을 발견하였다.

ABSTRACT

Cross-Site Request Forgery (CSRF) vulnerabilities are a severe class of web vulnerabilities that have received only marginal attention from the research and security testing communities. While much effort has been spent on countermeasures and detection of XSS and SQLi, to date, the detection of CSRF vulnerabilities is still performed predominantly manually. In this paper, we present Deemon, to the best of our knowledge the first automated security testing framework to discover CSRF vulnerabilities. Our approach is based on a new modeling paradigm which captures multiple aspects of web applications, including execution traces, data flows, and architecture tiers in a unified, comprehensive property graph. We present the paradigm and show how a concrete model can be built automatically using dynamic traces. Then, using graph traversals, we mine for potentially vulnerable operations. Using the information captured in the model, our approach then automatically creates and conducts security tests, to practically validate the found CSRF issues. We evaluate the effectiveness of Deemon with 10 popular open source web applications. Our experiments uncovered 14 previously unknown CSRF vulnerabilities that can be exploited, for instance, to take over user accounts or entire websites.

연구 동기 및 목표

  • 인증된 크로스사이트 요청 위조(aCSRF) 취약성에 대한 자동 탐지 기법의 부족을 해결하기 위해, 이는 여전히 주로 수동 점검에 의해 발견되고 있다.
  • 실행 트레이스, 데이터 흐름, 아키텍처 계층을 통합된 표현 방식으로 캡처하는 모델 기반 접근법을 개발하여 종합적인 취약성 분석을 가능하게 하기 위해.
  • GUI 상호작용 기록만으로도 수동 설정을 최소화한 비지도(trace-driven) 모델 구축을 가능하게 하기 위해.
  • 실제 응용 프로그램에서 후보 취약성을 검증하기 위해 자동으로 테스트를 생성하고 실행하기 위해.
  • 현실 세계의 웹 애플리케이션에서 보안 민감한 작업이 일관되게 보호되고 있는지 여부를 평가하고, 보호되지 않은 경우를 식별하기 위해.

제안 방법

  • Deemon은 웹 애플리케이션을 동적으로 인스트루먼트하여 네트워크 요청, 서버 측 작업, 데이터베이스 상호작용을 포함한 실행 트레이스를 수집한다.
  • 실행 트레이스, 데이터 흐름, 아키텍처 구성 요소를 하나의 분석 가능한 표현으로 통합하는 성질 그래프 모델을 구축한다.
  • 그래프 탐색 기법을 적용하여 적절한 CSRF 보호 메커니즘이 없는 상태 변경 HTTP 요청을 식별한다.
  • 증강된 런타임 환경을 활용하여 후보 취약성의 공격 가능성을 검증하기 위해 유사 공격 테스트를 자동으로 생성하고 실행한다.
  • 모델 유추 과정은 지도 학습 없이도 수행되며, 기록된 GUI 상호작용만을 입력으로 요구하므로 확장성 있고 노력이 적은 배포가 가능하다.
  • 성질 그래프 기반 쿼리 언어를 활용하여 의심스럽거나 취약한 행동 패턴을 표현하고 탐지한다.

실험 결과

연구 질문

  • RQ1동적 분석과 모델 기반 추론을 사용하여 대규모로 aCSRF 취약성을 자동으로 탐지할 수 있는가?
  • RQ2성질 그래프 기반 모델링 파라다임은 현대 웹 애플리케이션의 CSRF와 관련된 크로스티어 및 크로스기능적 측면을 효과적으로 캡처할 수 있는가?
  • RQ3유추된 모델 기반 자동 테스트 생성이 발견된 aCSRF 후보의 공격 가능성을 신뢰성 있게 검증할 수 있는가?
  • RQ4현실 세계의 웹 애플리케이션에서 보안 민감한 작업에 대한 인식 수준과 보호 수준은 어떠한가?
  • RQ5보안 민감한 동작이 선택적으로 보호되는 패턴이 존재하는가? 이는 잠재적인 잘못된 설정이나 간과된 취약성을 시사하는가?

주요 결과

  • Deemon은 10개의 인기 있는 오픈소스 웹 애플리케이션에서 기존에 알려지지 않은 14개의 aCSRF 취약성을 발견하였으며, 이는 사용자 계정 탈취 및 데이터베이스 손상과 같은 심각한 결함을 포함한다.
  • 모든 14개의 취약성에 대해 자동 테스트 실행을 통해 공격 가능성이 성공적으로 검증되었으며, 실제 영향을 미치는 것으로 확인되었다.
  • 두 건의 사례에서 Deemon은 보안 민감한 작업이 일관되지 않게 보호되는 경각심을 일으키는 보호 패턴을 식별하였으며, 잠재적인 잘못된 설정을 시사한다.
  • 성질 그래프 모델링 접근법은 기존 스캐너와 정적 분석기들이 자주 간과하는 복잡한 크로스티어 상호작용을 효과적으로 탐지하는 데 기여하였다.
  • 평가 결과, 동적이고 트레이스 기반 모델링은 기존의 크롤링 기반 스캐너보다 aCSRF와 같은 논리적 및 상태 기반 취약성을 탐지하는 데 뛰어난 성능을 보였다.
  • 결과는 현재 수동 탐지 방식의 한계를 드러내며, aCSRF 탐지에 대해 자동화되고 확장 가능한 솔루션이 절실하게 필요하다는 점을 강조한다.

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

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

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

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