아메바시큐리티

[파일시스템] 슬랙공간 본문

디지털포렌식/파일시스템

[파일시스템] 슬랙공간

am2ba 2021. 1. 2. 23:55

Slack 공간

물리적 구조와 논리적 구조의 차이로 발생하는 낭비되는 공간을 Slack 이라고 한다. 

Slack이 생성되는 것을 예시로 들어보면 아래와 같다. 먼저 클러스터 크기를 2048Byte, 섹터의 크기를 512Byte라고 가정하자. 

700byte의 크기를 디스크에 쓰게 될경우, 디스크 컨트롤러에 존재하는 sector buffer가 512Byte 크기의 buffer를 0x00으로 초기화 하고, 쓰려고 했던 700Byte 중에서 512 Byte에 해당하는 크기를 sector1에 기록한다. 이후 다음 sector2 역시 0x00으로 초기화한 후, 남은 188 Byte를 쓴다. 

그러면 sector2에는 188 Byte는 데이터로 쓰여지고, 남은 324Byte는 0으로 채워지게 되는데 이 영역을 RAM Slack이라고 한다. 그 이유는 RAM에 있던 데이터가 쓰여지면서 0으로 채워진 것이기 때문이다. 

Drive Slack은 sector3, sector4와 같이 클러스터에서 채워지지 못한 영역을 말한다. 

File Slack은 RAM Slack과 Drive Slack을 모두 합쳐서 File Slack이라고 한다. 

* 만약 해당 클러스터가 이전에 파일이 쓰여졌던 클러스터라면, Drive Slack에 이전 파일의 데이터가 있을 수 있다. RAM Slack은 의미 있는 정보가 없지만 Drive Slack을 조사하면 의미있는 데이터를 얻을 수 있다. 

 

파일을 복구할 때, 파일의 시작점은 시그니처를 통해서 찾을 수 있는데, 파일의 끝은 오탐이 많이 발생한다. 이러한 경우 뒤에 RAM Slack의 존재여부를 통해 복구할 경우 오탐을 줄일 수 있다. 

 

File System Slack은 Cluster 단위로 데이터를 쓴 후 남아있는 공간이다. 

 

파티션 단위로 채우고 남아 있는 공간을 Volume Slack이라고 한다.