반응형

 

○ 목차


1. 의의


2. 이론
2-1. FILE의 개념
2-2. 파일 시스템의 FILE 관리 by “inode” !!
2-3. “inode”에 대하여 더 알아보자
2-4. EXT2 파일시스템 구조 분석


3. 실습 – 삭제된 파일 복구하기
3-1. Bitmap 에서 inode 를 사용한다(1) 표시된 경우
3-2. Bitmap 에서 inode를 사용않는다(2) 표시된 경우
3-3. inode 가 남아있지 않는 경우
- Data Carving (Sleuthkit tool, Keyword Searching)

4. 참고문헌

반응형
Posted by CCIBOMB
Digital Forensics/EnCase2010. 3. 26. 23:19
반응형

0.    Unallocated Cluster

-      Encase가 제대로 파일 시스템을 인식하지 못한 상태

 

1.    MBR의 복원

-      Bootcode는 깨끗한 MBR Bootcode를 복사하여 붙여넣고,

-      Partition Table이 깨진 경우 각각의 파티션 정보를 수집하여 직접 Partition Table Layout에 맞춰 입력해주도록 한다.

-      Forensics 관점에서는 MBR을 완전히 복원할 필요 없이(부팅이 목적이 아니므로), Partition Table만 복원하는 것으로 충분하다.

 

2.    VBR 의 복원

-      VBR은 수작업으로 복원하기가 어렵다. 각 필드 하나하나를 채우기가 어렵기 때문이다.

-      일반적인 경우 백업본을 활용하는 것이 좋다.

-      NTFS인 경우 파일 시스템의 맨 마지막 섹터에 백업본이 있다.

(파티션 매직 같은 프로그램을 사용했을 경우 백업본을 정상적으로 놔두지 않은 경우가 많아 복원이 어렵기도 하다.)

-      FAT인 경우 FAT12 FAT16은 백업본이 없고, FAT32의 경우 백업본이 존재하나 위치가 고정되어 있지 않다. (아이러니하게도 VBR에 백업본의 위치가 기록되어 있다.)

-      따라서, VBR이 손상되었을 경우, 문자열 Search를 하거나(하지만 결국 Reserved영역 안에 있으므로, 섹터 사이즈가 크지 않기 때문에 시간은 얼마 걸리지 않는다.), MS의 경우에 대체로 VBR로부터 6섹터만큼 떨어진 곳에 있으므로 이를 확인해본다.

-      Encase Forensic Training버전의 경우, 복구할 VBR 위치에서 'Add Partition' Option 'Backup Boot Record'를 체크하면 자동으로 VBR 백업본을 활용하여 Partition을 인식하는 기능을 가진다.

-      Encase LE(Law Enforcement) 버전의 경우에는 위의 Option이 존재하지 않으므로, 수작업으로 직접 백업본을 원래 VBR에 덮어써주어야 한다.

-      그러나 Encase는 이미지의 직접 Data 수정이 불가하므로, Encase Prosuite(인증서 필요) PDE 기능을 활용하여 실제 디스크로 인식시키면 된다. 이 또한 없는 경우, 해당 이미지 파일을 Winhex에서 열어 백업본 위치의 Block을 복원할 위치에 복사하면 된다.

 

c.f) Encase Prosuite

- PDE(Physical Disk Emulator, 실제 디스크로 인식시켜서 활용가능),

- VFS(Virtual File System),

- EDS(Encase Decryption Suite) 기능 활성화.

c.f) PDE 활용

- Mount as Emulated Disk : EncaseServer 역할을 하고, Client에서

수정여부 기록 가능 (Disable Caching uncheck)

 

3.    Encase가 인식한 파티션 외에 다른 파티션이 존재하는지 여부 확인 (Keyword Searching)

-      하드 전체를 선택 한 다음 Unused 공간의 Report를 확인하여, 공간이 너무 많이 남은 경우 다른 파티션이 있었는데 삭제 된 경우로 의심해 볼 수 있다. (또는 MBR 손상을 의심할 수 있다.)

-      이 때 Unused space에서 'OEM String' Keyword Searching을 통해 VBR을 찾아서 확인해 볼 수 있다.

-      Keyword Searching 방법

New Keyword           : 키워드 생성

