Skip to main content
QUICK REVIEW

[논문 리뷰] A Permission-Dependent Type System for Secure Information Flow Analysis

Hongxu Chen, Alwen Tiu|arXiv (Cornell University)|2017. 09. 27.
Advanced Malware Detection Techniques참고 문헌 7인용 수 3
한 줄 요약

이 논문은 래티스 기반 보안 타이핑 프레임워크에 안드로이드의 허가 모델을 통합하여 안드로이드 애플리케이션에서 안전한 정보 흐름을 강제하기 위한 허가 의존 타입 체계를 제안한다. 런타임 허가 검사에 의존하는 정책을 정확하게 강제하기 위해 보안 타입에 대한 병합 연산자를 사용하는 새로운 조건부 타이핑 규칙을 도입하였으며, 비상호작용성(noninterference)을 통한 타당성 증명을 수행한다. 이 시스템은 제약 조건 해결을 통한 타입 추론을 지원하여 명령형 코드에서 정보 泄露를 정적 탐지할 수 있다.

ABSTRACT

We introduce a novel type system for enforcing secure information flow in an imperative language. Our work is motivated by the problem of statically checking potential information leakage in Android applications. To this end, we design a lightweight type system featuring Android permission model, where the permissions are statically assigned to applications and are used to enforce access control in the applications. We take inspiration from a type system by Banerjee and Naumann (BN) to allow security types to be dependent on the permissions of the applications. A novel feature of our type system is a typing rule for conditional branching induced by permission testing, which introduces a merging operator on security types, allowing more precise security policies to be enforced. The soundness of our type system is proved with respect to a notion of noninterference. In addition, a type inference algorithm is presented for the underlying security type system, by reducing the inference problem to a constraint solving problem in the lattice of security types.

연구 동기 및 목표

  • 런타임 허가 검사에 의해 보호되는 조건부 논리로 인한 정보 흐름 泄露 문제를 해결하기 위해.
  • 안드로이드의 허가 모델을 보안 타이핑과 통합하여 명시적 및 암묵적 정보 흐름을 모두 방지할 수 있는 경량적이고 정적 분석이 가능한 타입 체계를 설계하기 위해.
  • 특정 허가의 존재 또는 부재에 따라 보안 타입이 달라지게 하여 더 정밀한 보안 정책을 지원하기 위해.
  • 제약 조건 해결을 통한 타입 추론을 지원하여 실세계 안드로이드 앱 분석에 실용적인 시스템을 만들기 위해.
  • 비상호작용성에 기반한 형식적 타당성 증명을 제공하여, 타입 체계에 부합하는 프로그램이 민감한 정보를 泄露하지 않음을 보장하기 위해.

제안 방법

  • 타이핑 체계는 허가를 가드로 사용하는 래티스 기반 보안 타이핑 모델을 확장하여, 활성화된 허가에 따라 보안 타입이 변화할 수 있도록 한다.
  • 조건문을 위한 새로운 타이핑 규칙은 허가 테스트를 통합하며, 서로 다른 민감도 수준을 가진 브랜치를 병합하기 위해 보안 타입에 대한 병합 연산자를 사용한다.
  • 보안 타입은 허가 집합으로 파arameterized되며, 함수가 호출자의 허가 환경에 따라 여러 가지 타입을 가질 수 있도록 한다.
  • 비상호작용성은 안전성 성질로 모델링되어, 저보안 출력이 고보안 입력에 의존하는 방식으로 정보가 泄露되지 않음을 보장한다.
  • 타입 추론은 보안 타입의 래티스 위에서 제약 조건 해결 문제로 환원되어, 수동 타입 주석 없이도 자동화된 분석이 가능해진다.
  • 확장 가능하도록 설계되었으며, 전역 변수, 힙, 객체 지향 기능 지원을 위한 지속적인 연구가 진행 중이다.

실험 결과

연구 질문

  • RQ1런타임 허가 검사에 의해 보호되는 민감한 데이터 접근이 있는 안드로이드 애플리케이션에서 정보 흐름을 강제하기 위한 타입 체계는 어떻게 설계할 수 있는가?
  • RQ2기존의 조건부 문장에서 균일한 보안 수준을 가정하는 비상호작용성 타입 체계에 비해, 허가 의존 타입 체계는 더 정밀한 보안 정책을 지원할 수 있는가?
  • RQ3허가 검사를 포함한 조건부 분기 구조를 정적으로 분석하여 암묵적 정보 흐름을 방지하면서도 보안 수준을 과도하게 근사하지 않도록 할 수 있는가?
  • RQ4이러한 체계에 대해 보안 타입의 래티스 위에서 제약 조건 해결 문제로 환원되는 타입 추론 알고리즘을 설계할 수 있는가?
  • RQ5비상호작용성의 타당성을 유지하면서도 전역 변수와 동적 허가 부여와 같은 복잡한 언어 기능을 지원할 수 있는가?

주요 결과

  • 제안된 타입 체계는 호출 애플리케이션의 허가 환경에 따라 보안 타입이 달라지게 하여 비상호작용성을 성공적으로 강제한다.
  • 보안 타입에 대한 새로운 병합 연산자는 민감도 수준이 다른 브랜치를 가진 조건문에 대해 더 정밀한 타이핑을 가능하게 하여, 반환 타입의 과도한 근사화를 방지한다.
  • 런타임 변경이나 앱 스토어 협력 없이도 안드로이드 앱의 정보 흐름을 정적 분석할 수 있다.
  • 타입 문제를 보안 타입의 래티스 위에서 제약 조건 해결 문제로 환원함으로써 타입 추론 알고리즘을 개발하여 자동화를 실현하였다.
  • 비상호작용성에 대해 타당성이 보장되어, 타입 체계에 부합하는 프로그램에서는 어떤 정보 泄露도 발생하지 않는다.
  • 이론적 확장성이 있으며, 전역 변수 및 기타 언어 기능이 보안 보장을 유지하면서 통합 가능하다는 점이 지속적인 연구를 통해 입증되고 있다.

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

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

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

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