Apple Silicon에서 lid sensor가 감지된 뒤 실제 sleep까지 시간이 얼마나 되는지 궁금함. 내가 M2용 메뉴바 앱을 몇 개 배포해봤는데 NSWorkspaceWillSleepNotification을 들어도 체감상 200ms 정도밖에 없어서, 그 짧은 창 안에 Secure Enclave 왕복까지 필요하면 사실상 레이스 컨디션처럼 보임
아이디어와 구현이 아주 좋다고 느낌. 굳이 앱을 설치하지 않아도 sudo bioutil -ws -u 0; sleep 1; sudo bioutil -ws -u 1 이 원라이너로 같은 효과를 낼 수 있음. 거기에 화면 잠금까지 붙인 Shortcuts 링크도 만들어뒀고, 전역 단축키로 걸어두면 꽤 실용적임
이걸 Crank에 연결해서 lid angle 30° 이하 트리거로 걸면, 뚜껑을 살짝 내리는 동작만으로 자동 실행되게 만들 수 있음
Touch ID에 여러 손가락을 등록하고 손가락별로 동작을 다르게 스크립트할 수 있으면 좋겠다고 생각함. 예를 들어 중지는 일반 잠금 해제, 검지는 Touch ID 비활성화 후 비밀번호 강제 입력 같은 식이면 꽤 유용해 보임
손가락별로 아예 다른 계정에 매핑하는 건 가능함. 나는 예전에 그걸 이용해서 계정 간 fast user switch를 했던 기억이 있음
iOS 쪽에서는 측면 버튼과 볼륨 버튼을 길게 눌러 전원 슬라이더를 띄운 다음 취소하면, 다음 잠금 해제에서 암호 입력이 강제됨. 측면 버튼 5번으로 Emergency SOS를 띄워도 같은 효과가 있음. 오래전부터 있던 기능인데 의외로 잘 알려지지 않았고, Mac에도 비슷한 흐름이 생겨서 반가움
내 기준에는 전원 버튼을 빠르게 5번 이상 누르는 쪽이 더 쉬움
발상이 멋지다고 느낌. 예전부터 강제 잠금 해제의 적법성 논쟁이 있었고, 내 기억엔 지문은 강제로 요구될 수 있지만 비밀번호 입력 강제는 더 어렵다고 알려져 있었음. 그래서 이 도구도 주된 목적이 그런 상황 대응인지, 아니면 다른 목표도 있는지 궁금했음
나는 Washington Post 기자 Hannah Natanson 사례를 보고 이걸 만들었음. 그 기자가 지문으로 컴퓨터 잠금 해제를 강요받았고, 그 결과 데스크톱 Signal까지 열려서 취재원과 대화가 노출됐음. 관련 기사는 Yahoo 기사에서 볼 수 있고, 법적 배경과 판례는 앱 소개 페이지에 더 정리해뒀음
이게 미국만의 문제인지 궁금함. 영국은 기억상, 합리적으로 알고 있을 법한 비밀번호는 제출을 강제할 수 있는 쪽에 더 가까웠던 것 같음
또 다른 문제는 기기 표면에 지문 흔적이 남는다는 점임. 선명한 지문 이미지를 만들 수 있으면 젤라틴 복제 같은 방식으로 많은 지문 센서를 속일 수 있었음. 예전에는 포토샵으로 정리한 뒤 OHP 필름에 레이저 프린트해서 몰드처럼 쓰는 기법도 자주 언급됐음
생체인식 대 비밀번호, 그리고 법적 상황에 대한 추가 설명은 paniclock 사이트에 더 있음
비밀번호 강제의 적법성이 불명확한 면은 있어도, 법원은 모욕죄(contest) 가 아니라 contempt를 통해 사실상 무기한 구금 압박으로 비밀번호 입력을 강제할 수 있다는 점도 같이 봐야 함
현실 사례로, 당국이 법적 강제나 이른바 rubber-hose cryptanalysis 없이도 컴퓨터 전체 접근을 원하면 어떻게 하는지 잘 보여주는 예가 있음. 대상이 로그인된 상태가 될 때까지 기다렸다가 근처에서 소동을 연출하고 열린 노트북을 그대로 낚아채는 방식이었음. DPR 체포 작전은 이 글에 정리돼 있음
이건 정말 좋다고 느낌. 보통은 생체인식이 비밀번호를 대체하면 안 된다는 보안 조언을 많이 보지만, 내 경우엔 공개된 장소에서 비밀번호를 칠 때 누군가에게 촬영되거나 엿보이는 위험이 더 크게 느껴짐. 그런 현실적인 상황까지 생각하면 이런 도구가 균형을 잘 맞춰줌
Apple 플랫폼에는 크게 두 가지 빈틈이 있다고 봄. 하나는 Touch ID와 생체인식에 대한 세밀한 설정 프로필이고, 다른 하나는 iCloud 백업의 버전 관리임. 사람마다 요구하는 보안 수준이 전혀 다르니 one-size-fits-all은 맞지 않음. 평균 사용자에게 생체인식은 shoulder surfing을 줄이고 보안을 높여주는 좋은 선택이지만, 어떤 사용자는 Apple Watch 같은 2차 요소를 붙이거나, 비밀번호 강제까지의 시간을 짧게 하거나, 아예 생체인식+비밀번호 동시 요구를 원할 수도 있음. 지금보다 훨씬 세밀한 선택지가 필요하다고 느낌
여기서 진짜 필요한 건 멀티팩터라고 봄. 예를 들면 지문과 기기별 PIN을 둘 다 요구하는 식임. 안타깝게도 기반 기술은 이미 있는데도 이런 기능을 제품에서 잘 제공하지 않음
Touch ID 버튼을 클릭했을 때 그 로그인 시도를 무효화하고 비밀번호를 요구하게 만들 수 있으면 좋겠다고 생각함. 평소엔 지문 로그인 편의성을 좋아하지만, 필요할 때 즉시 빠져나올 수 있는 출구 버튼 같은 감각이 있으면 더 좋겠음
맥에는 가속도계도 있으니, 뚜껑을 닫는 힘의 세기를 감지하거나 적당한 프록시 값을 추정할 수 있으면 정말 좋겠다고 생각함. 살짝 닫으면 아무 일도 없고, 좀 더 세게 닫으면 Touch ID 비활성화, 정말 다급하게 slam shut 하면 모든 생체인식 비활성화에 세션 상태 폐기, 가능하다면 RAM과 FileVault 키까지 날리는 식이면 이상적임
그건 거의 rage quitting machine 같음. 기업용 버전에서는 뚜껑을 전력으로 닫는 순간 현재 고용주에게 전문적인 사직서까지 자동 발송하면 완성일 것 같음
그런 마지막 단계가 합리적이라고 생각한다면 아마 고양이나 아이와 함께 살지 않는 사람일 가능성이 높다고 느낌
“민감한 상황에서 많은 나라의 수사기관이나 국경 요원은 비밀번호와 달리 생체인식 해제를 강제할 수 있음”이라는 설명은 이해하지만, 위협 모델에 국가급 행위자가 포함된다면 생체인식만 꺼서는 물리 메모리의 데이터를 막지 못할 수 있음. 그럴수록 디스크 암호화를 켜고, RAM에 평문 데이터가 남지 않도록 컴퓨터를 즉시 전원 종료나 최대절전시키는 패닉 버튼이 더 현명해 보임. 사이트에서는 종료가 시간이 걸리고 세션을 죽인다고 하지만, 최대절전 버튼이라면 속도는 비슷하면서 세션은 보존할 수 있음
적어도 Apple Silicon은 이런 종류의 공격이 훨씬 더 어렵긴 함. 완전히 불가능하다고는 못 해도 예전보다는 방어력이 높아 보임
다만 경찰은 국가를 위해 일할 뿐이지, 보통 우리가 말하는 state-level actor와는 결이 다르다고 봄
Hacker News 의견들
NSWorkspaceWillSleepNotification을 들어도 체감상 200ms 정도밖에 없어서, 그 짧은 창 안에 Secure Enclave 왕복까지 필요하면 사실상 레이스 컨디션처럼 보임sudo bioutil -ws -u 0; sleep 1; sudo bioutil -ws -u 1이 원라이너로 같은 효과를 낼 수 있음. 거기에 화면 잠금까지 붙인 Shortcuts 링크도 만들어뒀고, 전역 단축키로 걸어두면 꽤 실용적임