◎ Miscellaneous : 기타 등등
> strings : <decimal_offset>:<string> line 형식으로 된 주어진 Image와 File에서 해당 문자열을 찾을 수 있는 Process와 Virtual Address를 출력해 주는 명령어입니다.
- 해당 명령의 입력은 Sysinternals의 Strings Utility 또는 유사한 Tool 들의 출력(offset:string)이며, 입력 Offset 은 File/Image의 시작 지점의 물리 Offset입니다.
- Sysinternals 의 Strings는 Linux/MAC 에서 Wine을 이용하여 사용 가능하며, 이에 대한 출력은 File 형식으로 Volatility에게 Redirect 되어야 합니다.
- GNU 의 Strings 명령어를 사용한다면 -td Option을 통해 Offset을 10 진수로 출력 가능합니다.(GNU strings는 십육진 오프셋 미지원)
- File/Image 를 Sysinternals의 Strings Utility를 수행하면 많은 시간이 걸리며, -q와 -o는 Header 출력의 생략(-q)과 각 줄의 Offset(-o)을 구하기 위해 필수적인 Option입니다
# wine strings.exe -q -o -accepteula image.vmem > image.vmem.txt # python vol.py -f image.vmem --profile=Win7SP1x64 strings -s export.txt |
- Default 로 PsActiveProcessHead를 이용해 Double-linked 형태로 Process 들을 출력하며, -S Option을 통해 Hidden Process 들도 출력 가능합니다.
# python vol.py -f image.vmem --profile=Win7SP1x64 strings -s export.txt --output-file=export_strings.txt -S |
- EPROCESS Offset 도 지원해 줍니다.
# python vol.py -f image.vmem --profile=Win7SP1x64 strings -s export.txt --output-file=export_strings.txt -o 0x00000000 |
> volshell : 메모리 덤프 파일 분석 시에 Windbg와 유사한 명령 형식으로 분석 할 수 있습니다.
※ 제공 기능
- 프로세스들의 목록화(List processes)
- 프로세스들의 문맥 교환(witch into a process's context)
- 구조체와 객체들의 형식 출력(Display types of structures/objects)
- 주어진 주소에 타입 덮어씌우기(Overlay a type over a given address)
- 링크드 리스트 순회(Walk linked lists)
- 주어진 주소의 코드 디스어셈(Disassemble code at a given address)
- db, dd, dt, dis 명령어는 특정 주소 공간을 인자로 전달 가능하며, 사용하는 주소 공간에 따라 다른 결과를 출력하는 것을 확인 가능합니다.
# python vol.py -f image.vmem --profile=Win7SP1x64 volshell |
> bioskbd : Memory 의 BIOS 영역에서 Key 입력을 읽을 때 사용하는 명령어입니다.
- Lenovo 의 BIOS와 SafeBoot, TrueCrypt, BitLocker에 입력한 비밀 번호를 확인 가능합니다.
- 메모리 덤프 툴에 따라서 필요한 BIOS 영역을 포함할 수도 있고 아닐 수도 있습니다.
# python vol.py -f image.vmem --profile=Win7SP1x64 bioskbd |
> patcher : Patches memory based on page scans
- patcher 플러그인을 실행할때, 명령줄에 쓰기 옵션(-w) 지정하지 않으면 수정이 안됩니다.
# python vol.py -f image.vmem --profile=Win7SP1x64 patcher |
> pagecheck : pagecheck 플러그인은 커널 DTB (System/Idle 프로세스로부터)을 사용하고 페이지들(pages)이 위치하고 있는 메모리(AddressSpage.get_avaliable_pages 메서드를 사용) 정보를 출력하는 명령어입니다.
- 각 페이지별로 그 페이지 데이터에 접근하는 것을 시도하고 자세하게 결과를 출력합니다. 만약 그 시도한 것이 실패되면 PDE, PTE 주소 정보들도 나타냅니다.
- 이 플러그인은 기본적으로 지원되지 않고, contrib 디렉터리 안에 위치하고 있으며 non-PAE x86 주소 공간들에서 작동이 됩니다.
# python vol.py -f image.vmem --profile=Win7SP1x64 --plugins=contrib/plugins/ -f pat-2009-11-16.mddramimage pagecheck |
> mftparser : 파일이 디스크에 있는지 확인하는 명령어입니다.
# python vol.py -f image.vmem --profile=Win7SP1x64 mftparser |
- 내용이 상당히 길기 때문에 --output-file 옵션을 사용하여 파일에 저장하는 것이 좋습니다.
# python vol.py -f image.vmem --profile=Win7SP1x64 mftparser --output=body -D folder_name/ --output-file=mft.body # cat mft.body |
Volatility 볼라틸리티 2.1 Plugins - 윈도우#01
◎ Image Identification : 이미지 식별
Volatility 볼라틸리티 2.1 Plugins - 윈도우#02
◎ Processes and DLLs : 프로세스와 DLLs 분석
Volatility 볼라틸리티 2.1 Plugins - 윈도우#03
◎ Process Memory : 프로세스 메모리 분석
Volatility 볼라틸리티 2.1 Plugins - 윈도우#04
◎ Kernel Memory and Objects : 커널 메모리와 오브젝트 분석
Volatility 볼라틸리티 2.1 Plugins - 윈도우#05
◎ Networking : 네트워크 정보
Volatility 볼라틸리티 2.1 Plugins - 윈도우#06
◎ Registry : 단지 Registry data를 추출하는데 도움을 줍니다.
Volatility 볼라틸리티 2.1 Plugins - 윈도우#07
◎ Crash Dumps, Hibernation and Conversion : 크래쉬 덤프, 하이버네이션 정보확인 및 파일변환
Volatility 볼라틸리티 2.1 Plugins - 윈도우#08
◎ Malware and Rootkits : 맬웨어와 루트킷 분석
Volatility 볼라틸리티 2.1 Plugins - 윈도우#09
◎ Miscellaneous : 기타 등등
'디지털포렌식&사고대응 > Volatility' 카테고리의 다른 글
Volatility 볼라틸리티 2.1 Plugins - 윈도우#08 (0) | 2021.03.30 |
---|---|
Volatility 볼라틸리티 2.1 Plugins - 윈도우#07 (0) | 2021.03.29 |
Volatility 볼라틸리티 2.1 Plugins - 윈도우#06 (0) | 2021.03.29 |
Volatility 볼라틸리티 2.1 Plugins - 윈도우#05 (0) | 2021.03.26 |
Volatility 볼라틸리티 2.1 Plugins - 윈도우#04 (0) | 2021.03.23 |