본문 바로가기

포렌식

요즘에는... 요즘에는 포렌식 위주로 여러가지 연구를 하려고 노력중에 있습니다. 하지만 기초가 없어서는 안되겠죠. 파일시스템을 공부했으나 몇일 사용하지 않고 생각하지 않으니 모두 잊어먹더라구요. 그래서 요즘은 TSK 매뉴얼을 작성하면서 다시 파일시스템을 공부해보고 있습니다. 매뉴얼 작성이 끝나면 배포하고 포렌식 도구 분석이나 메모리 분석, 포렌식 아티팩트 등을 작성 해 볼 생각입니다. 가끔 맥 포렌식에 대해서 글을 올리는데 그것 또한 꾸준히 연구 할 생각입니다. 요즘은 애플 기기가 많이 보급화 되어 맥에 대한 분석도 중요시 되고 있는 시점이니까요 ^^ 일단 TSK 매뉴얼을 마무리 하는 것부터가 제일 급한일 인 것 같구요. 그 다음에 메모리 분석과 포렌식 아티팩트 정리~ 이런거 하면서 또 커널 공부도 해보고 싶네요. 커.. 더보기
File System - HFS+ (5) 이번 글에서는 Attributes File 영역과 Startup File 영역에 대해서 알아 볼 것이다. [Attributes File] 해당 영역은 카탈로그 파일의 속성 정보를 담고 있는 영역으로 b-tree 구조에서 노드의 크기 등을 정의하고 있는 영역이다. 해당 영역은 세 가지의 레코드 타입을 가지는데 이 레코드 타입들에 따라 길이가 달라지는 가변길이특징을 지니고 있다. 또 특이한 점은 해당 영역이 없어도 된다는 점이다. 아래는 해당 영역의 레코드 타입들이다. [그림 1 - 레코드 타입 목록] - 노드 속성 : b-tree 노드들에 해당하는 속성 레코드 타입이다. [그림 2 - 노드 속성 구조] - extents 기반의 속성 : fork 구조체로 정의되며 extents overflow file 영역.. 더보기
File System - HFS+ (4) 이번 글에서는 HFS+ 에서 제일 핵심적인 Catalog File 영역에 대해서 알아 볼 것이다. [Catalog File] 해당 영역은 파일의 주요 메타데이터들을 저장하고 있는 영역으로 b-tree 구조이다. 각 노드는 최소 4KB의 크기를 가지고 있으며 Mac OS X에서 파일이나 디렉토리에는 Catalog ID가 할당 되는데 각 ID 숫자 별 의미는 다음과 같다. [그림 1 - CatalogID 목록] 앞서 말했듯이 카탈로그 파일 영역은 b-tree 구조라고 하였다. 그렇기에 모든 노드와 인덱스들은 키를 가지고 있으며 또 노드들의 레코드들은 네 가지 종류로 나뉘어져 있다. [그림 2 - CatalogKey 오프셋 구조] 다음은 카탈로그 노드들의 레코드 종류이다. [그림 3 - 레코드 종류] 각 레코.. 더보기
File System - HFS+ (3) 계속해서 HFS+의 각 영역에 대해서 알아보자. [Allocation File] 해당 영역은 현재 블록이 할당 되어 있는지 판단하게 도와주는 비트맵 영역이다. 해당 영역에서 비트가 설정되어 있다면 비트에 해당하는 블록은 할당 되어 있는 것을 뜻하며, 비트가 설정되어 있지 않다면 할당 가능한 상태의 블록을 뜻한다. [Extents Overflow] 해당 영역은 하나의 B-tree가 데이터를 모두 저장하지 못하면 남은 데이터들을 저장하는 영역이다. 해당 영역의 오프셋 구조는 다음과 같다. [그림 1 - Extents Overflow 영역 오프셋 구조] - fork 타입 : fork의 타입을 정의하는 필드로 00으로 설정되어 있으면 data fork 타입이며, FF로 설정되어 있으면 resource fork .. 더보기
File System - HFS+ (2) 이번 글에서는 HFS+ 레이아웃에서 첫 번째에 위치하는 예약 영역과 그 다음에 위치하는 Volume Header에 대해서 알아 볼 것이다. [예약 영역] 해당 영역은 기존에 Boot Block이 위치하고 있던 자리로 OS가 발달하면서 부트 블록이 필요 없게 되어 사용하지 않게 되었다. 크기는 1024byte이며 만약 Mac OS Finder가 시스템 폴더를 변경하게 되면 변경 내용을 해당 영역에 기록하고 저장한다. [Volume Header] Volume Header는 HFS+ 의 시그니처, 볼륨 타임스탬프 등의 파일시스템 전반적인 정보들을 저장하고 있다. 크기는 512byte이며 세 번째 섹터에 저장된다. 해당 영역에 오프셋 구조는 다음과 같다. [그림 1 - Volume Header 오프셋 구조] -.. 더보기