파일 시스템과 파일 복구 - 파일 시스템에 구조와 파일 시스템에서의 주소 지정방식, 클러스터, 발생 가능한 슬랙 공간
파티션과 MBR의 개념, 구조와 확장 파티션
FAT 파일 시스템의 예약 영역, FAT 영역, 데이타 영역 내용을 확인함
NTFS 에 대한 기본 내용과 NTFS 특징인 USN 저널, ADS, Sparse 파일, 파일 압축, EFS, VSS, Quotas, 유니코드 지원, 동적 배드 클러스팅 재할당에 대한 확인
NTFS구조와 VBR, MFT 내용과 주고를 확인
파일 시스템 이해
생성된 데이터를 관리하기 위해 기록물을 적당한 위치에 보관하여 쉽게 접근할 수 있도록 분류, 체계화(windows FAT, NTFS)
운영체제는 독자적인 파일시스템을 사용하며 유사한 추상화된 구조를 가짐
메타영역(파일 관리를 위한 이름, 위치 크기들의 기록), 데이타 영역(파일의 내용이 기록됨)
CHS(Sylinder-ead-Sector) 실린더(Cylinder), 헤드(Head), 섹터(Sector)를 의미
LAB(Logical Block Addresses) 디스크의 마지막 섹터까지 순차적으로 주소를 지정
클러스터(Cluster) - 여러개의 섹터를 묶어서 한번에 처리 ex) 4MB 파일은 4KB의 클러스터의 경우 1024번, 512btye 클러스터는 8192번의 입출력 명령 수행
슬랙공간(Slcack Space) - 물리적인 구조와 논리적인 구조의 차이로 발생하는 낭비 공간, 정보은닉이 가능함
램 슬랙(RAM Slack) - 512바이트씩 기록되는 특성 떄문에 발생하는 공간으로 섹터 슬랙(Sector Slack)이라고 함.
파일 슬랙(File Slack) - 램슬랙을 제외한 나머지 부분으로 드라이브 슬랙(Drive Slack)이라고도 함
파일 시스템 슬랙(File System Slack) - 클러스터 크기의 배수만큼 사용하고 끝 부분에 생긴 남은 부분
볼륨 슬랙(Volume Slack) - 전체 불륨 크기와 할당된 파티션 크기의 차이로 발생
파티션과 MBR
파티션(Partition)- 사용용도 별로 논리적으로 분할하여 개별 공간으로 사용
Boot Record - 파티션의 크기, 위치, 설치된 운영체제 정보를 담고 있는 영역
MBR(Mast Boot Record) - 부트코드(445Byte), 파티션 테이블(64Byte), 시그니처(2Byte)
확장 파티션(Extended Partition) - MBR 영역에서 64바이트로 총 4개만 파티션을 분할 할수 있어 이러한 한계극복을 위해 나온 개념
FAT 파일 시스템
FAT(File Allocation Table) - 파일 시스템 자체를 가르키는 용어 , FAT 뒤에 숫자는 파일시스템에서 관리하는 클러스터 개수
FAT 파일 시스템 분석시 부트 섹터 BPB의 오프셋 14-15(Reserved Sector Count) 값을 확인하여야 함
FAT 파일 시스템 구조 - 예약된 영역, FAT 영역, 데이터 영역
일반적으로 두개의 FAT 1, FAT 2가 존재하며, FAT 2는 FAT!의 복사본임
FAT Entry의 값 - 데이터 영역의 각 클러스터가 사용되고 있는지 타나냄, 특정 파일이 점유하고 있는 클러스터 위치
FAT 32 - FAT 영역의 바로뒤가 아닌 임의로 시작이 가능
NTFS
NTFS(New Technology System) - 윈도우 NT부터 사용된 파일 시스템
USN 저널(Update Sequnce Number jounal) - 시스템 재부팅 될 떄 완료하지 못한 작업을 복원
ADS(Altermate DAta Stream) - 파일 당 하나 이상의 데이터 스트림을 저장할 수 있도록 지원하는 것 (은닉용도로 사용될 수 있음)
Sparse 파일 - 실제 데이터를 기록하지 않고 크기 정보만 유지
파일 압축 - LZ77 알고리즘을 변형한 압축 방식을 지원
EFS(Encryping File System) - 파일 및 디렉토리를 대칭키 방식으로 암호화
VSS(Volume Shadow Copy Service) - 윈 2003 부터 지원 되며 좀더 안전한 복구
Quotas - 사용자 디스크 사용량 제한
유니코드 지원 - 다국어 지원
동적배드 클러스터 재할당 - 새롭게 할당한 클러스터에 복사
NTFS 구조
VBR - 부트 섹터와 추가적인 부트 코드가 저장
MFT - 파일 위치, 시간 정보, 크기, 파일 이름등의 속성 정보를 저장한 구조, 파일 시스템의 메타 파일 역활을 함
DATA
디지털 포렌식 관점에서의 파일 시스템 분석
파일 삭제, Directory Entry 또는 MFT Entry가 덮어 쓰이지 않은 경구 - 파일 내용 복구 가능. 시간순으로 정렬, 사용자가 의도적으로 파기한 파일을 찾을 수 있음
FAT 파일 시스템 - 데이터 영역의 루트 디렉토리부터 모든 하위 디렉터리를 탐색하면서 오프셋 0x00의 값이 0xE5를 갑는 Directory Entry를 찾음
NTFS 시스템 - MFT Entry 0qjsdml $MFT의 $BITMAP 속성에서 0x00 값을 갖는 MFTP Entry를 찾음
비할당 클러스터 - 파일 시스템에서 사용하지 않는 클러스터가 아닌 메타정보를 통해 접근할 수 없는 클러스터
슬랙 영역 - 운영체제를 통해 확인되지 않는 영역
파일 시스템 별로 시간 정보 위치
FAT - Directory Entry 정보 확인
NTFS - 파일의 MFT Entry에서 $STATNDARD_INFORMATION, $FILE_NAME 속성에서 확인
부트코드 분석- 운영체제가 로드되기 전에 정상적인 실행 흐름에 벗어났는지 여부 확인
미사용 영역분석 - 특정 데이터가 삽입된 흔적이 있는지 파악
은닉 파일 분석 - 운영체제 의해 기본적으로 숨긴 속성이 설정된 시스템파일
FAT - 파일의 Directory Entry 항목 중 오프셋 11개의 Attribute가 0x02 값을 가짐
NTFS - 파일의 MFT Entry에서 $STANDARD)INFORMATION 속성이 오프셋이 32~35의 FLAGS가 0x0002임
ADS - NTFS는 하나의 파일을 두개 이상의 데이터 속설을 가징수 있는 ADS를 지원( 윽닉 목적으로 사용될 수 있음)
파일복구
파일 시스템에서 파일은 메타 정보와 파일 내용으로 저장됨 , 파일을 삭제하면 메타 정보의 특정 플래그만 변경시키므로 메타정보를 이용해 복구 가능
파일 카빙 - 저장매체의 비할당 영역으로 부터 파일을 복구하는 기법
시그니처 기반 카빙 - 파일 포맷별로 존재하는 고유한 시그니처를 이용
램 슬랙 카빙 - 램 슬랙을 통해 파일의 조각을 찾는 기법
파일 구조체 카빙 - 효과적으로 파일 구조를 분석하여 카빙
file : Forensic data recovery from the Windows Search Database
댓글 없음:
댓글 쓰기