※ AIX를 직접 테스트할 서버가 없어 구글링 및 메뉴얼 기반으로 간략하게 정리한 글이므로, 실제 운용환경과는 맞지 않거나 틀린 내용이 있을 수 있습니다.
1. AIX 메모리 덤프 수행
AIX는 snap 명령을 통해 core 덤프를 획득하는 방식으로 메모리 덤프를 수행합니다.
snap 명령을 이용하여 core 덤프 이외에도 많은 시스템 정보를 함께 획득할 수 있으며, 덤프를 수행하기 이전에 덤프 설정을 확인하는 작업이 필요합니다.
sysdumpdev 명령은 AIX 시스템에서 덤프 장치를 확인 및 설정하는 명령이며 -l 옵션으로 현재 덤프 설정값을확인할 수 있습니다.
# sysdumpdev -l |
dumpcheck 명령은 덤프 수행시 발생가능한 에러 정보를 확인할 수 있습니다.
# /usr/lib/ras/dumpcheck -p |
덤프가 정상적으로 수행가능한 경우 아무런 출력값이 존재하지 않으며 덤프 장치 크기가 너무 작거나 덤프 디렉토리에 사용 가능한 공간이 작은 경우 등, 덤프가 정상적으로 수행이 불가능할 경우 해당 내용이 출력됩니다.
덤프 설정이 완료되면 snap 명령을 통해 메모리 덤프를 수행합니다.
덤프의 기본 출력 디렉토리는 /tmp/ibmsupt 이며 -d 옵션을 이용하여 별도의 디렉토리를 설정할 수도 있습니다.
# snap -gfkvGLDN |
각 옵션의 역할은 아래와 같습니다.
옵션 |
설명 |
-g |
정확한 운영 시스템환경을 재작성하는데 필요한 lslpp -hBc 명령 결과 축적 (lslpp : 설치된 소프트웨어 파일 세트 정보 출력을 위한 명령) |
-f | 파일 시스템 정보 축적 |
-k | 커널 정보 축적 |
-G | 사전 정의된 오브젝트 데이터 관리자(ODM) 파일 -g 플래그로 축적한 일반 정보에 포함 |
-L | LVM 정보 축적 |
-D | 덤프 및 /unix 정보 축적 |
-N | 사용 가능한 공간이 있는지 검사하지 않음 |
2. AIX 메모리 덤프 분석
AIX는 기본적으로 제공되는 kdb를 이용하여 메모리 분석을 진행하며, 각종 subcommand를 이용하여 정보를 추출할 수 있습니다.
kdb 명령의 인자값으로는 snap명령 등에 의해 생성된 dump,unix 파일이 필요합니다.
snap 명령의 결과는 보통 pax.Z 또는 .Z으로 압축이되어있는데, 아래 명령으로 압축 해제가 가능합니다.
# uncompress snap.pax.Z # pax -rf snap.pax # cd ./dump # uncompress unix.Z # uncompress dump.Z # kdb ./dump ./unix |
kdb 명령의 subcommand 종류는 매우 다양하나 유용한 몇가지만 간략하게 보자면 아래와 같습니다.
SubCommand |
설명 |
> p * |
프로세스 테이블 출력 |
> lle -k |
커널 모듈 목록 출력 |
> lle -l32 |
32bit 라이브러리 모듈 목록 출력 |
> lle -l64 |
64bit 라이브러리 모듈 목록 출력 |
> netstat -Aan |
네트워크 목록 출력 |
'보안 > 포렌식' 카테고리의 다른 글
Volafunx (FreeBSD 메모리 분석툴) 테스트 결과 (0) | 2012.12.28 |
---|---|
솔라리스 메모리 덤프 생성 & 분석 (0) | 2012.10.08 |
Volatility Linux Profile 생성 (1) | 2012.09.17 |
Windows 메모리 덤프 생성 및 분석 (0) | 2012.08.08 |
Windows 레지스트리 분석 (0) | 2012.07.31 |