윈도우 포렌식 두번째입니다.

 

오늘은 레지스트리,인터넷접속, 윈도우파일분석등을 알아봅니다.

레지스트리란 “운영체제 내에서 작동하는 모든 하드웨어,소프트웨어,사용자 정보 및 시스템 구성 요소등을 담고 있는 데이터 베이스”를 말하며 다음과 같은 5개의 상위키를 가진다

 

HKEY_CLASSES_ROOT

- 파일 확장자에 대한 정보, 각 파일과 프로그램간의 연결에 대한 정보, 마우스 오른쪽 단추의 등록정보등..

HKEY_CURRENT_ROOT

- 현재의 로그인중인 사용자들에 대한 등록정보, 응용 프로그램의 우선순위, 보안접근 허용 여부

HKEY_LOCAL_MACHINE

- H/W 구성 초기화 파일, 제어판과 밀접, 사용중 H/W , S/W에 대한 정보

 HKLM/Software/CLASSES : HKEY_CLASSES_ROOT의 키값과 동일한 값 가짐, 두곳이 연동되어 생성이나 삭제가 같이 이뤄짐

HKEY_USERS

- 이전 사용자 초기화 파일 보관, 두키 사이가 겹치면 HKEY_CURRENT_USER가 우선

HKEY_CURRENT_CONFIG

- 현재의 사용중인 윈도의 디스플레이 정보 와 프린터 관련정보

HKEY_DYN_DATA

- wind95,98,me까지 존재

 

윈도우 레지스트리분석

-         최근 열었거나, 실행,수정한 문서에 대한 사용흔적

MRU (most Recently Used)

- 가장 최근 사용된 파일 프로그램에 대한정보 목록을 말하며 일부정보가 레지스트리에 기록

HKCU\Software\Microsoft\windows\currentVersion\exploer\ComDlg32\OpenSaveMRU

- 최근 Open 되거나 Save된 파일 목록

HKCU\Software\Microsoft\windows\currentVersion\exploer\ComDlg32\LastVisitedMRU

- OpenSaveMRU 에 새로운 항목이 추가되면 이 키에 새로운 값이 생성되거나 수정

HKCU\Software\Microsoft\windows\currentVersion\exploer\ComDlg32\RecentDocs

- windows explorer를 통해서 최근 Open된 파일 목록 기록

HKCU\Software\Microsoft\windows\currentVersion\exploer\ComDlg32\RunMRU

- 시작->실행 선택해 실행된 명력 목록 유지. 가장 최근 추가된 명령어 항목이 가장 최근

사용된 명령어 의미하지 않음

 

HKCU\Software\Microsoft\windows\CurrentVersion\exploere\UserAssist

- 사용자가 접근한(실행한) 프로그램, Shortcut, control panel applet등 기록

 

HKLM\SYSTEM\ControlSet00x\Enum|USBSTOR

- USB 장치 정보 저장

 

그외 몇가지 더 있으나 필요하시면 좀 찾아 보시면 될듯합니다..

왠만하면 pc에 기록이 다 남으니 허튼짓은 안하시는게..^^;

 

그외 이제 인터넷 접속기록 부분은 History정보와 Cache 정보 Cookie 정보등을 살펴 보아야한다.

History 경우 간혹 ID와 Password 관련정보 있을수 있고cache 경우 삭제파일들을 복구하여 검색하며, Cookie 경우 사용자정보,세션정보가 저장관리되므로, 유용하게 사용된다.

 

마지막으로 윈도우 파일분석입니다.

작업에 따른 파일의 MAC시간 변경

파일생성 : 수정한날짜, 만든날짜,접근날짜 모두 일치

파일이름변경 : 접근날짜

파일내용수정 : 수정날짜,접근날짜,

파일복사 : 만든날짜, 접근날짜

파일이동 : 접근날짜

파일다운로드 : 만든날짜, 수정날짜, 접근날짜 변경

메신저에 의한 파일생성 : 만든날짜, 수정한날짜, 접근날자 변경

파일압축해제 : 만든날짜, 접근날짜 변경

 

