Skip to main content
QUICK REVIEW

[논문 리뷰] OAT: Attesting Operation Integrity of Embedded Devices

Zhichuang Sun, Bo Feng|arXiv (Cornell University)|2018. 02. 09.
Security and Verification in Computing참고 문헌 40인용 수 10
한 줄 요약

이 논문은 ARM 기반 임베디드 장치에서 운영 실행 무결성(OEI)에 대한 원격 확인을 위한 OAT 시스템을 제안한다. 이는 제어 플로우 탈취와 데이터 전용 공격을 모두 탐지할 수 있도록 한다. OAT은 경량 제어 플로우 측정과 추상 실행을 활용하여 런타임 오버헤드가 2.7%에 불과한 효율적이고 검증 가능한 무결성 검사를 실현하며, IoT 백엔드가 실시간으로 장치 운영의 신뢰성을 검증할 수 있도록 한다.

ABSTRACT

Due to the wide adoption of IoT/CPS systems, embedded devices(IoT frontends) become increasingly connected and mission-critical, which in turn has attracted advanced attacks (e.g., control-flow hijacks and data-only attacks). Unfortunately, IoT backends are unable to detect if such attacks have happened while receiving data, service requests, or operation status from IoT devices. As a result, currently, IoT backends are forced to blindly trust the IoT devices that they interact with. To fill this void, we first formulate a new security property for embedded devices, called "Operation Execution Integrity" or OEI. We then design and build a system, OAT, that enables remote OEI attestation for ARM-based bare-metal embedded devices. Our formulation of OEI captures the integrity of both control flow and critical data involved in an operation execution. Therefore, satisfying OEI entails that an operation execution is free of unexpected control and data manipulations, which existing attestation methods cannot check. Our design of OAT strikes a balance between prover's constraints (embedded devices' limited computing power and storage) and verifier's requirements(complete verifiability and forensic assistance). OAT uses a new control-flow measurement scheme, which enables light-weight and space-efficient collection of measurements (97% space reduction from the trace-based approach). OAT performs the remote control-flow verification through abstract execution, which is fast and deterministic. OAT also features lightweight integrity checking for critical data (74% fewer instrumentation needed than previous work). Our security analysis shows that OAT allows remote verifiers or IoT backends to detect both control-flow hijacks and data-only attacks that affect the execution of operations on IoT devices. In our evaluation using real embedded programs, OAT incurs a runtime overhead of 2.7%.

연구 동기 및 목표

  • 현재 백엔드가 런타임 무결성 검사를 수행하지 못함으로써 신뢰할 수 없는 원격 장치를 맹목적으로 신뢰하는 등 IoT 장치에 대한 원격 신뢰 검증의 핵심적 격차를 해소하기 위해.
  • 운영 실행 중 제어 플로우와 중요한 데이터 무결성을 모두 포괄하는 새로운 보안 성질인 운영 실행 무결성(OEI)을 정의하기 위해.
  • 자원 제약이 있는 임베디드 장치에서 보안을 희생시키지 않은 채 경량적이고 효율적이며 검증 가능한 원격 확인을 가능하게 하는 시스템을 설계하기 위해.
  • 기존의 바이너리 확인 결과와 달리, 사고 발생 후 공격 실행 트레이스 재구성 기능을 제공함으로써 정밀 분석을 지원하기 위해.

제안 방법

  • 운영의 제어 플로우 그래프 준수 및 def-use 체인을 통해 중요한 변수 값의 유지 보장을 요구하는 운영 실행 무결성(OEI)을 보안 성질로 체계화한다.
  • 트레이스 기반 방법 대비 측정 저장소를 97% 감소시키는 추상 실행 기반의 새로운 제어 플로우 측정 기법을 설계한다.
  • 기존 기법 대비 74%의 인스트루멘테이션 오버헤드 감소를 달성하는 중요한 데이터 무결성 검사용 경량 인스트루멘테이션 기법을 구현한다.
  • 맞춤형 컴파일러, 장치 측의 런타임 측정 엔진(증명자), 백엔드 측의 검증 엔진(검증자)을 포함하는 전체 스택 시스템인 OAT을 구축한다.
  • 위조 불가능한 측정치와 결정론적 추상 실행을 활용해 완전한 검증 가능성을 확보하고 사후 분석을 위한 포스트모템 포렌식 분석을 지원한다.
  • 실제 임베디드 프로그램에 시스템을 통합하고 ARM 기반 플랫폼에서 성능을 평가한다.

실험 결과

연구 질문

  • RQ1기존의 확인 메커니즘이 탐지하지 못하는 임베디드 장치에서 원격 검증자가 제어 플로우 탈취 및 데이터 전용 공격을 탐지할 수 있는가?
  • RQ2과도한 런타임 또는 저장소 오버헤드 없이 자원 제약이 있는 임베디드 장치에서 운영 무결성의 완전한 검증 가능성을 달성하는 것이 가능한가?
  • RQ3최소한의 인스트루멘테이션과 측정 오버헤드로 제어 플로우 및 데이터 무결성 검증을 동시에 제공할 수 있는가?
  • RQ4시스템은 공격 트레이스 재구성을 지원하여 사고 후 분석을 가능하게 하는가?

주요 결과

  • OAT은 추상 실행을 활용함으로써 트레이스 기반 제어 플로우 측정 대비 측정 저장소를 97% 감소시켰다.
  • 실제 임베디드 프로그램에서 OAT은 런타임 오버헤드가 단 2.7%에 불과하여 ARM 기반 장치에서 매우 높은 효율성을 입증했다.
  • 기존 접근 방식 대비 데이터 무결성 검사용 인스트루멘테이션 요구 사항을 74% 감소시켜 배포 용이성을 향상시켰다.
  • 시스템은 제어 플로우 및 데이터 무결성의 원격 검증을 가능하게 하여 기존 방법이 놓치는 공격, 예를 들어 데이터 전용 공격 및 ROP 악용을 탐지할 수 있다.
  • OAT는 포스트모템 공격 트레이스 재구성을 지원하여 검증자가 탐지 후 공격 행동을 분석할 수 있도록 하며, 이는 기존 바이너리 확인 방식이 지원하지 않는다.
  • 보안 분석을 통해 OAT가 제어 플로우 탈취와 데이터 전용 공격을 모두 탐지할 수 있음을 확인하였으며, 이로 인해 IoT 백엔드는 오직 진짜 운영 실행만을 수락하게 된다.

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

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

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

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