[Debian 계열의 리눅스]
◎ 커널 헤더 패키지 설치
# apt-get install linux-headers |
※ linux-headers 는 설치시 정확한 패키지명을 지정하라는 메세지가 발생하는데 "uname -r"을 통해 버전을 확인하고 설치를 하면 됩니다.
◎ 개발에 필요한 기본 라이브러리와 헤더파일 등을 가지고 있는 패키지 설치
# apt-get install build-essential |
※ Debian 계열에서 make / compile 과 관련된 에러가 발생하면 build-essential 패키지를 설치해주면 됩니다.
◎ Dwarfdump 설치
# apt-get install dwarfdump |
dwartdump 를 설치합니다.
[Redhat 계열의 리눅스]
◎ 커널 헤더 패키지 설치
# yum install kernel-devel |
또는
# rpm --install [패키지명] |
◎ Libdwarf 설치
# tar xvfz libdwarf-20170416.tar.gz # cd dwarf-20170416/libdwarf # ./configure # make # cd ../dwarfdump # ./configure # make # ln -s (dwarf dir)/dwarfdump/dwarfdump /usr/local/bin/dwarfdump |
CentOS 의 경우 Libdwarf 를 자동으로 설치할 수 없기 때문에 소스를 다운로드 받아 수동으로 설치해야 합니다.
다운로드 경로 : https://www.prevanders.net/dwarf.html#releases
◎ 개발에 필요한 기본 라이브러리와 헤더파일 등을 가지고 있는 패키지 설치
# yum install elfutils-libelf-devel |
◎ 종합
# yum groupinstall "Development Tools" -y && yum install kernel-devel kernel-headers glibc* binutils elfutils elfutils-devel elfutils-libelf* gcc subversion |
[공통]
◎ 볼라틸리티(Volatility) 설치
# cd volatility # python ./setup.py install |
다운로드 경로 : http://www.volatilityfoundation.org/26
◎ vtypes(kernel's data structures : 커널의 데이터 구조) 생성
# cd [volatility directory]/tools/linux # make # head module.dwarf |
make를 진행하면 module.dwarf 파일과 system map file 이 생성됩니다.
◎ Symbols 가져오기
# zip /[volatility directory]/volatility/plugins/overlays/linux/[profile name.zip] volatility/tools/linux/module.dwarf /boot/[make 이후 만들어진 system map file] |
리눅스용 프로파일은 커널 데이터 구조와 디버그 심볼로 이루어진 압축 파일 형태로 만들면 됩니다. 이는 Volatility 가 커널 데이터 구조와 디버그 심볼을 통해 필요한 정보를 찾고 해석하기 때문입니다. 심볼은 System.map 파일 안에 있으며 /boot 디렉토리에 있습니다.
리눅스용 프로파일 생성은 make 시 생성된 module.dwarf 파일과 심볼 정보를 가지고 있는 System.map 파일을 zip 파일 형태로 압축하면 됩니다.
# zip linux_profile_name.zip module.dwarf /boot/system_map _file.map |
만약 dwarf 파일이 생성된 폴더에서 zip 작업을 한다면 생성된 파일을
[volatility directory]/volatility/plugins/overlays/linux 디렉토리에 저장해줍니다.
◎ 프로파일 확인
# python ./vol.py --info | grep Profile |
volatility 의 info 옵션으로 프로파일이 정상적으로 등록되었는지 확인합니다.
[참조 URL]
https://github.com/volatilityfoundation/volatility/wiki/Linux
'디지털포렌식&사고대응 > Volatility' 카테고리의 다른 글
Volatility 볼라틸리티 plugins 및 profiles 확인 (0) | 2018.02.19 |
---|---|
Volatility 볼라틸리티를 이용한 메모리 분석 방법론 (0) | 2017.11.30 |
Volatility 볼라틸리티를 이용한 메모리 정보 추출 (0) | 2017.11.30 |
Volatility 볼라틸리티 설치전 요구사항 (0) | 2017.04.19 |
Volatility 볼라틸리티 소개 (0) | 2017.04.06 |