Forensic/파일-구조 11

Windows Prefetch Artifact

Windows에는 다양한 아티팩트가 생성된다. 프로그램을 실행했을 때 생성되는 아티팩트, 컴퓨터를 부팅했을 때 생기는 아티팩트들도 존재한다. 사용자의 행적을 찾기 위해서는 사용자가 어떤 프로그램을 사용했는지에 대한 흔적을 찾는 것은 중요하다. 레지스트리의 Amcache도 있을거고, LNK 파일, JumpList 등 다양한 아티팩트에서 행적들을 찾을 수 있는데 오늘 여기서는 Prefetch 파일을 다뤄보려고 한다. https://weasley-forensics.notion.site/Windows-Prefetch-c629bd6f4a9b4708a938a5689a82f9a0?pvs=4

MFT(Master File Table) 구조

지난 시간에 NTFS 파일 시스템을 배웠습니다. 이번에는 NTFS 파일 시스템에서 가장 중요한 MFT 파일의 구조를 배워 보겠습니다.MFT 파일이란?MFT 파일은 NTFS 파일 시스템에서 파일, 디렉터리, 메타데이터를 모두 "파일" 형태로 관리하는 파일 입니다. 예전에 배웠던 FAT 파일 시스템에서 본 디렉터리 엔트리의 상위 개념이라고 이야기 할 수 있습니다. 그리고 나중에 구조를 보시면 아시겠지만 FAT 파일 시스템과는 좀 많이 다르기 때문에 설명에 있어 길어지는 점 양해를 부탁바랍니다. MFT 영역의 구조를 한번 보겠습니다.MFT 영역은 위 그림을 보면 아시겠지만 VBR 영역 이후에 오게 됩니다. 그림에서는 이어서 바로 오는 것 처럼 표현이 되었지만 실제로는 VBR과 MFT 사이의 물리적인 공간이 존..

디렉터리 엔트리 분석 - LFN, SFN

디렉터리 엔트리는 Windows의 FAT(File Allocation Table) 파일 시스템에서 파일의 이름, 확장자, 위치, 크기, 시간 정보들을 표현하기 위한 구조체입니다. 하나의 파일 및 디렉터리는 각각의 메타정보를 표현하기 위해 하나의 디렉터리 엔트리를 가집니다. FAT 파일 시스템에서 FAT 영역에 이어 오는 루트 디렉터리(Root Directory)영역을 살펴 보면 최상위 디렉터리에 존재하는 파일들의 디렉터리 엔트리를 확인할 수 있습니다. (FAT32는 루트 디렉터리가 파일 시스템 어느 곳에나 올 수 있습니다.)디렉터리 엔트리는 32바이트의 고정된 형태로 해당 파일의 메타정보를 표현하는데 구조를 한번 보겠습니다.위에 보시는 구조를 가지는 파일을 SFN(Short File Name)이라합니다...

NTFS(New Technology File System) File System Structure

저번 시간에는 FAT32 파일 시스템에 대해서 배워봤는데, 이번 시간에는 NTFS 파일시스템에 대해서 배워보겠습니다.NTFS 파일시스템이란?NTFS 파일시스템은 Windows NT의 등장으로 최초 서버용 파일시스템으로 등장했습니다. 그 전 개인용 운영체제를 사용했던 시기에는 FAT 파일시스템이 주로 사용되었지만, 용량의 한계에 있어 대용량 서버 운영체제인 Windows NT에 적합하지 않은 파일시스템이였기 때문에 다양한 기능, 뛰어난 확장성, 대용량 장치 지원을 지닌 파일시스템인 NTFS를 개발하였습니다. NTFS VersionNTFS는 Windows NT 운영체제에 처음 사용된 이후, Windows 2000, XP, 7, 8 들을 거쳐 많은 운영체제에 사용되고 있는데, 운영체제마다 NTFS 버전이 다르..

FAT32(File Allocation Table) File System Structure

저번 시간에는 FAT16의 구조를 분석해봤습니다. 여기서 중간중간 FAT16의 내용이 나올텐데, 모르겠으면 여기를 참고해주시길 바라겠습니다. https://lemonpoo22.tistory.com/41 이번 시간에는 FAT32에 대해서 알아 보겠습니다. FAT32는 FAT16보다 복잡한 파일 구조를 띄고 있습니다. 다음 그림은 FAT32의 구조입니다.FAT12와 16은 Reserved Area영역의 크기가 1섹터로 고정적이지만, FAT32는 32섹터로 구성되어 있습니다. 그리고 FAT32의 Reserved Area의 32섹터중에서 0, 6은 Boot Sector, 1, 7은 FSINFO, 2,8은 Boot Strap입니다. 실습환경을 구축해, 분석을 진행하기 전 저는 2GB의 가상 하드를 FAT32로 포..

