Skip to main content
QUICK REVIEW

[논문 리뷰] Security Through Amnesia: A Software-Based Solution to the Cold Boot Attack on Disk Encryption

Patrick Simmons|arXiv (Cornell University)|2011. 04. 26.
Cryptographic Implementations and Security참고 문헌 9인용 수 7
한 줄 요약

이 논문은 디스크 암호화 시스템에서 냉각 부팅 공격에 취약한 점을 제거하기 위해 암호화 키를 메모리가 아닌 CPU 레지스터에만 저장하는 소프트웨어 기반 디스크 암호화 시스템인 Loop-Amnesia를 제시한다. 레지스터 기반 키 저장과 RAM 누출을 방지하는 수정된 AES 구현을 통해 저자들은 냉각 부팅 공격에 완전히 면역이 되었으며, 성능 저하가 약 2배에 그쳐 일반 목적용 시스템에 대한 첫 번째 실용적이고 오픈소스 솔루션을 제공한다.

ABSTRACT

Disk encryption has become an important security measure for a multitude of clients, including governments, corporations, activists, security-conscious professionals, and privacy-conscious individuals. Unfortunately, recent research has discovered an effective side channel attack against any disk mounted by a running machine\cite{princetonattack}. This attack, known as the cold boot attack, is effective against any mounted volume using state-of-the-art disk encryption, is relatively simple to perform for an attacker with even rudimentary technical knowledge and training, and is applicable to exactly the scenario against which disk encryption is primarily supposed to defend: an adversary with physical access. To our knowledge, no effective software-based countermeasure to this attack supporting multiple encryption keys has yet been articulated in the literature. Moreover, since no proposed solution has been implemented in publicly available software, all general-purpose machines using disk encryption remain vulnerable. We present Loop-Amnesia, a kernel-based disk encryption mechanism implementing a novel technique to eliminate vulnerability to the cold boot attack. We offer theoretical justification of Loop-Amnesia's invulnerability to the attack, verify that our implementation is not vulnerable in practice, and present measurements showing our impact on I/O accesses to the encrypted disk is limited to a slowdown of approximately 2x. Loop-Amnesia is written for x86-64, but our technique is applicable to other register-based architectures. We base our work on loop-AES, a state-of-the-art open source disk encryption package for Linux.

연구 동기 및 목표

  • 전원 장애 발생 후에도 RAM에 그대로 남아 있는 암호화 키로 인해 디스크 암호화 시스템이 냉각 부팅 공격에 취약한 문제를 해결하기 위해.
  • 특수 하드웨어가 필요 없이 냉각 부팅 공격를 통한 키 복구를 방지할 수 있는 소프트웨어 기반 대응 조치를 설계하고 구현하기 위해.
  • 다중 암호화 키를 지원하고, 적대자가 물리적 접근을 해도 여전히 안전한 솔루션을 확보하기 위해.
  • 실제 워크로드 환경에서 측정 가능한 성능 영향을 동반하면서도 실용적이고 효율적인 접근임을 입증하기 위해.
  • 리눅스와 같은 메인스트림 운영 체제에 통합될 수 있는 프로토타입 구현을 제공하기 위해.

제안 방법

  • 냉각 부팅 공격에 영향을 받지 않는 CPU 레지스터에 마스터 암호화 키를 완전히 저장함으로써, 레지스터 기반 키 저장의 이점을 활용한다.
  • 중간 값과 라운드 키를 포함한 모든 키 관련 데이터가 RAM에 저장되지 않도록 하는 수정된 AES 암호화 루틴을 설계한다.
  • 루프-AES 위에 기반한 커널 모듈을 사용하여 레지스터 기반 키 관리를 생산성 수준의 디스크 암호화 시스템에 통합한다.
  • 여러 암호화 키를 메모리에 노출시키지 않고도 안전하게 관리하고 액세스할 수 있도록 허용하는 키 마스킹 기법을 구현한다.
  • 컴파일러가 실행 중에 민감한 키 값을 RAM에 스토리지로 이전하는 것을 방지하기 위해 컴파일러 수준의 제어를 적용한다.
  • 정확성 테스트와 냉각 부팅 공격에 대한 저항성에 대한 형식적 정당성을 통해 구현을 검증한다.

실험 결과

연구 질문

  • RQ1냉각 부팅 공격을 방지하기 위해 암호화 키를 RAM 대신 CPU 레지스터에 안전하게 저장할 수 있는가?
  • RQ2성능에 손상이 가지 않는 한도에서 레지스터 기반 키 저장만을 사용해 완전한 디스크 암호화 시스템을 구현하는 것이 가능한가?
  • RQ3소프트웨어 전용 솔루션으로 전원 장애 후 RAM 덤프에서 키 복구를 효과적으로 방지할 수 있는가?
  • RQ4기존의 RAM 기반 디스크 암호화 시스템 대비 이 시스템의 성능 오버헤드는 어느 정도인가?
  • RQ5Forenscope와 같은 라이브 포렌식 도구를 이용한 공격 유형과 같은 관련 공격에도 이 접근 방식이 확장 가능할 수 있는가?

주요 결과

  • Loop-Amnesia는 메인 메모리에 어떤 암호화 키 자료도 저장하지 않도록 보장함으로써 냉각 부팅 공격을 성공적으로 방지한다.
  • 표준 디스크 암호화 시스템 대비 I/O 작업에서 약 2배의 성능 저하가 발생한다.
  • 시스템은 냉각 부팅 공격에 면역임을 형식적으로 정당화하였으며, 운영 중 어떤 시점에서도 RAM에 키 자료가 존재하지 않는다.
  • 기존의 x86-64 아키텍처와 호환되며, 다른 레지스터 기반 시스템으로도 확장 가능하다.
  • 직접적인 냉각 부팅 공격뿐 아니라 RAM 지속성 특성을 악용하는 변종 공격에도 효과적이다.
  • 현재 프로그래밍 언어에는 민감한 값이 레지스터에 유지되어야 한다는 것을 개발자가 강제로 지정할 수 없는 한계가 드러났다.

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

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

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

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