ssoL2 TISTORY

[이제 시작이야! 디지털 포렌식] Chapter 2 핵심적인 기술 개념 본문

read/이제 시작이야! 디지털 포렌식

[이제 시작이야! 디지털 포렌식] Chapter 2 핵심적인 기술 개념

ssoL2 2021. 1. 18. 14:59

 

 

 

 

디지털 포렌식을 하는 데 있어

컴퓨터의 내부 환경에 대한 깊은 지식은 핵심이다.

 

 

 

 


1. 비트와 바이트

  • 컴퓨터는 바이너리 라고 불리는 2진수 언어를 사용한다.
  • 사람들은 10진수(0~9까지의 숫자) / 컴퓨터는 신속하게 계산하기 위해 비트 여러 개 = 바이트(8 bit)
  • 각 문자, 숫자, 스페이스, 특수 문자는 하나의 바이트로 표시

- 헥사데시멀

  • 바이너리를 16진수로 편하기 표시할 수 있는 방법(숫자 0~9 그리고 문자 A~F)
  • 앞에 "0x" 라는 문자가 붙거나 뒤에 "h"가 붙음

- 바이너리에서 문자로: ASHCII와 유니코드

  • 컴퓨터는 인코딩(encoding)을 이용하여 바이너리를 사람이 읽을 수 있는 문자로 변환
  • ASCII(the American Standard Code for Information Interchange) : 128개의 영어 문자(94개만 출력)
  • 유니코드(Unicode) : 전 세계의 모든 언어를 표시

 

  • 포렌식 조사관은 "비트"와 "바이트" 수준에서 데이터를 조사한다.
  • 파일 카빙(file carving) : 할당되지 않은 공간 처럼 특정한 형태가 없는 데이터를 바탕으로 파일의 위치를 확인하고 복원하기 위해 사용 > 바이너리와 헥스를 해석할 수 있는 능력이 필요

2. 파일 확장자와 파일 시그니처

  • 파일은 연속적인 비트와 바이트로 이루어져 있다.
  • 파일 식별하는 일반적인 방법은 파일 확장자를 활용하는 것 -> but 안정적인 식별 방법 X (확장자 변경 easy)
  • 시그니처 분석 : 파일 확장자가 아닌 파일의 헤더로 파일을 식별

3. 저장장치와 메모리

  • 데이터를 쓰는 방법은 1. 전자기(electromagnetism) 2. 극미한 전자 트랜지스터(플래시) 3. 빛의 반사(CD, DVD 등)
  • 저장 목적은 잠시 저장하기 위함일 수도 있고 오랫동안 보존하기 위함일 수도 있다.

- 자기 디스크

  • 대부분의 드라이브는 데이터를 자기로 읽고 쓰며, 입자가 자기화되면 1로 아니면 0이 된다.
  • 자기 물질로 코딩되어 있는 알루미늄 플래터(platter)는 스핀들(spindle)이라는 조그만한 침을 중심으로 회전
  • 데이터는 엑추에이터 암(actuator arm)에 부착되어 있는 읽기/쓰기 헤드로 플래터에 공급
  • 엑추에이터 암은 엑추에이터(actuator) 자체에서 전원 공급

- 플래시 메모리

  • 전기가 차단되어도 데이터가 지워지지 않는다. ex) USB 드라이브, 메모리카드
  • 플래시는 트랜지스터로 구성되며, 트랜지스터에 전하가 있으면 1로 아니면 0이 된다.
  • 플래시 기반의 하드 드라이브는 점점 상용화 되어가며, SSD나 솔리드 스테이트 드라이브(Solid State Drive)라 불림
  • SSD는 여러 이점(속도, 내구성 등)이 있으며, 제 11장에서 SSD로 인한 문제를 다룰 것

- 광 저장장치

  • 광 저장장치는 광 디스크에 있는 반사 물질과 레이저를 사용하여 데이터를 쓰고 읽는다.
  • 디스크 표면을 울퉁불퉁하게 제조하여 lands라 불리는 공간에 따라 다른 형태로 반사되도록 함
  • 컴퓨너는 반사되는 빛의 변화를 데이터로 변환하며, CD, DVD, Blu-ray 디스크 등 존재

- 휘발성 vs 비휘발성 메모리

  • 메모리와 저장장치 모두 데이터를 저장하는 역할을 하는 내부 하드웨어
  • 메모리는 단기간 데이터 저장, 저장장치는 좀 더 영구적 저장하는 데 사용
  • RAM에 있는 데이터는 전력 공급되는 동안만 존재하며 이러한 속성을 가진 메모리는 휘발성 
  • RAM은 현재 CPU에서 작업 중인 모든 데이터를 저장
  • 데이터는 RAM -> CPU 전송되어 실행
  • 이제는 포렌식 분석 하드 드라이브에만 초점 X ex) AOL 메신저, MSN 메신저는 컴퓨터 실핼 중일 때 RAM에만 저장

