TL;DR
- macOS Tahoe 26.4부터 파일 기반 로그인 키체인을 잠금 해제하려면 키체인 암호와 보호된 엔트로피 파일이 모두 필요함.
- 엔트로피 파일은 데이터 볼륨의 보호 디렉터리인
/var/db/SystemKeys에 저장되며, 볼륨별로 구분됨. - 키체인을 다른 Mac이나 부팅 볼륨으로 복사하려면 대상 데이터 볼륨에 해당 엔트로피 파일도 복사해야 하며, 이를 위해 시스템 무결성 보호(SIP)를 비활성화해야 함.
- Time Machine은 macOS 26.4부터 엔트로피 파일을 백업하며, 마이그레이션 지원은 마이그레이션 과정에서 필요한 파일을 함께 복사함.
- 서드파티 백업 소프트웨어는 보호 디렉터리와 엔트로피 파일의 백업·복원을 지원해야 하며, 파일이 없는 키체인은 잠금 해제가 불가능함.
26.4 이전
- 2009년 Mac OS X 10.6 Snow Leopard부터 macOS는 서로 다른 두 종류의 키체인을 지원함.
- 로그인 키체인 등 파일 기반 키체인은 이전 유형에서 파생된
SecKeychains로,~/Library/Keychains같은 경로의 단일 파일에 암호화된 데이터베이스로 저장됨. - 파일 기반
SecKeychains는 El Capitan에서 사용 중단(deprecated) 처리됐지만 모든 Mac에서 계속 사용되며, 로그인 암호를 입력하면 자동으로 잠금 해제되는 필수 로그인 키체인도 여기에 포함됨. 앱에서도 여전히 사용됨. - iPhone 출시와 함께 iOS는 보안성이 더 높은 데이터 보호 키체인(Data Protection keychain)을 도입했으며, Snow Leopard에서도 지원됨. 현재는 iCloud 키체인에 사용되며, iCloud와 공유되지 않을 때는 로컬 항목(Local Items)으로 표시됨.
- 마이그레이션 지원을 사용하면 적절한 백업에서 로그인 키체인을 가져올 수 있지만, 키체인이 단일 파일이므로 이를 복사하거나 복원한 뒤 키체인을 만든 Mac의 로그인 암호와 같은 암호로 잠금 해제하는 방식이 흔히 사용됨.
- 파일 기반 키체인의 주요 단점은 정보 탈취 악성코드에서 드러남. 로그인 키체인을 유출하면 암호를 빠르고 저렴하게 해독해 내부의 모든 비밀 정보에 접근할 수 있으며, 이는 Apple이 올해 초 키체인을 변경한 주요 이유일 가능성이 큼.
Tahoe의 추가 비밀
- macOS Tahoe 26.4는 거의 모든 상황에서 로그인 키체인 복사를 막음.
- Rich Trouton은 Secure Enclave에 보관된 추가 비밀로 암호화한 결과일 수 있다고 제안했고, Jeff Johnson은 추가 비밀이 볼륨별로 다르다는 점을 관찰함.
- 해당 비밀은 데이터 볼륨의 잠긴 디렉터리인
/var/db/SystemKeys에 저장됨. - 파일 기반 키체인, 특히 로그인 키체인은 암호와 보호된 엔트로피 파일을 모두 요구할 수 있으며, 이 요구가 로그인 키체인에만 한정되는 것은 아닐 수 있음.
- 엔트로피 파일이 없으면 로그인 키체인과 일부 다른 파일 기반 키체인을 잠금 해제해 사용할 수 없음. 따라서 보호 대상 키체인을 복사하더라도 엔트로피 파일에 접근할 수 없으면 복사본을 잠금 해제할 수 없음.
로그인 키체인 복사
- 파일 기반 키체인을 Mac이나 부팅 볼륨 사이에서 복사하려면 해당 엔트로피 파일도 대상 데이터 볼륨의
/var/db/SystemKeys에 복사해야 함. - 이를 위해 시스템 무결성 보호(SIP)를 비활성화하고, 다음 명령으로 키체인의 솔트를 확인해 엔트로피 파일을 식별해야 함.
security show-keychain-info -s path에서path는 키체인의 전체 경로이며, 로그인 키체인의 일반적인 경로는~/Library/Keychains/login.keychain-db임.- 명령을 실행하면 해당 키체인의 암호를 입력하라는 메시지가 표시되며, 암호를 입력하지 않으면 명령이 실패함.
- 명령은 다음과 같은 결과를 반환하며, 이때 해당 키체인의 엔트로피 파일 경로는
/var/db/SystemKeys/30993ABCECBE29D91ED95C2A3827326DB5C39B2F임. Keychain "/Users/hoakley/Documents/zKeychains/login.keychain-db" no-timeout salt=30993ABCECBE29D91ED95C2A3827326DB5C39B2F- 모든 파일 기반 키체인에서
salt값이 반환되지만, 엔트로피가 필요한 키체인에만 해당 이름의 엔트로피 파일이 존재함.
백업
- 이 절차는 백업에도 적용되므로, 백업 소프트웨어는 잠긴 디렉터리에 있는 엔트로피 파일을 백업하고 사용자가 키체인을 복사하거나 복원할 때 해당 파일도 복원해야 함.
- 마이그레이션 지원이 Mac 사이에서 정상 작동하는 로그인 키체인을 계속 복사할 수 있는 이유도 여기에 있음. 백업에서 마이그레이션할 때도 백업에 엔트로피 파일이 포함된
/var/db/SystemKeys디렉터리가 있으면 키체인을 복사할 수 있어야 함. - 각 Time Machine 백업은 한동안 보호된 파일을 위한 단계를 포함해 두 단계로 진행됨. macOS 26.4부터는 데이터 볼륨 백업에 보호 디렉터리인
/var/db/SystemKeys도 포함되며, 백업 안에서도 보호됨. - 이 방식은 Time Machine 백업을 사용해 한 Mac에서 다른 Mac으로 마이그레이션할 때 로그인 키체인과 엔트로피 파일을 모두 복사할 수 있도록 한 것으로 보임.
- 일부 서드파티 백업 제품의 문서를 확인했지만, 보호 디렉터리를 백업하는지 또는 로그인 키체인에 필요한 엔트로피 파일을 어떻게 복원하는지에 관한 명시적 설명은 찾을 수 없음.
핵심 사항
- macOS Tahoe 26.4 이후의 로그인 키체인은 잠금 해제를 위해 추가 비밀 정보를 요구함.
- 추가 비밀 정보는 보호 디렉터리
/var/db/SystemKeys에 저장된 엔트로피 파일임. - 로그인 키체인을 성공적으로 복사하려면 엔트로피 파일도 함께 복사해야 함.
- 백업 소프트웨어는 보호 디렉터리를 백업하고, 엔트로피 파일이 필요한 키체인과 함께 해당 파일을 복원해야 함.
- Time Machine은 macOS 26.4부터 엔트로피 파일을 백업하며, 마이그레이션 지원은 마이그레이션 중 필요에 따라 해당 파일을 복사함.
- 서드파티 백업 소프트웨어를 사용한다면 엔트로피 파일을 올바르게 처리하는지 확인해야 함.
- macOS 26.4 이후에 만들어졌지만 엔트로피 파일과 함께 저장되지 않은 오래된 로그인 키체인은 잠금 해제가 불가능하므로 삭제해도 됨.
- macOS Tahoe 26.4는 2026년 3월 24일 출시됐으며, Apple은 정확히 6개월 뒤인 2026년 9월 24일 개발자 전용 기술 노트에서 이 변경 사항을 문서화함.
참고 자료
- Apple의 기술 노트 TN3137: 파일 기반 키체인 백업에 관한 마지막 부분 참고.
- Apple의 사용자 문서: 6개월 넘게 잘못된 내용이 기재된 문서임.
댓글 (0)
로그인하면 이 기사에 내 생각을 남길 수 있어요