prof.ysu.ac.kr1).docx · web viewregistry를 이용한 forensic 분석 2.1 설치된 프로그램...

16
시시시 시시시 <Registry 시 RegRipper> 시시시 시시시시 10141324 시시시 1. Registry 시? 1.1 Registry 시 시시 1.2 Registry 시 시시 1.3 Registry 시 Hive File 시시

Upload: others

Post on 09-Jan-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: prof.ysu.ac.kr1).docx · Web viewRegistry를 이용한 Forensic 분석 2.1 설치된 프로그램 목록 2.2 USB 외부 저장 장치 사용 이력 2.3 최근 접근 문서 2.4 접근한

시스템 포렌식<Registry 와 RegRipper>

사이버 경찰학과10141324

권나경

1. Registry 란?1.1 Registry 의 개념1.2 Registry 이 구성1.3 Registry 의 Hive File 목록

2. Registry 를 이용한 Forensic 분석 2.1 설치된 프로그램 목록

목 차

Page 2: prof.ysu.ac.kr1).docx · Web viewRegistry를 이용한 Forensic 분석 2.1 설치된 프로그램 목록 2.2 USB 외부 저장 장치 사용 이력 2.3 최근 접근 문서 2.4 접근한

2.2 USB 외부 저장 장치 사용 이력2.3 최근 접근 문서2.4 접근한 인터넷 주소 목록2.5 최근 실행 명령어

3. RegRipper 란?3.1 RegRipper 툴 소개3.2 RegRipper 툴 설치

4. RegRipper 툴을 사용하여 정보 알아내기4.1 Registry 에서 hivefile 인 system 추출하기4.2 알아낸 정보를 설명 및 분석

5. 출처

RigRipper 라는 툴을 사용하기 전에 기본적으로 Registry 에 대해서 알아야 사용할 수 있기 때문에 Registry 에 대해서 알아보도록 하겠습니다.

<1.1 Registry 의 개념>=> 운영체계 안에서 작동하는 모든 프로그램의 시스템 정보를 담고 있는 데이터베이스=> Registry 에는 부팅 과정에서 사용되는 정보뿐만 아니라 로그인, 서비스 실행, 응용 프로그램

실행, 사용자 실행에 이르기 까지 윈도우 시스템에서 수행되는 많은 활동에 관여한다.=> Registry 에서 모든 값(Value)은 키 내에 위치하며, 키들은 계층형 구조로 되어 있다.=> Registry 에 대해 자세히 들여다 보고 싶으면 [Windows 키]+[R]을 한 뒤 입력 창에 regedit 를

입력하면 된다.

<1.2 Registry 의 구성>

1. Registry 란?

빨간 색으로 표시된 것이 ROOT_KEY

Page 3: prof.ysu.ac.kr1).docx · Web viewRegistry를 이용한 Forensic 분석 2.1 설치된 프로그램 목록 2.2 USB 외부 저장 장치 사용 이력 2.3 최근 접근 문서 2.4 접근한

=> 하이브(Hive) 파일은 Registry 정보를 디스크에 저장한 바이너리 파일이며, 이 파일은 시스템이 로그온 되면 시스템 커널 프로그램에 의해 관리된다.

▶ HKEY_CLASSES_ROOT=> OLE 객체 클래스 ID 와 같은 등록된 응용 프로그램의 정보를 담고 있다.=> HKEY_CLASSES_ROOT\Software\Classes 의 항목을 사용한다.

▶HKEY_CURRENT_USER => 현재 로그인한 사용자의 설정을 담고 있다.

▶ HKEY_LOCAL_MACHINE=> 컴퓨터의 모든 사용자의 설정을 담고 있다.

▶ HKEY_USERS=> 컴퓨터에서 사용 중인 각 사용자 프로파일에 대한 HKEY_CURRENT_USER 키에 일치하는

서브키를 담고 있다.

▶ HKEY_CURRENT_CONFIG=> 실행 시간에 수집한 자료를 담고 있다. 이 키에 저장된 정보는 디스크에 영구적으로 저장되지

않고 시동 시간에 생성된다.

▶ HKEY_PERFORMANCE_DATA=> 런타임 성능 데이터 정보를 제공한다.

<1.3 Registry 의 Hive File 목록>Hive 파일 이름 윈도우 Registry 경로 저장 정보

HKEY_USER\.DEFAULT Default 사용자 계정이 생성될 때, 기본적으로 필요한 정보를 저장한다.

HKEY_LOCAL_MACHINE\SOFTWARE

Software 응용 프로그램 정보

HKEY_LOCAL_MACHINE\SAM Sam 사용자 계정 정보 저장HKEY_LOCAL_MACHINE\ Security 감사정책 및 권한정보 저장

Registry 는 실제 디스크 상에서 “하이브(HIVE)”로 불리는 분리된 파일로 존재하며 윈도우 부팅과정에서 메모리에 적재되어 관리된다.