4. 컴퓨터 환경

  • 컴퓨터의 다양한 환경은 데이터의 검색, 툴의 사용 등 수집 과정에 영향
  • 환경은 1. 독립형 2. 네트워크 3. 메인프레임 그리고 4. 클라우드 
  • 독립형 컴퓨터는 다른 컴퓨터에 연결되어 있지 않은 컴퓨터
  • 네트워크 컴퓨터는 적어도 하나 그리고 잠재적으로 많은 다른 컴퓨터에 연결되어 있는 컴퓨터 -> 변수 多
  • 독립형과 달리 메인프레임 시스템은 프로세서, 저장장치, 그리고 프로그램 모두가 한 위치에 집중 통제

- 클라우딩 컴퓨팅

  • 메인프레임처럼 컴퓨터 자원은 로컬 컴퓨터에서 다른 중앙화된 위치로 이동
  • 클라우드는 컴퓨터 인프라, 플랫폼, 소프트웨어 제공하며 사용한 만큼만 비용 지불 시스템
  • ex) 마이크로소프트, 구글, 아마존
  • 클라우드 서비스는 인프라 서비스(Infrastructure as a Service, IaaS), 플랫폼 서비스(Platform as a Service, Paas), 소프트웨어 서비스(Software as a Service, SaaS) 등 포함

- IaaS

  • 기업은 서비스 제공자로부터 서버, 저장장치 같은 하드웨어를 대여 받음

- PaaS

  • 개발자가 하드웨어, 운영체제, 저장장치, 서버 등을 빌릴 수 있도록 한다.
  • PaaS에서는 운영체제를 자주 수정하거나 업그레이드 가능해서 매우 유연

- SaaS

  • 인터넷을 통해 고객이 필요한 소프트웨어 제공, 서비스 제공자가 관리 및 유지함

 

  • 클라우드의 데이터는 국겨이 없어 다른 국가에 있을 수도 있다.
  • 제 11장에서 클라우드와 포렌식에 대한 영향을 자세히 살펴보자

5. 데이터 종류

  • 데이터는 크게 1. 활성 2. 숨은 그리고 3. 아카이브 데이터로 구분 가능
  • 데이터 종류에 따라 접근 방식을 다르게 하여 효율적 처리 가능

- 활성 데이터

  • 활성 데이터는 매일 컴퓨터에서 사용하는 데이터
  • 윈도우 탐색기로 파일 위치 찾을 수 있으며, 드라이브에 할당된 공간에 있는 파일

- 숨은 데이터

  • 이미 삭제되었거나 부분적으로 덮어써진 데이터
  • 더이상 OS에서 관리하지 않으며 윈도우 탐색기로도 보이지 않음
  • 숨은 데이터를 수집하려면 비트스트림(bit stream)이나 포렌식 이미지 필요

- 아카이브 데이터

  • 외장하드, DVD, 백업 테이프 등 여러 가지 형태로 존재
  • 백업 매체의 종류와 연대가 복잡도를 결정하는 주요 요소
  • 백업 테이프는 처리하기 어려운데, 더이상 생산되지 않는 소프트웨어나 하드웨어로 만들어졌다면 더 어려움
  • 더 이상 생산되지 않거나 아예 회사 자체가 사라졌을 때 레거시 데이터(legacy data)라 부름

6. 파일 시스템

  • 파일 시스템은 드라이브의 사용 가능한 공간과 각 파일의 위치를 관리
  • 할당되지 않은 공간이라고 불리는 사용 가능한 공간은 비어있거나 그 위치에 있던 기존의 파일이 삭제된 공간임
  • 파일 시스템의 종류는 다양한데, 흔히 보이는 것은 FAT, NTFS, HFS+

- FAT(File Allocation Table)

  • 오래된 파일 시스템
  • FAT12, FAT16, FAT32, FATX 4가지 유형
  • 최신 운영체제에서는 거의 사용하지 않지만 플래시 메모리에서는 자주 사용됨

- NTFS(the New Technology File System)

  • 윈도우 7, 비스타, XP 그리고 서버 제품군에서 사용
  • NTFS는 FAT보다 강력하고 다양한 기능 존재 ex) 디스크 오류 복구, 대용량 하드 드라이브 지원, 향상된 보안

- HFS+(Hierarchical File System)

  • 애플 제품에서 사용
  • HFS+는 HFS의 업그레이드 버전

7. 할당된 공간과 할당되지 않은 공간

  • 파일 시스템은 하드 드라이브에 있는 공간을 1. 할당된 공간 2. 할당되지 않은 공간 으로 분류

호스트 보호 영력(Host Protected Areas, HPA)와 디바이스 설정 오버레이(Device Configuraation Overlays, DCO)는
하드 드라이브의 숨겨진 영역이며 보통 탐지하기 어렵다.

제조사에서 생성한 것이며, 호스트 보호 영역은 운영체제 복구 목적으로 진단 툴이 있을 수 있다.