파일의 MAC 수집

 

dir /t:a /s /o:d c:\ -> C드라이브에서 각각의 모든 파일, 디렉토리에 대한 접근 시간

dir /t:w /s /o:d d:\ -> D드라이브에서 각각의 모든 파일, 디렉토리에 대한 기록한 시간

dir /t:c /s /o:d e:\ -> E드리이브에서 각각의 모든 파일, 디렉토리에 대한 작성 시간

 

휴지통 파일에서 INFO2파일의 경우 windows 2K/xp.에서 800bytes 크기 가집니다.

 

이상으로 윈도우 포렌식을 또 마칩니다..

다음에는 머할까요..리눅스 포렌식쪽으로 해보겠슴다...

 

Posted by ^________________^
,

투랍니다..

드뎌 포렌식 교육이 종료 되었습니다..

언제 끝나나 했는데..ㅋㅋ 6주 짧은 기간였지만 직장다니면서 하기는 좀 빡센…^^;

무사히 수료 해서 수료증 받았슴당..ㅋㅋ

시험만 합격하면..흐….

 

이번시간에는 지난시간에 포스팅한 파일시스템에 이어 윈도우 포렌식을 시작합니다.

 

윈도우에 대해 대략 알아보고 휘발성 증거, 레지스트리,인터넷접속, 윈도우파일분석등을 알아봅니다.

 

우선 윈도우의 구조,포르세스,폴더등을 알아본다.

 

윈도우 구조

 

지식인에서 아래 그림 한 개 찾았는데..다른 좋은 그림 있음 연락을..^^;(출처는 그림에)

 



윈도우 관련 프로세스는 다음 링크를 참조하자.

<윈도우 프로세스 자세히 보기>

윈도우중요 폴더로는..

로그인 계정에 관련 파일을 저장하는 C:\Documents and Settings 폴더

 

C:\Documents and Settings\사용자\ 하위디렉토리 내용은 다음과 같다.

\Cookies : 쿠키 정보

\local Settings : 응용 프로그램 데이터, 기록 및 임시파일

\Recent : 최근 사용한 문서 및 액세스한 폴더에 대한 바로가기

\Templates : 사용자 템플릿 항목

 

운영체제가 설치된 C:\Windosw 폴더와 하위 디렉토리 내용은 다음 과 같다.

Downloaded Program Files : 인터넷에서 다운로드 받은 플러그인, ActiveX등 저장

System32 : Window 실행에 핵심이 되는 DLL, Driver가 저장되어 있는 폴더

System32\config : 윈도우의 레지스트리 파일 저장

 

그리고 윈도우에 설치되는 각종 응용 프로그램이 저장되는 C:\Progrma Files 등이 있다.

 

다음으로, 윈도우의 휘발성 데이터와 비휘발성 데이터에 대해서 알아본다..

증거 수집전 중요한 사항으로 다음이 있다.

 

“로카르 법칙(Locard’s  Exchange Principle )은 접촉하는 두 개체는 서로 흔적을 주고 받는다”

 

사용자 또는 조사자 그 누구든 간에 동작중인 시스템을 다루면 해당 시스템은 변화가 발생하므로, 조사자 또는 초기 대응자는 이 법칙을 염두해야 한다.

 

휘발성 데이터란 전원이 끊어지면 손실되는 데이터로 시스템 명령어 및 Tool 활용해서 수집한다.

휘발성 데이터 수집은 현재 진해오디고 있는 (실시간, Live) 정보를 통해서 추적(해킹,바이러스등)

 

Order of volatile (휘발성 순위)

-         휘발성 데이터는 동작중인 시스템의 메모리에 존재하고, 존재하는 휘발성 데이터들의 수명은 그 특성에 따라 다르다.따라서 휘발성 증거 수집에 있어 우선순위 고려 해야 함

 

일반적 환경에서의 Order Of Volatile

-         Register, cache

-         Routing table, arp cache, process table, kernel statistics, memory

-         Temporary file system

-         Disk

