정보보안에 관련된 공부를 해오면서 윈도우의 포렌식을 다루는 자료들은 많이 보았지만, MAC os를 다루는 부분들은 많이 보지 못했다.
앞으로 MAC OS에 관한 포렌식 기법을 공부하면서 공부한 내용을 정리해 블로그에 올려볼 생각인데 , 나처럼 처음 MAC OS 포렌식에 관해 공부하는 사람들에게 도움이 되었으면 하는 마음이다.
💾 디스크 이미징
MAC OS 시스템의 하드 디스크나 저장 매체를 복제하여, 이미지 파일로 저장한다. 이미지 파일에는 원본 디스크의 모든 데이터가 포함된다.보통 이미지 파일이라고 하면 우리가 흔히들 아는 사진 파일(JPG, PNG 등)을 떠올릴 수도 있겠는데, 이와는 다르다. ‘디스크 이미지’라는 개념이 따로 있다. 디스크 이미지 파일은 하드 디스크나 저장매체 등의 전체 내용을 복제해 저장한 것이다.
이러한 이미지 파일은 바이너리(2진) 형태로 구성되고, 디스크의 *섹터 단위로 데이터를 복사한다. 디스크의 각 섹터는 일정한 크기로 구성되어 있고, 디스크 이미징은 이러한 섹터를 하나하나 읽어와서 이미지 파일을 생성한다. 원본 디스크의 데이터와 구조를 완벽하게 복제하는 것이다.
*섹터: 컴퓨터가 주소지정을 할 수 있는 최소의 단위 저장공간. (256 바이트 또는 512바이트)
디스크 이미징은 디지털 포렌식 분야에서 중요한 역할을 한다. 디지털 증거를 보존하고 분석하기 위해 사용되며, 범죄 조사나 디지털 증거 수집시에 원본디스크를 변경하지 않고 조사하기 위해 이미지로 복제한다. 원본 데이터의 무결성을 보장하고 변조를 방지할 수 있기 때문이다.
맥 OS에서는 디스크 이미지의 확장자로 .dmg를 사용한다.
확장자 설명
.iso | 표준 |
.img | 일반적인 디스크 이미지 확장자 |
.vhd, .vhdx | Microsoft Hyper-V 가상 하드 디스크 이미지 파일의 확장자로, 가상화 환경에서 사용 |
.raw | 생 이미지(raw image)를 의미하는 확장자로, 디스크의 원시 데이터를 그대로 저장한 형식 |
.dd | Unix/Linux 환경에서 사용되는 디스크 이미지 확장자로, "dd" 명령어를 사용하여 디스크 이미징을 수행할 때 자주 사용 |
.dmg | macOS에서 사용되는 디스크 이미지 확장자 (압축과 암호화 기능 지원) |
이해하기 쉽게 예시를 들어 보았다.
💡 마인크래프트 게임을 플레이하며 평지 유한맵에 예쁜 건축물을 만들었다.
이제 그 건축물을 친구에게 공유하고 싶어서 설계도를 만들기로 했다.
설계도를 생성하기 위해서는 건축물의 각 블럭 위치와 종류를 기록해야 한다.
이 과정에서 각 블럭의 위치와 종류를 따로 저장하고, 이 정보를 합쳐서 설계도를 만들게 된다.
이제 친구에게 설계도를 공유하고, 친구는 설계도를 보고 그에 따라 블럭을 설치하여 건축물을 재현한다.
설계도를 받은 친구는 설계도에 적혀있는 블럭의 위치와 종류를 보고 그 건축물을 그대로 만들 수 있게 된다.
여기서 마인크래프트 건축물 설계도가 디스크 이미지이고,
각 블럭의 위치와 종류를 기록하는 과정이 디스크 이미징과 비슷한 과정이라 볼 수 있다.
디스크 이미징은 원본 디스크의 모든 데이터를 복제하여 이미지 파일로 저장하는 것이기 때문에,
건축물 설계도도 원본 건축물의 모든 정보를 포함하고 있다.
💾 디스크 유틸리티를 사용하여 디스크 이미지 생성하기
참고문헌 : APPLE 공식 문서
디스크 이미지는 디스크 유틸리티를 사용하면 의외로 쉽게 만들 수 있다. 어려워 보이는 말과는 다르게 디스크 유틸리티 앱에서 파일> 새로운 이미지를 클릭하면 몇 번의 마우스 딸각거림만으로도 생성된다.
필자 또한 하나를 완성했다.
추가적으로 , 애플의 디스크 유틸리티는 디스크 이미지 암호화를 지원한다. 이는 암호화 팝업 메뉴를 클릭한 다음 원하는 암호화 옵션을 선택하면 된다.
디스크 이미지를 만들 때 여러가지 선택옵션들을 마주하게 될 텐데, 너무 겁먹지 말아야 한다. 하나하나 자세히 뜯어보니 별 거 아니다 (라고 생각했는데 글 편집하는 와중에 엄청 복잡하다는 걸 알게 되었다ㅣ ㅋㅋ)
포맷 팝업 메뉴
APFS 또는 APFS(대소문자 구분) SSD(Solid State Drive)가 내장되어 있고 macOS 10.13 이상이 설치된 Mac에서 디스크 이미지를 사용하는 경우
Mac OS 확장(저널링) 또는 Mac OS 확장(대소문자 구분, 저널링) | macOS 10.12 또는 이전 버전이 설치된 Mac 컴퓨터에서 디스크 이미지를 사용하는 경우 |
MS-DOS(FAT) | 32GB 이하의 Mac 또는 Windows 컴퓨터에서 디스크 이미지를 사용하는 경우 |
ExFAT | 32GB 이상인 경우에 사용한다 |
이미지 포맷 팝업 메뉴
분할 번들 디스크 이미지 아래의 분할 디스크 이미지와 동일하지만 이미지의 디렉토리 데이터가 다르게 저장됨. .sparsebundle 파일 확장자를 사용
분할 디스크 이미지 | 필요한 경우 줄이거나 늘릴 수 있는 확장 가능한 파일을 생성. 추가 공간을 사용하지 않는다. .sparseimage 파일 확장자를 사용 |
읽기/쓰기 디스크 이미지 | 디스크 이미지를 생성한 후에 디스크 이미지에 파일을 추가할 수 있도록 허용한다. .dmg 파일 확장자를 사용한다. |
DVD/CD 마스터 | 이미지의 크기를 177MB(CD 8cm)로 변경한다. .cdr 파일 확장자를 사용한다 |
디스크 유틸리티는 Finder에서 저장한 위치에 디스크 이미지 파일을 생성하고 데스크탑과 Finder 사이드바에 디스크 아이콘을 마운트한다.
*마운트 : 다음 게시물에서 다뤄볼 예정
이 과정이 모두 끝났다면 Finder에서 파일을 마운트된 디스크 이미지로 복사한 다음 추출하면 디스크 아미지 생성이 완료된 것이다.
🤷🏻♂️마무리
포렌식 기법에 대해서는 할 말이 더 많고, 공부해야 할 것도 많겠지만, 일단 입문했다는 것에 중점을 두고 앞으로 더더욱 공부해 나가볼 예정이다.
'2023 공부한것들' 카테고리의 다른 글
[꼬꼬무 1일] 변수로 시작해 가상 주소와 스와핑 기법으로 끝나는 (0) | 2023.08.06 |
---|---|
데이터 타입의 필요성은 모르겠고, 오류를 안 띄우려면? (0) | 2023.08.06 |
[5-6] 표현식인 문과 표현식이 아닌 문 (0) | 2023.06.30 |
[TIL] 20230629 FRI [쉬어가는 하루] (0) | 2023.06.30 |
[5-5] 세미콜론과 세미콜론 자동 삽입 기능 (0) | 2023.06.30 |