Skip to main content
QUICK REVIEW

[논문 리뷰] Sound and Complete Runtime Security Monitor for Application Software

Muhammad Taimoor Khan, Dimitrios Serpanos|arXiv (Cornell University)|2016. 01. 17.
Parallel Computing and Optimization Techniques참고 문헌 17인용 수 3
한 줄 요약

이 논문은 단순히 알려진 공격 뿐 아니라 알려지지 않은 사이버 공격을 모두 탐지할 수 있도록, 단항 제2차 논리와 이벤트 미분법을 사용하여 작성된 사양에 대해 응용 프로그램 실행을 공식적으로 검증함으로써 신뢰성 있고 완전한 런타임 보안 모니터를 제안한다. 이 모니터는 모듈러이고 추상화된 사양 및 런타임 검증을 활용하여 거짓 경고가 없고 높은 효율성을 확보하여 실시간 및 구형 시스템에 적합하다.

ABSTRACT

Conventional approaches for ensuring the security of application software at run-time, through monitoring, either produce (high rates of) false alarms (e.g. intrusion detection systems) or limit application performance (e.g. run-time verification). We present a runtime security monitor that detects both known and unknown cyber attacks by checking that the run-time behavior of the application is consistent with the expected behavior modeled in application specification. This is crucial because, even if the implementation is consistent with its specification, the application may still be vulnerable due to flaws in the supporting infrastructure (e.g. the language runtime system, libraries and operating system). This runtime security monitor is sound and complete, eliminating false alarms, as well as efficient, so that it does not limit runtime application performance and so that it supports real-time systems. The security monitor takes as input the application specification and the application implementation, which may be expressed in different languages. The specification language of the application software is formalized based on monadic second order logic and event calculus interpreted over algebraic data structures. This language allows us to express behavior of an application at any desired (and practical) level of abstraction as well as with high degree of modularity. The security monitor detects every attack by systematically comparing the application execution and specification behaviors at runtime, even though they operate at two different levels of abstraction. We define the denotational semantics of the specification language and prove that the monitor is sound and complete. Furthermore, the monitor is efficient because of the modular application specification at appropriate level(s) of abstraction.

연구 동기 및 목표

  • 높은 거짓 경고 비율이나 성능 오버헤드로 인해 제한되는 기존 런타임 모니터의 문제를 해결하기 위해.
  • 공식적인 응용 프로그램 사양에 대한 런타임 동작을 검증하여 알려진 및 알려지지 않은 사이버 공격을 탐지할 수 있도록 하기 위해.
  • 성능 저하 없이도 신뢰성(거짓 양성 없음)과 완전성(모든 사양에서의 이탈 탐지)을 동시에 확보하는 솔루션을 제공하기 위해.
  • 실행 언어나 추상화 수준에 관계없이 모든 구형 및 최신 시스템을 지원하기 위해.
  • 공식적 사양 기반의 공격 계획 모델링을 통해 공격 특성 분석을 가능하게 하여 효과적인 방어를 지원하기 위해.

제안 방법

  • 알제브라적 데이터 구조 위에서 단항 제2차 논리와 이벤트 미분법을 사용하여 응용 프로그램 사양을 공식화하기 위해.
  • 사양 언어에 대한 의미론적 의미를 정의하여 시스템 동작에 대한 공식적 추론을 가능하게 하기 위해.
  • 응용 프로그램의 실행 트레이스를 사양과 실시간으로 비교하는 런타임 모니터를 구현하기 위해.
  • 구체적 실행 상태와 추상적 사양 상태를 비교하기 위해 상태, 값, 환경 등의 추상화 관계를 사용하기 위해.
  • 공식적 검증 하에 모니터의 신뢰성과 완전성을 증명하기 위해 가정/보장 추론을 적용하기 위해.
  • 적절한 추상화 수준에서 모듈러 사양을 활용하여 효율성과 확장성을 확보하기 위해.

실험 결과

연구 질문

  • RQ1사양에서의 이탈을 탐지할 때 거짓 경고가 없이도 런타임 보안 모니터가 동시에 신뢰성과 완전성을 확보할 수 있는가?
  • RQ2단항 제2차 논리와 이벤트 미분법으로 표현된 공식 사양은 어떻게 다양한 추상화 수준에서 응용 프로그램 동작을 모델링할 수 있는가?
  • RQ3다양한 구현 및 사양 추상화 수준 간에 효율적인 런타임 검증을 가능하게 하는 메커니즘은 무엇인가?
  • RQ4실행 동작을 공식 사양과 비교함으로써 모니터는 어떻게 알려지지 않은 공격을 탐지할 수 있는가?
  • RQ5성능 저하 없이도 모니터는 구형 및 최신 시스템 모두에 적용될 수 있는가?

주요 결과

  • 제안된 모니터는 신뢰성과 완전성을 확보하여 거짓 경고 없이 사양된 동작에서의 모든 이탈을 탐지한다.
  • 적절한 추상화 수준에서 모듈러 사양을 사용함으로써 효율적으로 작동하여 성능 저하를 방지한다.
  • 공식 사양 언어는 알려진 및 잠재적 공격 계획의 모델링을 가능하게 하여 공격 특성 분석과 효과적인 방어를 지원한다.
  • 실행 언어에 관계없이 모든 구형 및 신규 시스템에 적용 가능하다.
  • 가정/보장 계약 기반의 증명 전략은 자동 모니터 생성 및 반자동 검증의 기초를 제공한다.
  • 저자들은 Coq에서 증명을 기계화하여 재사용 가능하고 공식적으로 검증된 런타임 모니터용 일반 라이브러리를 구축할 계획이다.

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

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

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

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