-         해당 시스템의 Remote logging and monitoring dta

-         Physical configuretation, network topology

-         Archival media

 

Windows 휘발성 데이터

1> 날짜 시간관련

-         date /t : 날짜, time/ t : 시간

현재 시간과 비굥하여 시스템 시간과 표준 시간이 차이나면 따로 기록해야함

시스템 시간 부팅시 CMOS 통해서 확인가능

실제 시간 비교 telnet time.kriss.re.kr 13

 

2> 시스템 관련

-         psinfo -h –s –d  : 서비스팩 설치 현황 및 소프트웨어 설치 현황으로 사고상황 파악

 

3> 사용자 관련

-         set user : 로그인한 사용자의 도메인, 이름, 프로파일

-         net user : 로컬 컴퓨터의 사용자 정보수집

-         ntlast 현재 시스템 사용자 로그 확인

-i : 성공한 사용자 –r : 원격지 로그인 –f : 로그인 실패 기록

-         psloggedon : 현재 접속한 사용자(공유폴더 포함)

-         net sessiong : 외부 접속 사용자 목록

 

4> 공유폴더 관련

-         logonsession –p :현재 접속된 모든 User의 접속 시간, 실행된 프로세스 정보획득

-         net share [공유 이름] : 로컬 컴퓨터의 모든 네트워크 공유 자원에 대한 정보

-         hung : 공유 폴더 및 사용자 정보

-         관리목저 기본폴더

내컴퓨터 -> 관리도구 -> 공유폴더 -> 공유 or 시작 -> 실행 -> fsmgmt.msc

-         psfile : Remote에서 opne한 파일정보

단점:Open후 오랜 시간 유지하면 정보 안보임, 극복은 주기적 batch file

-         openfiles : remote에서 open한 파일 정보 , net file 시스템 명령과 동일

 

5> 네트워크 관련

-         ipconfig(/all) : local ip 정보 및 mac 주소

-         route PRINT(netstat –r ) : 라우팅 테이블 정보 , 패킷 흐름 변경 확인

-         arp -a : arp cahce table 정보 보여줌

-         netstat (-ano) : 현재 사용중인 tcp/u에 정보

-         fport : 대기중인 포트(Listening 상태)를 어떤 응용 프로그램이 사용하는지에 대한정보

-         Tcp Viewr : 프로세스가 사용하는 ㅔ트워크 정보

 

6> 프로세스 관련

-         pslist (-t) : 실행중인 모든 프로세스 목록 cpu 점유, 메모리 사용량에 대한 정보 수집

-         Listdlls : 현재 프로세스가 사용중인 DLL 목록

-         Handle : 현재 프로세스가 사용중인 모든 객체 참조 목록

-         Process explorer : 프로세스 정보

-         Process monitor : 프로세스 작업 모니터링

-         File monitor : 프로세스에 대한 operation 감시

-         Net start : 현재 윈도우 시스템에서 실행되고 있는 서비스 정보 수집

-         Psservice – 현재 윈도우 ㅣ스템에ㅓ 시행되고 있는 서비스 정보 수집

 

7> 파일 관련

-         Hfind : 숨김 파일 위치 및 정보

-         TimeLine 분석 : 탐색기 -> 도구 -> 폴더 옵션 / 검색 -> 검색 옵션

 

8> 클립보드

-         Clipbrd(시작->실행->cliprd)  : 현재 윈도우 시스템의 클립보드 내용 표시

주의 :  ESC Key 누르면 Clipbrd 내용 지워질수 있음

 

9> Command History

-         doskey /history : 현재 Dos  명령창에서 이전 입력한 명령어 리스트 출력

주의 : 현재 명령창 종료 되면 메모리서 삭제

 

10> 관련 도구

-         md5sum –c / sha1sum -c : 변경된 파일 체크

-         FRED

-         FIRE

-         IRCR

 

레지스트리,인터넷접속, 윈도우파일분석등은 다음 포스팅으로…

Posted by ^________________^
,

