볼라틸리티 설치
(*볼라를 사용하려면 파이썬 2.x버전만 필요한데 따로 3.x. 버전도 필요하면 아래 블로그를 참고)
프로세스, 네트워크 정보 , CMD명령어 기록, iE 히스토리, MFT 파서, 프로세스에 대한 메모리 덤프, 파일 복구 가능
메모리 분석
1) Profile 확인
vol.py -f [파일명] imageinfo
서버에 대해서는 용량이 너무 커 메모리 덤프를 거의 진행하지 않음
개인 PC 가정 하에, Suggested Profiles에서 서비스 버전이 가장 높은 것을 선택하는 것이 좋음
2) 프로세스 정보 확인
vol.py -f [파일명] --profile=[프로파일명] pstree/psscan/pslist
pstree
트리 형태로 하위 프로세스 구조 파악 가능
부모 프로세스가 없는 프로세스를 중점으로 분석하면 악성코드 여부 확인 가능
psscan
pstree와 비슷하지만, 트리 형태가 아닌 단순 출력
부모 프로세스는 PPID를 통해 확인 가능
루트 킷에 의한 은닉된 프로세스를 전부 출력해주는 기능
pslist
* 세 가지 명령어를 모두 사용하여 은닉된 프로세스가 있는지 비교분석 필요
3) 네트워크 정보 확인
vol.py -f [파일명] --profile=[프로파일명] netscan
netscan
리눅스/윈도우 환경의 netstat
메모리의 네트워크 정보/ 프로세스 정보 출력
4) cmd 명령어
vol.py -f [파일명] --profile=[프로파일명] cmdscan
cmdscan
cmd명령어 확인
5) iE 히스토리
vol.py -f [파일명] --profile=[프로파일명] iehistory
iehistory
메모리에 웹에 접근한 내용이 있다면 출력
정보가 많을 때 리다이렉션을 이용하여 txt 파일로 만들어줌
vol.py -f [파일명] --profile=[프로파일명] iehistory >> ie.txt
6) MFT 파서
vol.py -f [파일명] --profile=[프로파일명] mtfparser
mftparser
파일에 대한 메타데이터 분석 (침해사고 분석)
정보가 너무 많아 csv파일로 변환
vol.py -f [파일명] --profile=[프로파일명] mftparser >> mft.csv
생성된 csv 파일
7) 프로세스에 대한 메모리 덤프
vol.py -f [파일명] --profile=[프로파일명] memdump-p pid -D [저장될 디렉토리]
memdump
입력했었던 명령어, 실행된 파일 확인 가능
strings.exe x.dmp >> x.txt
프로세스에 있던 텍스트 문구
* 2020.07.17 - [Forensics] - [포렌식] Internet Explorer 10 검색 기록 아티팩트
strings에 관한 설명은 이전 포스팅 참고
8) 파일 복구
① filescan
vol.py -f [파일명] --profile=[프로파일명] filescan
복구하고자 하는 파일 찾기
파일 중에 원하는 파일을 검색하기 위해 findstr 사용
vol.py -f [파일명] --profile=[프로파일명] filescan | findstr "찾고자 하는 문자"
② dumpfiles
vol.py -f [파일명] --profile=[프로파일명] dumpfiles -Q [메모리 주소] -D [저장할 디렉토리]
파일 복구
파일이 생성되었다.
*그 외에도 malfind : 악성코드 분석 등 많은 명령어들이 있음 (-h 옵션 통해 확인)
'Forensics' 카테고리의 다른 글
[포렌식] 침해사고 포렌식 (0) | 2021.02.01 |
---|---|
[포렌식] 악성코드 분석 (0) | 2021.01.23 |
[포렌식] 디지털 포렌식 (0) | 2021.01.18 |
[포렌식] 로그분석 실습 (0) | 2021.01.16 |
[포렌식] HFS 웹 서버 취약점을 이용한 내부 침투 사례 (0) | 2021.01.13 |