volatility 메모리 분석
imageinfo
vol.py -f [파일 경로] imageinfo
OS, 서비스 팩, 하드웨어 구조, 메모리 주소 공간, DTB 주소, KDBG 주소, 수집되어진 시간 등의 정보
psxview
vol.py -f [파일경로] psxview
pslist와 psscan 명령어가 조합된 psxview는 은닉된 프로세스가 존재하는지 확인할 수 있다. 다음 사진처럼 pslist와 psscan이 모두 true일 경우 은닉된 프로세스가 존재하지 않는 것으로 판단할 수 있으며, 만약 true와 false의 경우 은닉되어 동작하는 프로세스의 존재를 의심할 필요가 있다.
pstree
vol.py -f [파일경로] pstree
프로세스의 관계를 보기 쉽게 정리하여 출력한다. 트리 형태로 목록화 되어 있으며, 공백과 마침표를 이용하여 부모 자식 관계를 표기한다.
pstree 결과 확인 시 lsass.exe 프로세스가 3개 존재한다. lsass는 윈도우 부팅 시 보안을 인증하는 프로세스이다.
윈도우 비스타 이전에는 Winlogon.exe 프로세스가 lsass.exe와 services.exe를 생성시킨다.
Winlogon.exe pid=624
services.exe pid=668 ppid=624
lsass.exe pid=680 ppid=624
lsass.exe pid=1928 ppid=668
lsass.exe pid=868 ppid=668
두 개의 lsass.exe는 부모 프로세스가 Winlogon.exe.가 아닌 services.exe이다.
악성코드로 의심해볼만한 내용이 분명하다.
procdump
vol.py -f [파일경로] procdump --dump-dir=[저장경로]
프로세스를 추출하는 명령어이며, procdump 명령어 뒤에 -p [pid] 를 기입할 경우 pid에 해당하는 프로세스를 낱개로 추출할 수 있다.
해당 프로세스는 '듀크'로 알려져 있는 악성코드이며, lsass.exe로 이름을 바꾸어 동작하고 있었다.