..지난번 말씀 드린 바 와 같이 파일시스템 및 윈도우 포렌식에 대해서 이어가도록 하겠습니다.

 

파일시스템에 대해 알아보고, 하드디스크, 부트 로더, FAT 파일시스템 정도까지 이어 가 보겠습니다.

 

파일시스템이란 자료의 기록이 가능한 저장매체의 근간을 이루는 것으로, 매체 내에 데이터가 저장 및 관리되는데 있어 프로세스 권한에 따라 데이터를 노출, 은닉, 압축, 암호화하며 구조적

손실 시 이를 다시 원래 상태로 회복 시키는 등의 역할을 수행, 수반 보조가 필요한 총체적인

데이터 운용 기술이 적용된 시스템이다.”

 

다시 정리하자면 파일시스템은 저장장치 내에서 데이터를 읽고 쓰기 위해 미리 지정된 약속이다.

 

그럼 파일시스템에 대한 분류를 알아보자

일반적인 파일시스템으로 FAT, HPFS, NTFS, UFS, Ext2,3 등이 있으며, 플래시 파일시스템, CD-ROM 파일시스템, 네트워크 파일시스템, 가상 파일 시스템등이 있다.

 

하드디스크에 구조에 대해서 언급하고 넘어 가기로 한다. 자세한 구조는 다음 링크 참조하자.

 

<자세한 구조 보기>

 

하드 디스크는 간략히 실린더, 트랙(=헤드,head) , 섹터로 이뤄져 있으며 1클러스터 = 4섹터이다.

 

논리적 섹터와 물리적 섹터의 장단점은 다음과 같다.

분류

물리적섹터

논리적섹터

장점

모든 섹터 다룸

사용 편리               

단점

사용이 어려움

분할된 섹터만 다룸

 

부트로더(부트스트랩 로더)ROM에 저장되며, 커널을 메모리에 올려주는 역할을 하는 프로그램으로, MBR에 존재하며 커널 로더라고도 불린다.

운영체제를 메모리에 올려놓는 역할을 하는 기계어 코드들의 집합을 IPL이라고 하고,

각 하드 디스크의 첫번째 섹터인 MBR에 존재한다.



부트로더 분석시 필요내용은 다음과 같다.

실제 부트 섹터는 메모리 0000:7C00 (메모리에 MBR값 올리는 위치) 에서 수행된다.

모든System에서 동일하게 0000:0413에는 주기억 메모리가 저장되어 있다.

0000:004c에는 INT 13h의 세그먼트와 오프셋이 저장되어 있다.


 

다음으로 파티션에 대해 알아보자.

파티션은 컴퓨터에서 디스크나 메모리 등의 저장매체를 나누는 것이다.

종류로는 Dos 파티션, Apple 파티션, BSD파티션, 솔라리스 디스크 레이블 등이 있다.

 

 

Dos 파티션 테이블




FAT파일시스템에 대해서도 들여 보자..

관련 내용 및 표의 출처: IT EXPERT, 임베디드 개발자를 위한 파일시템의 원리와 실습 에서이다.



                                                       FAT 파일시스템 비교



클러스터 크기가 크거나 작음에 따라서 장단점이 있다. 우선 클러스터의 크기가 작은 경우의 장점은 클러스터 할당 때문에 버려지는 용량이 적다는 것이고, 단점은FAT 영역의 크기가 커진다는 것이다.

 

반면에 클러스터의 크기가 큰 경우의 장점은 FAT 영역의 크기가 작다는 점과 클러스터의 크기가 작은 경우에 비해 파일당 할당하는 클러스터 수가 적기 때문에 그에 따른 작업의 오버헤드(overhead)가 적다는 점이다. 단점은 크기가 작은 파일이 많은 경우 버려지는 용량이 많아진다는 점이다. 이렇게 버려지는 부분을 슬랙(slack)이라고 한다.



                                                클러스터 크기에 따른 장단점


이것으로 허접하게 윈도우 파일시스템을 정리해봅니다..

 

다음에는 윈도우 포렌식으로 넘어가보겠습니다.


 

Posted by ^________________^
,