Filesystem 4

EXT4 Extents : 매크로 블록에 쓰여진 데이터의 연속성 검증

목적 매크로 블록(128MiB)에 데이터를 기록했을 때 데이터가 물리적으로 연속적인 주소에 쓰여지는지 검증 매크로 블록 생성 후 데이터 기록 1. 파티션 생성2. 파티션 포맷 (EXT4 + Extents 속성)3. 마운트 (EXT4)4. 매크로 블록 생성 (MB00000.IFS ~ MB00xxx.IFS, SPARE.IFS)5. 데이터 기록 1) Block > Size : 32KiB > Data : [0x00 ... 0xFF] x 128 반복 2) Macro Block > Size : 131072KiB > Data : Block x 4096개 void _sst_mb_verify_write_read(char *mnt_path) { unsigned char mbpath[128] = {0}; unsigned c..

Filesystem 2015.04.04

MBR과 GPT

MBR (Master Boot Record) GPT (GUID Partition Table) 시스템 BIOS EFI 최대 파티션개수 4개 28개 1. Partition Table : 64 Byte 2. Partition Entry : 16 Byte 3. 64/16 = 4개 4. 확장 파티션, EBR 통해 4개 이상 생성 1. Partition Entry : 128 Byte 2. Partition Table : 16384 Byte 3. 16384/128 = 28개 파티션 최대크기 2TB 18EB 1. CHS 주소체계 : 232개 주소 2. 512 Byte(1섹터) * 232 = 2TB 1. LBA 주소체계 : 264개 주소 2. 512 Byte(1섹터) * 264 = 18EB 리눅스 명령 fdisk par..

Filesystem 2015.03.20

EXT4 Extents : 블록 연속 할당 실험

목적별도의 Driver를 구현하지 않고 User 영역에서 연속적인 매크로 블록 할당 요구사항디스크가 EXT4 파일 시스템으로 포맷 되어야 한다.디스크가 EXTENTS 속성으로 마운트 되어야 한다.매크로 블록이 물리적으로 연속 할당되어야 한다. (128MB, 256MB, ...) 실험과정 디스크 파티션 제거/생성 sudo fdisk -lsudo fdisk /dev/sdbd /* 파티션 1,2 제거 */ 1d2n /* 파티션 1 생성 */p1 w 디스크 마운트 (extents 옵션은 /etc/mke2fs.conf에 의해 기본으로 활성화된다.)sudo mkfs.ext4 /dev/sdb1 sudo mkdir /mnt/mymount sudo mount -v -t ext4 /dev/sdb1 /mnt/mymount ..

Filesystem 2015.02.16

EXT4에 대한 이해 (Part 1) : Extents

이 글은 Understanding EXT4 (Part 1): Extents 포스트를 번역한 자료입니다. EXT4는 리눅스 파일시스템의 EXT2/EXT3 패밀리를 대체할 차세대 파일 시스템이다. 2008년 10월 리눅스 2.6.28 커널에 안정적으로 적용되었다. 개발자들이 EXT2/EXT3과의 하위 호환성을 어느 정도 유지하려고 한 반면에 EXT4는 상당히 새롭고 많이 바뀌어버렸다. Sleuthkit과 같은 유명한 포렌식 툴은 EXT4의 이러한 변화에 완벽하게 호환되지 않는다. EXT4와 관련된 몇몇의 프레젠테이션을 읽는 동안 EXT4 구조체가 실제로 디스크에서 어떻게 보여지는지, EXT4의 어떠한 변화가 현존하는 포렌식 툴을 비정상적으로 동작하게 하는지 궁금증이 생겼다. 그래서 나는 오래된 나의 hex ..

Filesystem 2015.02.15