Mac Forensics

[Mac Forensics] Macintosh 보안 기능 (3)

도깬리 2023. 10. 7. 07:16

안녕하세요. 도깬리 포렌식스 입니다.

오늘은 Macintosh 보안 중 FileVault와 Keychain 등에 대해 알아보겠습니다. 모두 화이팅하세요!!!

 

FileVault (초기 versions) Master Password

Master Password를 이용하면 사용자가 잃어 버린 로그인 패스워드를 재설정할 수 있게 됩니다.

Master Password는 기본 설정되어 있지 않습니다.

FileVault를 최초 활성화 할 때 Master Password가 필요하였습니다.

Admin 사용자가 되어 Master Password를 아는 것이 Memory dumps, brute-force(무차별 공격) 또는 dictionary attack(사전 공격)을 이용하는 것 이외에 FileVault를 해제하기 위한 유일한 방법이었습니다.

FileVault를 켜고 Master Password를 설정하는 것은 System Preferences 아래에 놓여 있던 Security application에서도 할 수 있습니다.

최신 버전의 FileVaultRecovery Key를 이용합니다.

 

 

FileVault 1

2002v10.2Jagur 부터 적용되었습니다.

사용자의 Home 폴더는 로그 아웃하거나 셧 다운을 할 때 암호화 됩니다.

Tiger 10.4sparseimage 라고 불리는 특수한 디스크 이미지 파일을 사용하였습니다.

SparseImage는 일종의 대용량 싱글 파일입니다.

Mac OS 10.510.6Sparsebundle 이라고 불리는 특별한 디스크 이미지 파일을 사용하였습니다.

Sparsebundle은 번들 내부에 포함된 8MB bands에 데이터를 저장하였습니다.

사용자가 로그 아웃을 할 때에만 FileVault 홈 디렉토리를 Time Machine이 백업하였습니다.

 

FileVault 2

2011 v10.7 Lion 부터 적용되었습니다.

사용자의 로그인 패스워드를 암호화 구문으로 사용합니다.

디스크를 암호화하기 위해 128비트 블록과 256비트 키로 된 AES-XTS를 이용합니다.

Lion 부터 Full Volume Encryption이 도입되었고, Mountain Lion 에서도 계속적용되었습니다.

사용자는 반드시 디스크의 암호를 풀 수 있어야 합니다.

FV2가 활성화되었을 때, Recovery PartitionEFI에서 보이지 않게 됩니다.

그러나, Command + R을 눌러 시작할 때 Recovery Partition을 부팅할 수 있습니다.

Boot Camp 파티션은 암호화 되지 않습니다.

 

 

FileVault 고려 사항

FireWire (1394)ThunderBolt를 예외적으로 이용 가능합니다.

Snow Leopard (2009, v10.6) 부터 컴퓨터가 켜져 있을 때 Direct Memory Access(DMA)가 가능해졌고, Lion(2011. v10.7)Mountain Lion(2012, v10.8) 부터 사용자가 로그인 한 경우에만 제한적으로 DMA를 허용하였습니다.

DMA는 컴퓨터의 물리적 메모리가 4GB 미만인 경우에만 제한적으로 이용 가능합니다.

DMA 접근 방식은 혐의자의 로그인 패스워드를 알아 낼려고 하는 포렌식 조사관에게 도움이 될 수 있습니다.

RAM dump는 관리자 권한을 필요로 합니다.

 

 

사용자 로그인은 FileVault 1/2 암호화 구문을 사용합니다.

Snow Leopard users loginsalted SHA-1 값을 사용합니다.

Snow Leopard users login은 다음의 경로에서 발견된다.

- /var/db/shadow/hash/<GUID File>

Salted SHA1offset 169에서 시작되고 길이는 48 characters입니.

첫 번째 8 characters 4byte salt에 대한 해시값입니다.

 

다음과 같은 다양한 free password cracking tools를 이용할 수 있습니다.

- John the Ripper

Lion Mountain Lion은 둘다 PLIST 파일이고 다음의 경로에서 발견됩니다.

- /private/var/db/dslocal/nodes/Default/users/<user.plist>

해시값은 사용자의 .plist 파일 안의 ShadowHashData 필드 안에 보관됩니다.

Password Based Key, Derivation Function 2 (PBKDF2), SHA-512 salt를 이용하여야 합니다.

사용자의 패스워드를 복구하기 위하여 다양한 무료 패스워드 크래킹 도구가 이용되고 있습니다. (: DaveGrohl v2)

 

 

Keychain

Apple Keychain은 사용자가 다양한 패스워드, 인증서, , Secure Notes 등을 찾고 기억하는데 도움을 주기 위해 개발한 유틸리티입니다.

Keychain과 연동한 사용자용 패스워드는 로그인이 성공할 때 잠금이 해제됩니다.

Keychain Utilities 디렉토리 아래에 위치한 Keychain Access 어플리케이션을 사용하는 방법으로 관리됩니다.

 

 

각 사용자의 기본적인 Keychain은 다음 경로에 위치합니다.

- ~/Library/Keychains/login.keychain

Keychain 파일과는 별도로 사용자는 Keychain utilities에서 custom keychain files를 만들고 저장할 수 있습니다.

Custom Keychain은 외부 플래시 드라이브를 포함하여 어디라도 저장할 수 있습니다.

Custom Keychain 마다 각각의 패스워드를 갖고 있으므로, 그냥 로그인하면 잠금이 풀리지 않습니다.

Keychain이 잠금될 때 128비트 AES로 암호화됩니다.

 

데이터 영구삭제

Mac OS X는 포렌식 조사관을 어렵게 만드는 핵심 보안기능을 갖고 있습니다.

파일이 삭제될 때 파일과 연동하게 하는 포인터가 제거될 뿐 해당 파일은 여전히 덮어씌워 질 때까지 남아 있습니다.

안전삭제 기능 : OS X는 휴지통에서 모든 데이터를 안전하게 삭제하는 옵션을 갖고 있습니다. 휴지통을 비우는 순간, 볼륨에 존재하였던 파일은 임의의 새로운 데이터로 덮어씌워집니다.

사용자가 휴지통에서 파일을 안전하게 삭제하는 것을 잊어버린 경우에는 Disk Utility의 옵션으로  Free Space 를 제거할 수 있습니.

 

 

 

 

감사합니다. 오늘도 즐거운 하루 되세요.

"좋아요"와 "구독하기"는 힘이 됩니다.

참고문서 : MAC Forensics Training Event 2016 (IACIS)