-> 용의자가 데이터를 숨기기 위해 호스트 보호 영역에 사용하는 것은 매우 드물다.

 

  • 운영체제는 할당되지 않은 공간에 있는 데이터 볼 수 X
  • 그렇다고 할당되지 않은 공간이 "빈 공간"이라는 것을 의미하지 않음

- 데이터의 영속성

  • 삭제된 파일은 다른 데이터로 덮여써지기 전까지 하드에 그대로 있음

 

  • 파일 시스템의 역할은 모든 파일과 저장공간을 관리함!!
  • 파일은 반드시 한 곳에서 저장되는 것이 아닌 하드 드라이브 플레터 여기저기 분산되어 저장
  • 파일 시스템의 의무는 분리된 클러스터를 관리하여 다시 접근시 재구성하는 것
  • 물론 파일 조각들이 서로 가깝게 있으면 컴퓨터 속도 향상

 

  • 일반적으로 덮어 써진 파일은 복원 불가능으로 여김
  • 그러나 일부만 덮어 써서 슬랙 공간(slack space)이 있으면 남은 부분 복원 가능 

8. 자기 하드 드라이브의 데이터 저장 방식

  • 컴퓨터는 섹터(sector) 단위로 데이터를 저장
  • 섹터 단위를 다 채울 필요는 없지만 초과하여 저장할 순 없음
  • 섹터가 최소한의 저장 단위지만 컴퓨터 운영체제는 데이터는 클러스터(cluster)로만 저장함

만약 섹터가 512bytes이고 파일의 크기가 1024 bytes이면 두 개의 다른 섹터에 저장한다.

이후 해당 파일 삭제한 후 새로운 파일의 크기가 780 bytes로 우연히 같은 자리를 덮어 씌웠다 가정하자

그렇다면 남은 244 bytes가 바로 슬랙 공간(slack space)이다.

 

  • 슬랙 공간에서 기존 파일의 조각을 복구 할 수 있음 -> 충분한 정보가 담겨 있을 가능성 
  • 슬랙 공간은 사용자나 운영체제가 접근할 수 없어서 용의자는 알지 못한다.

- 페이지 파일 (또는 스윕 공간)

  • 하드 드라이브는 현재 사용하지 않는 데이터 및 프로그램 저장하는데 사용됨
  • 하드 드라이브가 느리기에 RAM에서 모든 데이터와 명령을 CPU로 전송
  • 가상메모리를 페이지 파일(page file) 또는 스웝 공간(swap space)라 부름
  • 메인 메모리는 RAM(Random Access Memory)으로, 현재 컴퓨터에서 작업 중인 모든 것을 저장
  • "모든 데이터와 명령어"는 반드시 "메인 메모리"에서 CPU로 전달되어야 함
  • RAM이 모두 소모되면 페이지 파일로 옮겨 RAM의 공간을 확보
  • 따라서 페이지 파일은 드라이브 그 어디에도 없는 파일이나 파일의 조각이 저장되어 있을 수 있으므로 중요

페이지 파일에서 다음 내용을 볼 수 있다.

1. 덮어써지기 전까지 데이터는 하드에 남아 있다.

2. 페이지 파일은 지속적으로 사용되는 것이 아니기에 일부 데이터는 오랫동안 저장되어 있을 수 있다.

3. 페이지 파일은 특정 시점에 RAM에 저장되어 있던 데이터가 저장된다.

즉, 어떤 데이터도 저장될 수 있다는 것! 암호화되지 않은 비밀번호가 남아 있을 수 있다.

 


9. 컴퓨터 기본 기능 - 정리

  • 파일은 특정 구조나 형식을 지님
  • 파일의 시작 부분은 "헤더", 파일의 끝 부분은 "푸터(footer)"
  • 파일의 헤더는 메타데이터 즉, 데이터에 관한 데이터임

 

  • 하드 드라이브에 파일이 저장된다고 연속적인 클러스터에 반드시 저장되는 것 X
  • 플래터의 다른 부분 혹은 완전히 다른 플래터에 존재할 수도 있음

 

  • 파일 작업을 하려면 RAM에 로드되고 CPU로 전달되어야함

요약

  • 자기, 광, 플래시 등을 포함하여 서로 다른 형태로 파일을 저장함 -> 포렌식 방식도 달라짐
  • 메모리와 저장장치의 목적은 다르다. 메모리는 휘발성(ex, RAM)이며 저장장치는 비휘발성(ex, 하드 드라이브)
  • 컴퓨터의 파일 시스템은 어떻게 데이터를 저장하고 읽어오는지 결정하며 읽기 위해 조각 재구성 
  • 컴퓨터 환경이 모두 동일한 것이 아니라, 독립형, 네트워크, 클라우드 컴퓨터 존재

 

 

 

<출처>

이제 시작이야! 디지털 포렌식 - 존 새몬스 지음

Comments