부채널 공격

위키백과, 우리 모두의 백과사전.

전력 분석을 통해 RSA 암호 해독을 시도하는 모습. 그래프는 CPU 전력의 변동을 나타내는데, 왼쪽 피크 부분은 곱셈 없는 알고리즘 단계이며, 오른쪽의 긴 피크 부분은 비트의 0, 1을 판독하는 곱셈 단계이다.

암호학에서 부채널 공격(side channel attack)은 알고리즘의 약점을 찾거나(암호 해독과는 다름) 무차별 공격을 하는 대신에 암호 체계의 물리적인 구현 과정의 정보를 기반으로 하는 공격 방법이다. 예를 들어, 소요 시간 정보, 소비 전력, 방출하는 전자기파, 심지어는 소리를 통해서 시스템 파괴를 위해 악용할 수 있는 추가 정보를 얻을 수 있다. 일부 부채널 공격은 암호가 구현되는 시스템의 내부 동작에 관한 기술적 지식이 필요하지만, 다른 부채널 공격은 전력 차이 분석 등과 같이 블랙박스 공격으로도 효과가 있다. 다양한 강력한 부채널 공격은 주로 파울 코허가 개척한 통계적 방법을 기반으로 한다.[1]

사회공학이나 고무호스 암호해독과 같이 정당한 접근권을 가진 사람을 기만하거나 속여 암호를 해독하는 시도는 일반적으로 부채널 공격의 범주에 넣지 않는다. 컴퓨터 시스템 자체에 대한 공격(주로 암호키평문이 같이 있는, 암호화를 수행하는 컴퓨터를 공격한다)에 대해서는 컴퓨터 보안 범주에 들어간다.

마이크로소프트 및 인디애나 주립 대학의 연구자들에 따르면, 웹 브라우저와 서버 사이에서도 암호화가 됨에도 불구하고(HTTPS 또는 와이파이 암호화), 웹 2.0 애플리케이션과 SaaS의 대두로 웹 상에서의 부채널 공격에 대한 우려를 제기하고 있다.[2]

분류[편집]

부채널 공격은 보통 다음과 같이 나뉜다.

  • 소요 시간 분석(Timing attack) — 다양한 계산을 하는 데 소요되는 시간을 측정하는 것을 기반으로 하는 공격이다.
  • 전력 모니터링 공격(Power analysis) — 연산 중에 하드웨어가 소비하고 있는 전력 변화를 측정하는 것을 기반으로 하는 공격이다.
  • 전자기파 공격(Electromagnetic attacks) — 하드웨어 외부로 방출하는 전자기파를 해독하여 평문 및 여러 정보를 얻어낼 수 있는 공격이다. 이러한 분석은 전력 분석과 같은 형태의 기법을 이용하여 암호화 키를 알아낼 수 있거나 TEMPEST(일명 반 에크 프리킹 공격 또는 방사선 공격이라 불림)과 같이 비암호화 공격에도 이용할 수 있다.
  • 음성 암호 해독(Acoustic cryptanalysis) — 연산 중에 하드웨어가 생성한 음향을 측정하여 이를 악용하는 공격이다(전력 분석과 비슷하다).
  • 차분 오류 분석(Differential fault analysis) — 계산 과정에 의도적으로 오류를 끼어넣어 암호를 발견하는 공격이다.
  • 잔존 데이터(Data remanence) — 삭제된 것으로 추정된 민감한 데이터를 읽는 공격이다.
  • 로우 해머 공격(Row hammer) — 인접한 메모리 영역에 엑세스하는 형태로 접근 금지된 메모리 영역을 수정하는 공격이다.

이 모든 경우의 기본 원리는 암호 체계가 작동하면서 생기는 물리적 효과를 사용하여 암호 키나 부분적인 상태 정보, 전체 또는 부분적인 평문 텍스트 등과 같이 시스템 상에 암호화되어 있는 정보를 알아낸다는 것이다. 때때로 부채널 공격으로 유출된 비밀키 물질의 열화를 cryptophthora(비밀키 열화)라는 용어를 쓰기도 한다.

예시[편집]

소요 시간 분석 공격에서는 하드웨어에서 암호화나 알고리즘을 수행하는 동안 CPU나 메모리의 데이터가 이동하는 시간을 측정한다. 단순히 암호화 작업을 하는 데 걸리는 시간을 측정하여 전체 비밀키가 무엇인지 알아낼 수도 있다. 이러한 공격은 소요 시간의 통계적 분석 과정을 거치며, 네트워크 전반을 통해 입증되었다.[3]

전력 분석 공격은 CPU 또는 암호화 회로와 같은 하드웨어의 전력 소비 변화를 관찰하면서 정보를 얻는 방식이다. 이 공격은 단순 전력 분석(SPA)와 차등 전력 분석(DPA)로 나뉜다.

더 보기[편집]

각주[편집]

  1. Kocher, Paul (1996년). “Timing attacks on implementations of Diffie-Hellman, RSA, DSS, and other systems” (PDF). 《Advances in Cryptology—CRYPTO’96》. Lecture Notes in Computer Science 1109: 104–113. doi:10.1007/3-540-68697-5_9. 2014년 4월 14일에 확인함. 
  2. Shuo Chen, Rui Wang, XiaoFeng Wang, and Kehuan Zhang (2010년 5월). “Side-Channel Leaks in Web Applications: a Reality Today, a Challenge Tomorrow” (PDF). IEEE Symposium on Security & Privacy 2010. 
  3. David Brumley, Dan Boneh (2003년). “Remote timing attacks are practical” (PDF). 

참고 문헌[편집]

서적
문서

외부 링크[편집]