목록포렌식 (54)
Piki's Play
- NTFS(New Technologies File System)은 마이크로소프트에 의해서 설계되고 사용되던 기본 파일 시스템이다. - NTFS는 많은 특징들을 제공하고 확장성이 매우 뛰어나기 때문에 FAT보다 더 복잡한 파일 시스템이다. 따라서 앞서 배운 FAT보다 더 많은 시간을 투자해서 설명하겠다. 11.1 소개 - NTFS는 신뢰성, 보안, 대용량 장치를 지원하기 위해 설계되었다. 특정 내용으로 데이터 구조체를 감싸는 포괄적인 데이터 구조체를 사용해서 확장성을 제공한다. 또한 포괄적인 래퍼(Wrapper)는 지속되었는데, 이 한 예는 NTFS파일시스템 데이터의 모든 바이트가 한 파일에 할당되는 것이다. 이 장에서는 NTFS파일 개념에 대해 설명하겠다. - NTFS는 복잡한 파일시스템이고 마이크로소..
-> 이번장에서는 FAT를 구성하는 데이터 구조체를 분석해보자. 여기서는 다섯가지 분류모델을 무시하고 개별구조체에 집중해보자. 10.1 부트섹터 - 파일시스템의 첫 섹터에 존재하고, 여러 파일 시스템 범주데이터가 여기에있다. 또한 볼륨레이블은 'Noname'이다. - FAT12/16과 FAT32는 부트섹터의 구조가 다르다. 그러나 첫 36비트는 동일하다. -> 첫 번째 값 0~2바이트는 부트코드가 어디에 있는지 알려준다. 이는 해당시스템이 부팅과 관련이 없다면 무의미하다. (Dos와 윈도우의 경우, 부팅과 관련없는 파일시스템도 이 값을 가져야한다. 하지만 리눅스와 같은 다른 운영체제들은 그러지 않다.) - 매체유형(미디어유형)은 이동식인지 고정매체인지 구분하기 위함이지만, 윈도우는 이를 사용하지 않는다...
9.5 파일 이름 범주 - 일반적으로 파일이름 범주 분석은 메타구조체를 이용해서 파일명을 확인시켜준다. FAT는 파일명주소와 메타데이터 주소를 구분하지 않는다. 이미 파일명이 메타주소로 사용되기 때문에 이미 메타데이터 범주에서 파일과 디렉토리 이름의 기본 내용을 설명하였다. 디렉토리 엔트리 구조체는 파일명으로 8문자, 확장자로 3문자를 이용해 8.3규칙을 통해 파일명을 저장한다. 이 절에서는 어떻게 FAT가 긴 파일명을 처리하는지 집중해서 다룬다. - 파일명이 8문자보다 길거나 이름에 특별한 값이 있다면 디렉토리에 LFN(Long File name) 타입이 추가된다. LFN이 있는 파일들 또한 SFN(Short File name) 디렉토리를 갖는다. LFN엔트리들이 시간, 크기, 시작 클러스터 정보를 포..
9.4 메타데이터 범주 - 메타데이터 범주는 파일 또는 디렉토리 내용이 저장된 위치, 날씨, 시간 그리고 허가권 같은 데이터를 포함한다. 수사관은 추가 정보를 얻거나 의심스러운 파일인지 식별하기 위해서 이러한 데이터 범주를 사용한다. - FAT 파일시스템은 이러한 정보를 디렉토리 엔트리에 저장한다. 또한 파일시스템은 FAT구조체를 파일이나, 디렉토리 레이아웃에 대한 메타데이터 정보를 저장하기 위해 사용한다. ▷ 디렉토리 엔트리 - 디렉토리 엔트리는 파일과 디렉토리마다 할당된 데이터 구조체이다. 디렉토리 엔트리는 32바이트이고, 파일속성, 크기, 클러스터, 날짜, 시간정보를 포함한다. 디렉토리 엔트리는 파일명을 저장하기 때문에 메타데이터뿐 아니라 파일이름 범주 역할도 한다. 디렉토리 엔트리는 데이터 영역 ..
9.3 내용 범주 - 내용범주는 파일이나 디렉토리 내용을 구성하는 데이터를 포함한다. '클러스터'는 FAT에서 사용하는 데이터유닛이고 연속적인 섹터의 그룹이다. 그리고 섹터의 개수는 2^n꼴이다. 마이크로소프트 명세를 보면 클러스터의 최대크기는 32KB이다. 각 클러스터는 주소를 가지고 있고 첫 클러스터의 주소는 2이다. -> 클러스터는 0과 1을 가지는 주소는 없다. - 앞에서 배운 3개의 영역중에 클러스터는 모두 마지막 영역인 '데이터 영역'에 할당한다. ▷ 첫 번째 클러스터 찾기 - 첫 클러스터의 위치가 2이기 때문에 찾기가 어렵다. 클러스터는 데이터영역에만 존재하고 예약된 영역과 FAT영역은 클러스터 주소를 사용하지 않는다. -> 논리적 볼륨 주소 사용 - FAT12/16과 FAT32는 클러스터2..
-> FAT(File Allocation Table) 파일시스템은 일반 운영체제에서 볼 수 있는 가장 간단한 파일시스템 중 하나이다. FAT는 모든 윈도우와 대부분 유닉스 운영체제에서 지원한다. 여기서는 앞에서의 5가지 범주를 이룡해서 FAT 전체 개념과 분석기술을 알아보자. 9.1 소개 -> FAT는 데이터 구조체 타입수가 적기 때문에 간단한 파일시스템이다. FAT에는 다양한 기능을 제공하는 두 개의 중요한 데이터 구조체가 있는데 (FAT와 디렉토리 엔트리), 이 두가지 분류모델에서 여러 범주에 속한다. 이러한 데이터 구조체를 한 절에서 설명하고 나머지는 다른 절에서 설명한다. - 분류모델을 이용해 FAT 파일시스템을 설명하는 것은 더 개선된 파일시스템, 그리고 분류모델로 확실히 구분되는 파일 시스템들..
8.5 파일이름 범주 -> 파일명을 포함하여 사용자가 메타데이터 주소 대신 이름으로 파일을 검색할 수 있도록 한다. 전체 경로에서 파일하나를 찾아야할 필요가 있기 때문에 파일명 분석에서 중요한 것은 루트 디렉토리의 위치를 파악하는 것이다. 예를들어 윈도우 'C:\'는 C: 드라이브에서 루트 디렉토리이다. -> 루트디렉토리 위치정의는 파일시스템마다 다르다. ▶ 전반적인 정보 -> 여기서는 파일 이름 범주의 전반적인 개념에 대해 알아보자 또한 이름에 기초한 파일 복구 방법을 설명한다. ▷ 파일이름 기반 파일복구 - 파일명 기반 복구는 메타데이터 기반 복구로 파일명을 복구하기 위해서, 삭제된 파일명과 메타데이터 주소를 사용한다. (분석하기 어려운 대상은 메타데이터 계층에서 실행) -> 두개의 파일명이 있고 3..
8.4 메타데이터 범주 - 메타데이터 범주는 '데이터의 데이터' 즉, 데이터를 부가설명해주는 데이터가 존재하는 곳이다. 일반 도구들은 메타데이터와 파일명 분석을 구분하지 않고 두 범주를 통합해서 분석한다. (여기서는 데이터의 출처와 데이터 복구가 왜 불가능한지 설명을 하기 위해서 두 범주를 나누었다.) - 많은 메타데이터 구조체는 고정테이블이나 동적 테이블에 저장되고 각 엔트리는 주소를 갖는다. 파일이 지워지면 그 메타데이터 엔트리는 '비할당'상태로 바뀌고 일부 운영체제는 엔트리 값을 영구 삭제한다. - 특정 파일의 세부사항을 확인하거나, 특정 요구사항에 부합하는 파일을 찾기위해 메타데이터 범주에서 분석을 수행한다. 그래서 이 범주는 다른 범주에 비해 부가 데이터를 갖는 경향이 있다. ▶ 전반적인 정보 ..