2016년 3월 29일 화요일

아이폰 잠금해제 성공 = 애플 보안 구멍?

FBI가 아이폰 잠금해제를 성공했다고 한다.

FBI는 잠금해제하기 위한 방법을 공개하지 않겠다고 했지만, 전문가들이 추측하기로는 아마도 낸드 미러링 (NAND Mirroring) 기술일 것이라고 한다.


낸드미러링 그리고 브루트포스

먼저, 낸드 미러링을 이해하기 위해서는 브루트 포스 (brute force; 무차별 대입 공격) 의 이해와 이 기술의 한계점에 대해 알아야한다.

브루트 포스는 단순무식한 방법으로 모든 가능한 암호를 모두 입력해보는 것이다. 이 방법을 막는 것은 어렵지 않다. 각종 비밀번호를 이 방법으로 시도해본 사람들은 알 것이다. 연속으로 몇 번 틀리면 계좌가 잠기거나, 폰이 잠기거나, 경고 알람이 크게 울리거나, 심하게는 내용물이 삭제되거나...

아이폰의 경우는 연속적으로 비밀번호를 틀리게 되면, 폰이 비활성화되어 사용자가 비밀번호를 입력할 수가 없다. 게다가 이 비활성화 시간이 공격자에게 치명적인 이유는 비밀번호를 연달아 틀릴수록 점점 늘어난다는 것이다.
결국 브루트포스 방법으로 아이폰을 열기 위해서는 비활성화 시간을 포함하여 어마어마한 시간이 걸리는 것이다.

연속으로 비밀번호를 틀리면 그림처럼 비활성화 된다.


자, 이제 다시 낸드 미러링으로 돌아와보자.

낸드는 NAND 메모리를 의미한다. 미러링은 복사라고 생각하면 된다.
아이폰의 기판을 분리하여 안의 메모리 (저장내역)을 그대로 새로운 기판에 복사 (미러링) 한다. 그렇다면 이 짓거리를 왜 하는 것일까.

앞서 설명하였다시피 브루트포스의 치명적인 약점인 잠김시간 (비활성화 시간) 때문이다.

새롭게 미러링된 기판에 암호를 대입하다가 틀려서 잠겨버릴때, 그 즉시 원래 기판의 메모리를 덮어씌운다면 비활성화 시간의 낭비 없이 공격을 지속할 수 있게 된 것이다.
0000~9999 까지 경우의 수는 1회 시도 당 (입력 5초 + 확인 1초 + 메모리 덮어씌우는 4초) 씩만 잡아도 28시간이 채 걸리지 않는다.


낸드미러링은 막을 수 없는가?

iPhone 5s 부터는 지문정보 등을 갖고 있는 Secure Enclave (암호화된 하드웨어) 를 갖고 있는데, 이 경우는 낸드미러링을 시도할 수 없다고 한다.

SSD에 주로 사용되는 낸드 메모리


그렇다면 이런 브루트 포스 방식이 과연 애플의 보안에 흠집을 냈다고 볼 수 있을까?
(낸드 미러링 + 브루트 포스 방식으로 잠금을 해제했다고 가정할 때)

낸드 미러링은 브루트포스 방법을 가능하게끔 도와주는 역할을 수행했을 뿐, 암호화 알고리즘을 파악한 것과는 아무 상관이 없다.
 마침 테러범의 폰이 Secure enclave가 없는 iPhone 5c 였고, 비밀번호가 숫자 4자리여서 시도할 수 있는 유일한 방법이었을 것이리라 예상된다.

 애플의 보안에 구멍이 뚫렸다고 표현하는 것은 너무 섣부른 판단인 것 같고, 이 사건의 진정한 시사점이 있다면, 개인정보를 지키고 싶다면 비밀번호는 되도록 길게 길게 만들자는 것이다.



댓글 없음:

댓글 쓰기