Page 4: prof.ysu.ac.kr1).docx · Web viewRegistry를 이용한 Forensic 분석 2.1 설치된 프로그램 목록 2.2 USB 외부 저장 장치 사용 이력 2.3 최근 접근 문서 2.4 접근한

SECURITYHKEY_LOCAL_MACHINE\SYSTEM System 하드웨어 드라이버 및 구성정보

HKEY_USERS Ntuser.dat(각 윈도우 계정마다

하나씩 별도로 존재함)

사용자 계정에 설정된 정보저장

=> Registry 의 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\hivelist 경로에 해당하는 하이브 파일의 위치 정보가 저장되어 있다.

=> Registry 는 사용자의 활동 정보나 응용프로그램 사용 흔적, 설치된 하드웨어 및 소프트웨어 정보, 네트워크 설정 정보와 같은 많은 증거와 각각의 키에 마지막 수정 시간이 기록되어 있기 때문에 일종의 로그로써 활용이 가능하다.

Registry 의 키 값의 위치로 사용자가 어떠한 작업을 했는지에 대해 알아보도록 하겠습니다.<2.1 설치된 프로그램 목록>=> Registry 의 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion

\UnInstall 경로에 설치된 프로그램의 이름, 버전, 게시자, 설치 시각, 설치 위치, 소스 경로가 저장되어 있다.

=> 하위 키는 설치된 응용 프로그램의 목록을 가리키고, 값에 설치된 프로그램 정보가 저장되어 있다. 프로그램 추가, 삭제 목록을 조사하여 사용자가 의도하지 않은 특정 프로그램이 설치되어 있는지, 해당 프로그램이 정상적인 프로그램인지를 확인 할 수 있다.

=> 사용자가 최소 한번이라도 응용 프로그램을 실행 했을 경우, Registry HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explirer\UserAssist\HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\UserAssist\{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}\count 경로에 실행한 프로그램의 경로와 실행 유형, 실행 횟수, 최종 실행 시간이 저장된다.

2. Registry 를 이용한 Forensic 분석

Page 5: prof.ysu.ac.kr1).docx · Web viewRegistry를 이용한 Forensic 분석 2.1 설치된 프로그램 목록 2.2 USB 외부 저장 장치 사용 이력 2.3 최근 접근 문서 2.4 접근한

<2.2 USB 외부 저장 장치 사용 이력>=> USB 에 장치를 연결하면 관련 드라이버 정보 등이 Registry 에 저장되는데 이 정보를 분석하여

대상 시스템에 연결한 USB 외부 저장장치 사용 이력을 조사할 수 있다. 해당 정보는 Registry HKEY_LOCAL_MACHINE\SYSTEM\Current ControlSet\Enum\USBSTOP

경로에 저장되며 해당 시스템에 연결된 적이 있는 모든 USB 저장 장치의 생산자와 ID 값 등이 기록되어 있다.

=> USBSTOR 하위키는 {Device Type}&Ven_{Vendor String}&Prod_{Product String}&Rev_{Version Information}와 같은 형태로 기록되어 있다.

=> 해당 시스템에는 3 개의 USB 외부 저장장치가 연결되었음을 알 수 있다.

암호화된 응용 프로그램 이름실행 횟수

마지막 실행 시간

해당 장치의 종류 제조사제품 이름 제품 버전

Page 6: prof.ysu.ac.kr1).docx · Web viewRegistry를 이용한 Forensic 분석 2.1 설치된 프로그램 목록 2.2 USB 외부 저장 장치 사용 이력 2.3 최근 접근 문서 2.4 접근한

=> 선택되어 있는 해당 키는 해당 장치의 Unique Instance ID 를 나타내는데, 모든 USB 저장장치가 서로 다른 값을 갖는다. 해당 값은 다른 시스템에 연결된 때도 같은 값으로 나타나기 때문에, USB 저장장치를 특정할 수 있다.

<2.3 최근 접근 문서>=>윈도우 탐색기를 사용해서 ‘더블클릭’을 통해 열람된 파일 목록 정보는 Registry HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs

경로에 저장된다.

=> 하위키는 확장자 별로 구분하여 사용된 문서 정보를 저장한다. 해당 값은 유니코드로 저장된다.

<2.4 접근한 인터넷 주소 목록>=> 웹 브라우저 주소창에 기록하는 주소 목록을 Registry

HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\TypedURLs 경로에 기록한다.=> 이 정보를 분석하면 사용자가 자주 접속하는 웹 페이지, 주제, 키워드 등을 유추할 수 있다.

Page 7: prof.ysu.ac.kr1).docx · Web viewRegistry를 이용한 Forensic 분석 2.1 설치된 프로그램 목록 2.2 USB 외부 저장 장치 사용 이력 2.3 최근 접근 문서 2.4 접근한

<2.5 최근 실행 명령어>=> 윈도우의 실행 창을 통해서 입력된 명령어 목록을 Registry HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU

경로에 기록된다.

