포렌식/파일시스템 (파일시스템 포렌식분석)

(Part 1 기초) . Chapter 1. 디지털 조사 기초

Pikigod 2020. 1. 14. 18:48

책의 첫 페이지부터 사람들에게 부담을 줄 수 없다고 생각을 했는지, 시작은 기초부터 되어있다.

우선 어려울것만 같은 개념부터 하나씩 따라가 보자


▶ 디지털 조사와 증거

디지털 조사와 디지털 증거에 대해 간략하게 생각을 해보자. 

그냥 글씨대로 생각해보면 말 그대로 디지털상을 조사하고 그 속에서 증거를 찾는다고 생각할 수 있다. 맞다. 여기서 핵심은 무엇일까?

'범죄와 관련된 사고, 디지털 장치'에 대해 조사를 하고 증거를 찾는 것을 말한다.

그렇다면 왜 조사를 하고 증거를 찾을까?

바로 '가설을 뒷받침하고, 반박을 위해서'이다.

 

범죄자가 만약 디지털 장치를 이용해서 범죄를 일으킨다고 가정하자. 그러면 수사관은 디지털 장치에서 증거를 통해  '왜, 누가, 어떤'에 대해 답을 할 수 있어야 한다. 그에 대한 답을 하기위해 '조사'를 시작한다.

 

우리는 증거를 두가지의 관점으로 볼 수 있는데 '분석적인 관점', '법률적인 관점'이 있다.

법률적인 관점은 재판에서 사용되기 때문에 여기서는 '분석적인 관점'만을 다루기로 한다. 증거를 얻기 위해 '데이터 수집', '로그 복구', '취약점 파악' 등 다양한 방법을 사용할 수 있다.

 

▶ 막간 용어 개념

 

디지털 조사 vs 디지털 포렌식

디지털 조사 : 객체 조사를 위해 과학기술을 사용하는 것

디지털 포렌식 : 객체 조사를 위해 과학기술을 사용하고 법정에서 활용하기 위한 것

 

동적분석(live analysis) vs 정적분석(dead analysis)

동적분석 : 조사중인 시스템의 운영체제나 자원을 사용하는 것.

정적분석 : 증거를 찾기 위해 신뢰하는 운영체제에서 신뢰하는 응용프로그램을 통해 분석하는 것.

(말이 헷갈리게 되어있는데 간단하게 동적분석은 실제 그 기기를 이용해서 그자리에서 찾아내는 것을 의미하고, 정적분석은 안전한 곳으로 가져와서 안전한 환경에서 따로 분석을 하는것으로 생각하면 이해가 된다.)

 

 

▶ 디지털 범죄현장

디지털 범죄현장 : 소프트웨어나 하드웨어로 만들어진 디지털 환경을 의미

이 디지털 범죄현장에서의 조사절차는 다음과 같다.

순서는 중요하지 않다.

다음에 좀 자세히 보자


▶ 시스템 보존 단계

-> 디지털 범죄현장을 상태그대로 유지하는 단계이다.

 

▷ 데이터 보존 기술

-> 따로 저장되거나 그러한 이벤트에 의해 데이터가 덮어씌워지면서 지워지는 증거를 줄이는 것이다. (저장장치에 쓸수있는 프로세스의 수를 제한할 수 있다.)

 

▷ 데이터 변경 검증을 위해 암호해시 계산

-> 많이 알고 있는 MD5, SHA-1과 같은 해시함수를 이용해서 무결성을 보장 할 수 있어야 한다.

 

▶ 증거 탐색 단계

-> 사고 유형에서 일반적으로 발견됐던 지점을 조사(라고 써져있다.)

예를 들면, 웹브라우징 습관을 알기 위해 캐시나 히스토리, 북마크 등을 참조한다. 즉, 어떠한 사건의 일반적인 특징을 정의하고 그 특징을 따라서 조사를 한다고 보면 된다.

 

▷ 탐색 기술 ( 대부분 파일시스템과 파일 내부에서 이루어진다.)

예를 들면 '이름, 이름패턴, 키워드, 정상파일과 해시비교, 시그니처' 등을 이용해서 파일을 탐색 할 수 있다.

 

▶ 사건의 재구성 단계

-> 위에서 얻어낸 증거를 통해 어떠한 사건이 발생했는지 판단하는 것

 

중요! "어떠한 파일을 찾아낸다고해서 증거가 되는것은 아니다. 파일이 다운로드 되어있는 것은 단순한 이벤트에 불과하기 때문이다. 악성코드를 통해서 우리가 모르는 사이에 다운로드가 되었을수도 있다. 따라서 어떠한 응용프로그램이 그것을 다운로드했는지 알아내는 것이 더 중요하다."

=> 응용프로그램과 운영체제에 대한 이해도가 필요하다.

 

▶ 일반지침(절차의 표준느낌)

"PICL"

(Preservation, Isolation, Correlation, Logging)

조사를 하기 위해서 4가지에 유의하면 된다.

 

▷ Preservation, 보존

* 복사본을 만들고, 원본은 안전한 곳에 보관.

* 무결성을 위해 MD5, SHA-1 등의 해시계산.

* 데이터가 써질수 있는 절차에는 '쓰기 방지 장치'사용 (write-blocking device)

* 동적 분석시 생성파일을 최소화하고, 파일을 사용할 때 변하는 시간등에 유의.

 

▷ Isolation, 격리

악성프로그램이 어떠한 행위를 할 지 모르기 때문에 격리해서 실행해야 한다.

VMWare와 같은 가상환경에서 실행하자

▷ Correlation, 상호연관

독립적인 요인들과 데이터를 상호연관시켜 분석

 

▷ Logging, 로깅

조사와 관련된 행동들을 기록하고 문서화하는 것 -> 변화나, 결론을 내기위해 아주 중요하다.

 

 


1.3 데이터분석

 

▶ 분석유형

-> 디지털 데이터는 설계된 객체이며, 디지털 장치 저장시스템은 가변적이고 계층적 구조를 가진다. 

 

그릴게 많아서.. 글씨가 못생겼다.


▶ 툴킷

-> 거의 모든 도구는 '보존', '탐색'에 초점을 둔다.

 

* Encase : 윈도우기반, 가장 보편적

* Forensic Toolkit : FTK, 윈도우 기반

* ProDiscover : 윈도우 기반

* SMART : 리눅스 기반

* The Sleuth Kit / Autopsy : 유닉스기반의 툴 TSK, 그리고 그 결과를 그래픽으로 보여주는 Autopsy 

 


다음시간에...

 

p.s 생각보다 그림이 많고, 대충 어떤식으로 진행이 될지 이해할 수 있었다.