FAT16(File Allocation Table) File System Structure

오늘은 FAT File System에 대해 배워보겠습니다. FAT File System은 FAT12, FAT16, FAT32과 같이 총 3가지의 파일 시스템으로 나누어 집니다. 원래 FAT12부터 배워야 하지만 이번에 배워볼 FAT12나 FAT16은 크게 차이가 나지 않고 클러스터를 표현하는 FAT Entry의 비트 수가 12개와 16개인 점을 제외한다면 동일하기 때문에 FAT16 파일 시스템만 공부를 하게 된다면 FAT12는 공부하지 않아도 이해 하실 수 있을것입니다. 그럼 본론으로 들어가겠습니다. 먼저 FAT16의 구조를 보면서 설명하겠습니다. 위의 그림을 보면 FAT16 File System의 구조는 4가지의 영역으로 나뉘어 져 있지만 Data Area를 세부적으로 나누면 이런식으로 표현이 됩니다...

GPT(GUID Partition Table) Structure

GPT를 설명하기에 앞서, GPT의 하위 버전이라고 할 수 있는 MBR에 대해서 간략하게 설명을 드리겠습니다.MBR이란? MBR은 물리적인 저장 매체 영역 중 0번섹터에 위치하고 있는 512Byte영역입니다. 모든 저장 장치에서 가장 처음에 존재하는 구조이며, 32bit를 사용하여 용량의 제한이 2TB입니다. Boot Code(446Byte), Partition Table Entey(16 * 4 = 64Byte), Signature(2Byte)의 구조를 가지고 있습니다.본론으로 가겠습니다. GPT 파티션은 MBR 파티션 테이블의 파티션 용량에 제약 및 보완된 파티션 방식을 위해서 만들어 진 영역입니다. 위에서 말씀드렸다 시피 MBR 파티션은 32bit 체제를 사용하여 최대 2TB만큼 크기를 가지는데, G..

MBR 확장 파티션(Extended Partition)

지난 시간에 MBR구조에 대해서 배웠는데, MBR구조는 총 4개의 Partition Table Entry가 존재한다고 했습니다. 모르겠으면 다음 링크를 참고하셔서 MBR에 대해서 배워오셔야 이해가 될겁니다!! https://lemonpoo22.tistory.com/23 이번 글에서는 MBR에서 사용되는 확장 파티션에 대한 설명과 분석 방법을 설명하겠습니다. MBR영역에서 파티션 테이블은 4개까지 표현이 됩니다. 하지만 4개 이상의 파티션 정보를 표현하기 위해 확장 파티션이라는 개념을 도입을 하였습니다. 기존에 표현이 되는 4개의 파티션 엔트리에 대해서는 "주 파티션" 이라 하고, 이후 4개 이상의 파티션을 정의 하기 위해서는 "확장 파티션" 을 사용합니다. 마지막의 파티션 엔트리가 바로 확장 파티션 엔트..

MBR(Master Boot Record) Structure

저번 시간에는 ZIP Structure(구조)에 대한 내용을 배워보았는데요. 이제는 FAT32, FAT16과 같은 파일 시스템들을 배우기 전에 하드 디스크의 첫번째 데이터 저장 공간(0번 섹터)인 MBR에 대해서 배워보겠습니다. MBR이란?파티션의 스타일을 가르키는 약자입니다. MBR은 물리적인 저장 장치에서 확인 할 수 있는 영역으로써, HDD(하드디스크)에 첫 번째 데이터 저장 공간(0번 섹터)를 뜻하며, 하드디스크의 파티션 정보를 지니고 있습니다. 이 영역은 512byte(바이트) 크기의 영역입니다. 하지만 단일 파티션에서는 MBR이 존재하지 않고, 다중 파티션의 경우 MBR이 존재합니다. * Partition(파티션) 파티션은 단순하게 제한된 저장매체 공간(볼륨)을 보다 효율적으로 사용하기 위한 ..