=> 위의 그림과 같이 Registry 에 저장되는데 실행한 순서는 MRUList(Most Recent Used List)값에 나타난다. 이 값은 가장 최근에 사용된 명령어 순서로 값 정보를 저장한 배열이다.

Ex> 데이터에 abc 라고 기록되어 있는데, 그 의미는 c 가 가장 먼저 실행되었고, b,a 순서로 실행 되었음을 의미한다. 즉 a 의 마지막 기록 시간에 마지막으로 실행 창을 통해 명령어를 실행했음을 의미한다.

<3.1 RegRipper 툴 소개>=> RegRipper 는 Windows Forensic Analysis 의 저자인 할렌 카비가 작성한 Registry 분석기=> CLI 버전(rip.exe)과 GUI 버전(rr.exe)으로 되어 있다.=> RegRipper 에 대한 자세한 사항은

통하여 볼 수 있다.

3. RegRipper 란?

Page 8: prof.ysu.ac.kr1).docx · Web viewRegistry를 이용한 Forensic 분석 2.1 설치된 프로그램 목록 2.2 USB 외부 저장 장치 사용 이력 2.3 최근 접근 문서 2.4 접근한

<3.2 RegRipper 툴 설치>=> http://blog.naver.com/karasix/10094251384 첨부파일을 선택하여 RegRipper 설치=> 설치 후 화면

=> rr.exe 클릭하여 연다.

우리가 수업시간에 system 이라는 hive file 을 추출하지 못하여서 system hive file 추출하는 과정에 대해서 알아보겠습니다.

<4.1 Registry 에서 hivefile 인 system 추출하기 >[Window]+R 키를 이용하여 Registry 편집기 접속-> Registry 편집기의 경로는 HKEY_LOCAL_MACHINE\SYSTEM

4. RegRipper 툴을 사용하여 정보 알아내기

Page 9: prof.ysu.ac.kr1).docx · Web viewRegistry를 이용한 Forensic 분석 2.1 설치된 프로그램 목록 2.2 USB 외부 저장 장치 사용 이력 2.3 최근 접근 문서 2.4 접근한

내보내기를 클릭하여

파일이름은 SYSTEM 으로 하고 파일 형식은 Registry hive file 형식을 설정하고 저장한다.저장을 하고 나면 바탕화면에 SYSTEM 이라는 hive file 이 생성된다.

Hive File 에 아까 만들어 놓은 system 파일을 넣고 Report File 은 그 결과값을 받을 곳을 지정하면된다. 저는 REPORT 라는 TXT 파일에 결과값을 받도록 하겠다.아래의 형식대로 지정한 다음 아래의 Rip It 을 클릭을 하면 System 에 있는 값을 알 수 있다.

Page 10: prof.ysu.ac.kr1).docx · Web viewRegistry를 이용한 Forensic 분석 2.1 설치된 프로그램 목록 2.2 USB 외부 저장 장치 사용 이력 2.3 최근 접근 문서 2.4 접근한

바탕화면에 REPORT 라는 TXT 형식이 2 개가 생기는 것을 볼 수 있다.

<4.2 알아낸 정보를 설명 및 분석>위에서 추출한 REPORT 에서 첫번째 txt 를 클릭하면

Page 11: prof.ysu.ac.kr1).docx · Web viewRegistry를 이용한 Forensic 분석 2.1 설치된 프로그램 목록 2.2 USB 외부 저장 장치 사용 이력 2.3 최근 접근 문서 2.4 접근한

위에 값들을 확인할 수 있는데 내가 생각하기에 plugins 에 매치하여 알려주는 정보? 라고 생각한다. 확인해본 결과,

아래의 결과 값과 일치하는 것을 볼 수 있다. 두번째 txt 파일을 클릭하면 SYSTEM HIVE FILE 을 돌려서 얻은 결과물!

Page 12: prof.ysu.ac.kr1).docx · Web viewRegistry를 이용한 Forensic 분석 2.1 설치된 프로그램 목록 2.2 USB 외부 저장 장치 사용 이력 2.3 최근 접근 문서 2.4 접근한

컴퓨터 꺼진 시간부터 USB 꽂은 흔적 사용자가 설정한 모든 흔적들이 담겨져 있다.

<4.3 Registry 에서 hivefile 인 user 추출하기(최근 기록 확인하기) >[Window]+R 키를 이용하여 Registry 편집기 접속-> Registry 편집기의 경로는 HKEY_CURRENT_USER

내보내기를 클릭하여

Page 13: prof.ysu.ac.kr1).docx · Web viewRegistry를 이용한 Forensic 분석 2.1 설치된 프로그램 목록 2.2 USB 외부 저장 장치 사용 이력 2.3 최근 접근 문서 2.4 접근한

파일이름은 USER 으로 하고 파일 형식은 Registry hive file 형식을 설정하고 저장한다.저장을 하고 나면 바탕화면에 USER 이라는 hive file 이 생성된다.

한 후 TXT 파일을 확인해보면