GREP (check)            : 정규식 사용

Search expression       : (NTFS)|(MSWIN4.1)|(MSDOS5.0)

Name                  : VBR OEM String

Case Sensitive (check)    : 대소문자 구별하는 경우

Unused Disk Area (check) : 인식하지 못한 디스크 공간에서 VBR 검색

Selected entries only – Search each entry for keywords.

Selected keywords only (check) : 선택한 키워드만 검색

-      결과는 'Search Hits' 탭에 나오며. Backup Boot Record여부를 섹터 번호를 확인한다. Encase Sector 단위로 검색을 하지 않아 오탐이 많으므로 주의한다.

-      이후 VBR 시작 위치가 확인되면, 직접 해당 위치에 가서 Add partition 을 해주면 된다.

(이때 Unused sectors before VBR 에서 Primary Partition의 경우, 앞에 Boot Record가 없이 바로 붙어있으므로 '0', Extended Partition의 경우, VBR63섹터 앞에 Boot Record가 존재하므로 '63'을 입력한다.)

c.f) Keyword Global Keyword Local Keyword로 나뉜다.

Global Keyword : Case 탭 옆의 Keyword. 모든 케이스에서 사용가능.

Local Keyword : Home 옆의 Keyword. 해당 케이스에서만 사용가능.

반응형
Posted by CCIBOMB
Digital Forensics/Linux2010. 3. 17. 00:13
반응형



 3-3-3. 로그파일 수정한 Shell Script 복구하기 (Keyword Searching)

(3-3-2와 같이 Shell Script 파일 중에서 Tool을 사용하여 자동화시켜 찾아낼 수 없는 경우 사용할 수 있는 방법)

 

*. 디스크에서 무작정 '/var/log/messages/'가 들어있는 모든 파일의 앞뒤를 뒤져서 script 로 보이는 부분을 찾아내는 수작업이 필요한 방법이다. 삭제되었어도 디스크상에는 남아있으므로 삭제여부와 상관이 없으며, 시간과 노력이 많이 드는 만큼, 확실한 결과를 보증한다.

 

i. "/var/log/messages"가 조작됐다는 전자 하에(MAC Time 분석 등을 통해 알아낼 수 있음) 모든 이미지 중 해당 text 근처를 찾아보도록 한다. strings를 이용한다.

 

strings *.dd | egrep -B 10 -A 10 '/var/log/messages' > clear_log.txt

// 앞에 10라인 뒤에 10라인 찾아서 clear_log.txt 에 저장

-B 10 : before 10 lines        -A 10 : append 10 lines


ii. clear_log.txt 내용 확인
(각 이미지의 „/var/log/messgaes‟ 들어간 부분의 앞뒤 10줄씩이 모두 저장되어있는 text 파일)



     iii. clear_log.txt
중 로그파일 수정 script 추측되는 부분 확인
           (당연히 script 전체가 아닌 부분만 있다. 앞뒤 10줄만 출력한 것이기 때문이다.)


     iv.
공격코드의 일부가 있는 행의 앞, Line 수를 여러 번 수행해보며 Script 전체를 확인해본다.


      v.
찾은 공격코드


     vi. Keyword Searching
기법을 사용하는 경우 (포렌식 관점) :

로그파일을 생성하거나 수정한 실행 파일을 찾거나(지워진 경우 복구하거나),
환경설정파일을 참조한 실행파일을 찾거나(지워진 경우 복구하거나),
이미 삭제된 루트킷 설치한 script 파일을 복구하거나(설치된 파일들의 이름을 아는 경우에만 가능),
지워진 로그 파일이나 히스토리 파일을 복구하는 등 활용분야가 넓다.


4.
참고문헌

 
      
http://old.honeynet.org/challenge/index.html

      http://www.ibm.com/developerworks/kr/library/au-speakingunix14/index.html

      http://publib.boulder.ibm.com/infocenter/systems/index.jsp?topic=/com.ibm.aix.files/doc/aixfiles/inode.h.htm

      http://lefoot.egloos.com/tag/inode/page/1

      http://wiki.kldp.org/Translations/html/The_Linux_Kernel-KLDP/tlk9.html

 


반응형
Posted by CCIBOMB