경찰, iPhone 자동 재부팅을 우회해 잠긴 기기에 접근할 수 있어
요약
본문은 경찰의 디지털 포렌식 접근 가능성을 우회하는 방법과 개인 정보 보호를 위한 보안 수칙을 다룹니다. 특히 기기 자동 재부팅 기능의 취약점을 지적하며, 물리적으로 전원을 끄거나 암호화 볼륨 사용 등 예방 조치를 강조합니다.
핵심 포인트
- 자동 재부팅(AFU) 상태는 포렌식 침입에 취약하므로, 의심 상황에서는 기기를 직접 재부팅하거나 전원을 끄는 것이 안전하다.
- 민감한 데이터는 Cryptomator와 같은 암호화 볼륨에 보관하고, 접근 장벽을 높이는 것이 중요하며 법적 강제성도 고려해야 한다.
- 최고 수준의 보안은 특정 OS나 솔루션에 의존하기보다, 전용 기기 사용 및 물리적 분리 등 다층적인 예방 조치가 필요하다.
자동 재부팅은 일정 시간 동안 잠금을 해제하지 않으면 기기를 다시 시작하는 기능임. Cellebrite 같은 디지털 포렌식 업체는 재부팅 후 한 번이라도 잠금이 해제된 AFU 상태의 기기에 훨씬 더 자주 침입할 수 있음. 이 기능은 GrapheneOS가 처음 도입했고, 이후 iOS와 기본 운영체제를 사용하는 Pixel에도 추가됨.
GrapheneOS는 기본 18시간이며 10분~72시간으로 조정할 수 있지만, iPhone과 기본 Pixel은 72시간으로 고정됨. GrapheneOS에서는 개인정보 보호와 편의성을 위해 기본 잠금 해제에 긴 무작위 암호문구를 쓰고, 보조 수단으로 지문과 2차 인증 PIN을 함께 사용하는 것이 좋음. 재부팅할 때마다 암호문구를 입력하게 됨.
휴대전화를 압수할 사람과 마주한다면 AFU 상태의 보호 기능에 의존하지 않도록 직접 재부팅하거나 전원을 끄는 편이 좋음. https://strongphrase.net은 기억하기 쉬운 암호문구를 만들어 줌.
이렇게 중요한 용도의 비밀번호는 웹사이트에서 생성하면 안 됨. Diceware 단어 목록을 인쇄하고 직접 주사위를 굴려 만들 수 있음.
왜 GrapheneOS만 특정하는지? 긴 무작위 암호문구는 어떤 운영체제에서도 좋은 선택임.
지난번 GrapheneOS가 나왔을 때도 재부팅 기능을 믿었지만, 당연히 말이 안 됨. 기기를 빼앗길 위험이 높은 곳에서는 전원을 꺼야 함. 항공기가 지상에 있으면 누군가 몰래 탑승할 수 있으니 착륙할 때도 해당함.
비상용 백업으로 가장 민감한 개인 문서를 모두 휴대전화에 보관하되, 별도 비밀번호가 필요한 Cryptomator 암호화 볼륨에 넣어 둠. 이런 취약점 악용 소식이 끊이지 않는 만큼 필요한 예방 조치라고 봄.
이 암호화가 해당 파일에 대한 기술적·법적 접근에 상당한 장벽을 추가한다고 이해하고 있음. 아니라면 알려주기 바람. 잘못 알고 있다면 집과 평생 모은 돈을 잃을 수도 있음.
수사기관이 요구할 때 접근을 허용하지 않으면 바로 감옥에 가게 됨. 그런 상황에서는 암호화가 소용없음. 암호화 볼륨이 보이면 접근을 허용해야 함.
적어도 종단간 암호화 클라우드에 백업을 두는 것이 현명해 보임. 법적으로 강제되더라도 접근을 허용하지 않을 여지가 생길 수 있음. 미국에서는 암호화가 법적 접근의 장벽이 되는 것으로 보임. https://news.ycombinator.com/item?id=49922513.
폭력으로 비밀번호를 강요하는 상황까지 위협 모델에 포함한다면, 로그인 정보를 외우고 브라우저에서 Tor만을 통해 클라우드 저장소 계정을 이용하는 방법도 있음. 다만 웹 암호화의 위험 때문에 가능하면 앱을 내려받는 편이 좋음. 이렇게 하면 기기를 잃어도 다른 컴퓨터에서 접근할 수 있고, 휴대전화에서는 흔적을 지울 수 있음. https://www.privacyguides.org/en/cloud/
암호화 여부와 상관없이 평생 모은 재산을 늘 들고 다니는 것은 무모해 보임. 꼭 휴대전화에 보관하고 싶다면 최소한 두 번째 기기를 마련해 안전한 곳에 두는 편이 좋음.
해외로 이동하면 잠금을 해제해야 함. 미국 수정헌법 제4조의 보호는 기대할 수 없음.
상당한 위험을 감수하는 것으로 보임. 보안 기능은 허술하게 구현되는 일이 많아 효과를 장담할 수 없음. 보안을 중시하고 최고 수준의 인력과 막대한 자원을 가진 Apple도 본문처럼 실패하는데, Cryptomator가 더 잘할 수 있을지 의문임. 보안 전문가들이 가장 신뢰하는 솔루션을 찾아야 함.
여러 용도로 쓰는 휴대전화는 앱과 기능마다 보안 허점이 생길 수 있고, 기기를 백업할 때 데이터가 어떻게 처리되는지도 따져야 함. 데이터는 인터넷에 연결하지 않는 전용 기기에 보관하는 편이 좋음. 인터넷 연결은 잠재적으로 전 세계에 접근 가능성을 열어 줌.
저장 기기를 항상 들고 다니면 분실 같은 실수를 하기 쉬우니 어딘가에 숨겨 두는 편이 좋음. 법적 접근에 대해서는 변호사에게 물어봐야 함.
비활성 상태 재부팅을 “경찰이 포렌식 기술로 침입해 민감한 데이터를 추출하기 어렵게 만드는 기능”이라고 묘사하는 것은 이상함. 경찰뿐 아니라 누구든 침입하기 어렵게 하는 기능임.
이상한 표현은 아님. 최신 업데이트가 적용된 휴대전화에 침입하는 장비는 아무나 살 수 없고, 사실상 수사기관 정도만 접근할 수 있거나 접근하려 함. 따라서 경찰의 침입을 어렵게 한다는 문장은 사실임.
Apple의 재부팅 타이머 구현에도 결함이 있음. 내가 GrapheneOS에 제안한 공장 초기화 타이머가 왜 불완전한지 설명해 준 답변과 본질적으로 비슷해 보임.
GrapheneOS에 숨겨진 프로필 같은 기능을 요구하는 사람들에게도 시사하는 바가 있음. 결함 있는 기능은 잘못된 안전감을 주므로 구현해서는 안 됨. 기술적으로 제대로 구현할 수 있더라도, 데이터의 존재를 부인할 수 있게 하는 기능 자체가 좋은지는 별개임.
당시 나는 “재부팅 타이머처럼 일정 시간 잠금을 해제하지 않으면 데이터를 지우는 강압 대응 타이머가 증거 인멸이나 존재 부인에 도움이 될까?”라고 물었음.
HybridStatAnim8의 답은 하드웨어가 지원하지 않아 실현하기 어렵다는 것이었음. 운영체제는 꺼 버리거나 계속 취약점을 악용할 수 있으므로 운영체제 수준에서 구현할 수 없고, GrapheneOS가 고려하려면 보안 요소(secure element)의 뒷받침이 필요할 가능성이 큼.
반면 강압 대응 PIN은 공격자가 기기를 확보해 우회하기 전에 사용자가 직접 입력하는 상황을 전제로 하므로 운영체제 수준 구현이 허용됨. 공격자에게 넘어간 뒤에는 사실상 도박이므로, 위협 모델에 이를 반영하고 그 상황까지 가지 않도록 해야 함. https://news.ycombinator.com/item?id=49040342
Apple이 자체 모뎀을 넣은 해외판과 달리 미국판 iPhone 대부분에 여전히 넣기로 한 Qualcomm 칩에 백도어가 있더라도 놀랍지 않을 것 같음.
본론과는 별개로, 기억이 맞다면 iOS는 기본 설정에서 잠긴 기기를 가진 누구나 비행기 모드를 켤 수 있음. 도난만 생각해도 우려되는 부분임. 다만 Find My 네트워크 때문에 도둑은 어차피 패러데이 백을 써야 할 듯함.
우리는 침입을 어렵게 하려고 Apple에 돈을 내고, 국가는 그 장벽을 없애려고 Graykey에 돈을 냄. 이번 분기 군비 경쟁의 승자가 누구냐에 따라 우리 권리의 실질적 가치가 결정됨.
그것도 휴대전화를 돌려받을 수 있다는 전제임. 내가 알기로 경찰은 반환 법원 명령 같은 것이 없으면 잠금을 풀 수 있을 때까지 무기한 보관할 수도 있음. 명령을 받아도 누가 집행해 줄지 의문임.
Apple이 단조 시계(monotonic clock) 를 써야 할 곳에 일반적인 날짜·시각 기준 시계(wall clock)를 쓰는 고전적인 실수를 했는지 궁금함.
비슷한 문제를 직접 겪어 본 입장에서, 올바른 해법은 엄격한 타입 구분으로 시점과 시간 간격, 서로 다른 시계 종류를 구별하는 것임. 단순 정수를 쓰면 안 되고, Go 표준 라이브러리처럼 어정쩡하게 처리해서도 안 됨. 현대 C++ 라이브러리는 꽤 괜찮지만, 모든 기능을 쓰려면 아주 최신 표준이 필요함.
가짜 NTP 서버 같은 것을 제공하는 방식일까? 자동 재부팅 기능을 Secure Enclave로 옮기고, 조작할 수 없는 방식으로 하드웨어 RTC에만 의존하게 만들 수 있지 않을까?
이 질문을 더 깊이 분석한 글이 있음. https://naehrdine.blogspot.com/2024/11/reverse-engineering-i....
요약하면 SEP에 내장됐을 가능성이 높고 NTP는 쓰지 않음. 기기가 긴급전화 발신 중이거나 충돌 감지로 긴급 구조기관에 연락 중이라고 인식하게 만들면 재부팅하지 않는 것은 아닐지 궁금함. 긴급전화를 절대 끊지 않도록 코드를 작성했을 가능성은 상상할 수 있음.
다만 iPhone을 소유하고 있지 않아 그런 동작 자체가 없을 수도 있음. “휴대전화 보호보다 무엇이 더 중요한가”라는 Apple의 법적 책임 관점에서 추측한 것뿐임.
그렇다면 iPhone을 훔칠 가치가 더 높아진다는 뜻일까?
잠깐은 그럴 수 있음. Apple이 취약점 악용 방식을 파악하면 패치할 것으로 예상함. 이전 iOS 버전에도 수정 사항을 적용할 수 있음.
AI 자동 생성 콘텐츠
본 콘텐츠는 RSS: GeekNews (한국어)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기