레지스트리 분석 도구
개요
레지스트리 분석 도구란 Windows 레지스트리 파일을 분석해주는 도구를 말한다. 레지스트리 분석 도구는 단순 파싱해 주는 기능뿐만 아니라 삭제된 키 값이나 Value를 복구해 주는 기능, 검색 기능 등을 포함하고 있다. 레지스트리 분석 도구를 사용하여 사용자 정보, USB 장치 정보, 실행한 응용 프로그램 목록 등을 알 수 있다. 레지스트리 분석 도구에는 다음과 같은 것들이 있다.
- Windows USB Storage Parser(USP)
- Yet Another Registry Utility(YARU)
- Registry Recon
- REGA(Registry Analyzer)
- Registry Workshop
- RegRipper
- UserAssist
- RegRipperRunner
- ForensicUserInfo
- USBDeviceForensics
- Registry Decoder
레지스트리 분석 도구 기능 분석
레지스트리 도구는 Windows 운영체제의 시스템 구성 정보를 저장한 데이터베이스인 레지스트리 정보를 추출해내는 도구이다. 이 레지스트리 도구는 각각 제조사마다 추출해내는 정보와 기능이 조금씩 다르다. 공통적으로는 레지스트리 도구는 Windows 기반의 로컬 PC에서 레지스트리 정보를 직접 수집해서 Key와 Value를 출력해주거나 사용자가 수집한 레지스트리의 하이브 파일을 입력 받아 Key와 Value를 출력하는 기능이 있다. 반면 차별화된 기능으로는 삭제된 레지스트리 Key와 Value를 출력, 키워드 검색 기능, 시간 범위를 선택한 검색 기능이 있으며, 레지스트리를 기반으로 윈도우 설치, 사용자 활동, 시스템 설정, 응용프로그램, 네트워크, 하드웨어 등에 대한 정보를 출력 여부 등이 있으며, 입력한 2개의 레지스트리 하이브 파일간의 비교기능과 타임라인 제공 기능이 있다. 더 세부적인 기능은 입력 파일 종류, 도구의 시간 설정, 언어 선택, 보고서 출력, 사용로깅, 최적화 등의 기능이 있다. 도구들의 이러한 기능을 비교하기 위해서 테스트 데이터 세트에 포함될 레지스트리 도구의 기능은 [표 1]과 같고, 세부 기능은 [표 2]와 같다.
기능 | 설명 |
---|---|
정상적 key/value 출력 | 입력한 레지스트리 정상 출력 여부 |
삭제된 key/value 출력 | 삭제된 레지스트리 출력 여부 |
키워드 검색 | 레지스트리 Key, value검색 지원 여부 |
시간 검색 | 설정한 시간 범위로 Key, value검색 지원 여부 |
윈도우 설치 정보 출력 | 해당 정보의 자동으로 출력 여부 |
사용자 활동 정보 출력 | 사용자 계정 정보, Protected Storage, 실행명령, 인터넷 익스플로러로 열어본 페이지, 원격데스크톱 연결에 대한 정보 출력 여부 |
시스템 설정 정보 출력 | 서비스, 드라이버, 자동실행에 대한 정보 출력 여부 |
응용프로그램 정보 출력 | 설치된응용프로그램, 응용프로그램 사용 로그, 한글 최근 실행 파일, MS Office 최근 실행 파일에 대한 정보 출력 여부 |
네트워크 정보 출력 | 네트워크 관련 정보 출력 여부 |
하드웨어 정보 출력 | 장치 관리자, 저장 장치에 대한 출력 여부 |
레지스트리 하이브 파일 비교 | 입력한 2개의 하이브 파일 비교 여부 |
타임라인 | 타임라인 지원 여부 |
세부 기능 | 설명 |
---|---|
입력 파일 | 로컬 PC의 레지스트리 수집, 하이브 파일, dd 이미지파일, vmdk파일 |
GUI, CLI | GUI, CLI 지원 여부 |
시간 설정 | 국가별 시간 지원 여부 |
언어 선택 | 한글지원 여부 |
보고서 | 보고서 출력 여부 |
사용 로깅 | 사용자 로깅 여부 |
최적화 | 레지스트리 최적화 지원 여부 |
테스트 결과 Registry Decoder을 제외하고 10개의 레지스트리 도구 모두 정상적으로 key와 value을 트리구조로 출력해주거나 레지스트리 정보를 화면에 출력해 주었다. 이 중 UserAssist는 Windows XP환경에서만 정상적으로 동작 한 것을 확인하였고, RegRipperRunner는 Windows XP 환경에서 제대로 동작하지 않는 것을 확인하였다. 또한 Registry Decoder는 입력할 이미지 파일의 용량 관계로 테스트 환경에서 테스트를 하지 못하여 테스트 결과에서 제외하였다.
레지스트리 도구의 큰 기능들의 테스트 결과를 살펴보자면, 삭제된 key와 value를 출력해주는 도구는 YARU, REGA이다. 키워드 검색 기능을 지원하는 도구는 YARU, Registry Recon, REGA, Registry Workshop이다. 이 중 사용자가 직접 시간대 범위를 설정하여 검색할 수 있는 기능을 제공해주는 도구는 YARU, REGA, Registry Workshop이다.
윈도우 설치 정보, 사용자 활동 정보, 시스템 설정 정보, 응용프로그램 정보, 네트워크 정보, 하드웨어 정보를 퀵 메뉴로 출력해주는 도구는 REGA이다. 또한 타임라인 기능을 제공해주는 도구는 REGA이다.
사용자가 입력한 2개의 하이브 파일 또는 Reg 파일을 비교해주는 기능을 제공하는 도구는 YARU, Registry Workshop이다.
레지스트리 도구들의 입력파일의 형태는 대부분 Local PC에서 직접 수집한 파일이거나 사용자가 별도로 수집한 레지스트리 하이브 파일 또는 Reg파일이다.
이 중 USP, YARU는 dd 이미지와 vmdk 파일을 입력받아 레지스트리 정보를 출력해주는 기능을 지원하고 있고, Registry Recon와 REGA는 Local PC에 마운트된 이미지파일에서 레지스트리 정보를 출력해주거나 수집해주는 기능을 지원하고 있다.
국가별 시간을 설정하는 기능을 지원하는 도구는 REGA, Registry Workshop이며, RegRipper, USBDeviceForensics는 Local PC의 시간에 자동으로 동기화되는 기능을 제공한다. 그 외의 도구들은 모두 도구가 제작된 국가의 시간으로 자동 설정되어 있다.
한글을 지원하는 도구는 REGA, Registry Workshop이다. 다른 도구들은 기본 언어는 영문으로 설정되어 있다. 보고서 출력 기능은 Registry Recon, REGA가 지원을 하고 있다. 사용 로깅은 YARU, Registry Recon가 지원하고 있다. Local PC의 레지스트리 최적화 기능은 Registry Workshop이 지원하고 있다.
USP는 USB 정보가 있는 System 하이브 파일에 대해서만 정상적으로 동작한다. 다른 레지스트리 하이브 파일을 입력하면 정보를 출력해주는 기능을 지원하고 있지만, 테스트 해본 결과 정상적으로 동작하지 않음을 확인하였다. 출력 포맷은 csv나 txt파일로만 가능하다.
YARU는 출력 기능을 지원하지만 txt파일 형태로만 가능하다. Registry Workshop은 입력한 2개의 Reg파일만 비교가 가능하고, 지원하는 언어에 따라 설치버전이 존재한다.
ForensicUserInfo는 사용자 계정과 관련된 정보만 화면에 출력해준다. 출력 포맷은 csv와 HTML이다. USBDeviceForensics는 USB 접속 기록만 화면에 출력해주기 때문에 USB 접속 흔적이 있어야만 정상 동작한다. 출력 포맷은 txt만 지원한다.
위와 같은 테스트의 결과를 토대로 아래와 같은 종합적인 결론을 내릴 수 있다.
Local PC에서 직접 레지스트리 수집을 하고 전체적인 분석해야하는 상황에서는 YARU, Registry Recon, REGA, Registry Workshop를 이용하면 된다. 여기서 미리 수집한 하이브 파일을 입력해야하는 경우에는 그 기능을 제공하는 YARU, REGA, Registry Workshop, RegRipper를 사용하면 된다.
레지스트리를 트리구조를 보고 특정 흔적에 대해 key나 value를 찾아가는 방법을 모른다면 시각적으로 퀵 메뉴를 지원하는 REGA를 사용하는 것이 좋다. 반면, 레지스트리 트리구조를 보고 분석하고자 하는 key와 value를 직접 찾아갈 줄 안다면 YARU, Registry Workshop 도구를 이용하는 것이 좋다.
2개의 하이브 파일 비교를 해야하는 상황에서는 YARU를 이용하고, 2개의 Reg파일을 비교해야한다면 Registry Workshop을 이용하면 된다.
dd 이미징파일이나 vmdk 파일을 통해 레지스트리 분석을 해야하는 상황에서는 해당 기능을 제공하는 YARU를 이용하는 것이 좋고, 여기서 USB에 대한 흔적을 조사해야한다면 USP를 이용하는 것이 좋다.
그 외의 마운트 가능한 이미지파일을 통해 분석해야할 경우에는 Registry Recon과 REGA를 이용한다.
새로운 Windows 환경에서는 바로바로 플로그인이 업데이트가 되는RegRipper를 이용하는 것이 좋고, Windows XP 환경에서 사용자에 대한 흔적만 찾기를 원한다면 UserAssist를 이용하는 것이 좋다. 사용자 계정에 대한 정보만 원한다면 ForensicUserInfo을 이용하면 되고, USB 흔적에 대해서만 빠르게 확인을 원한다면 USP와 USBDeviceForensics를 이용하는 것을 권장한다.