안녕하세요. 도깬리 포렌식스 입니다.
오랜만에 포스팅 합니다. 오늘은 프리페치 3번째 시간입니다. 오늘도 달려 볼까요...
프리페치 해시값 계산
해시는 호스트 시스템이 XP인지, 그 이후 버전인지 여부에 따라 두가지 방법 중 하나를 선택하여 계산합니다.
또한, 해당 어플리케이션이 일반 어플리케이션인지, 호스팅 어플리케이션인지에 따라 서로 다른 계산법이 적용됩니다.
일반 어플리케이션의 경우
어플리케이션의 경로 정보를 기반으로 하여 해시값을 계산합니다.
호스팅 어플리케이션의 경우
예) MMC.EXE, DLLHOST.EXE, RUNDLL32.EXE
호스팅 어플리케이션은 Dynamic Link Library 형태를 갖는 프로세스를 시작하는데 이용됩니다.
SVCHOST.EXE의 경우
Dynamic Link Library를 통해 실행되는 서비스에 대한 일반적인 호스트 이름입니다.
어플리케이션의 경로 정보와 command-line 파라미터를 기반으로 해시값을 계산합니다.
호스팅 어플리케이션의 실행 여부는 시스템 변경과 관련이 있기 때문에 분석시 반드시 고려해야 할 사항입니다.
예) RunDll32.exe shell32.dll, Control_RunDLL timedate.cpl,,0
위 명령어는 사용자가 시스템 시각을 인위적으로 변경하여 폴더나 파일의 날짜를 조작하려는 의도를 추정케 합니다.
timedate 컨트롤 패널 애플릿을 시작하면, 이 명령이 컨트롤 패널 아이콘을 통해서 시작된 것인지, System tray의 시계를 더블클릭하여 시작한 것인지, 바탕화면에서 사용자가 만든 바로가기를 더블클릭하여 시작하였는지에 따라 서로 다른 RUNDLL32.EXE command-line 파라미터가 생긴다는 점을 알고 있어야 합니다.
호스팅 어플리케이션이 실제로 실행 되었는지 분석하기 어려운 이유는 그 어플리케이션이 전달하는 command-line 파라미터가 프리패치 파일에 직접적으로 참조되지 않기 때문이라고 합니다.
유일한 연결고리는 프리패치 해시값인데, 해시값으로부터 어플리케이션의 경로와 파라미터를 역으로 알아낼 수는 없습니다.(일방향성 이라고 하죠)
PfDump EnScript로 프리페치 파일 조사하기
File-list size
파일 참조 영역의 크기입니다. 이것보다 더 큰 파일 참조 영역을 갖는 프리페치 파일은 파싱이 되지 않을 것입니다.
Upper drive-letter limit
어플리케이션이 실행 되었던 호스트 시스템의 드라이브 문자를 지정합니다.
호스팅 어플리케이션 command-line은 보통 시스템 볼륨(C 드라이브)에 위치하므로 이 옵션을 바꿀 필요는 없습니다.
Toggle MFT processing for selected files, Toggle hash verification for selected files
토글키로 둘 중에 하나만 선택 가능합니다.
프리페치 해시 검증을 할 것인지, MFT 메모리 페이지 참조 영역을 처리 할 것인지 결정해야 합니다.
일반 어플리케이션에 대한 해시 검증은 기본적으로 활성화(T표시) 되어 있습니다.
호스팅 어플리케이션에 대한 해시 검증은 기본적으로 비활성화(F표시) 되어 있습니다.
MFT 메모리 페이지 참조 영역에 대한 분석 기능도 기본적으로 비활성화 되어 있습니다.
MFT를 분석 할 때는 해당 케이스에 MFT가 포함되어 있어야 합니다.
호스팅 어플리케이션 프리페치 파일들 중에는 스크립트가 사용되었던 command-line 중에서 일부가 인식된 것도 있습니다.
슈퍼패치 (Superfetch)
Windows 7 이후 등장했습니다.
가장 자주 사용된 어플리케이션과 그것이 사용된 시간을 분석할 수 있습니다.
AgRobust.db 파일에서 유니코드 파일과 폴더의 경로가 분석됩니다.
감사합니다. 오늘도 즐거운 하루 되세요.
"좋아요"와 "구독하기"는 힘이 됩니다.
참고문헌 : EnCase Advanced Forensics
'EnCase' 카테고리의 다른 글
[EnCase] 메모리 포렌식(RAM Forensics) (2) (0) | 2022.07.22 |
---|---|
[EnCase] 메모리 포렌식(RAM Forensics) (1) (0) | 2022.07.19 |
[EnCase] 프리페치(Prefetch) 분석 (2) (0) | 2022.07.11 |
[EnCase] 프리페치(Prefetch) 분석 (1) (0) | 2022.07.07 |
[EnCase] 암호 분석 (4) (0) | 2022.07.05 |