해당 포스팅 내용은 잊어먹지 않기 위해 간략히 작성한 내용이기 때문에 볼 필요는 없을 것 같고,
PDF 파일을 보시면 자세히 알 수 있습니다.
맨 밑에 cuckoo 연동 부분만 보셔도..
1) VB2016 paper: Open source malware lab(http://kkn1220.tistory.com/115)
2) Cuckoo Sandbox (http://kkn1220.tistory.com/116)
3) Thug (http://kkn1220.tistory.com/117)
4) Bro (http://kkn1220.tistory.com/118)
Volatility
1. Volatility 개념
(1) pslist: 시스템의 프로세스를 열거하기 위함
(2) psscan: 풀 태그 스캐닝을 사용하여 프로세스들을 열거하기 위해 사용되는데 종료된 프로세스들과 루트킷에 의해 숨겨지거나 연결이 끊어진 프로세스들을 찾을 수 있음
(3) psxview: pslist와 psscan으로 숨겨진 프로세스를 찾음
(4) ssdt: System Service Descriptor Table(SSDT)에서 후킹된 것을 찾음
psxview 플러그인은 pslist와 psscan을 교차하여 숨겨진 프로세스를 찾는 역할
pslist는 각 프로세스가 더블 링크드 리스트로 연결되어 있는 것을 이용해서
프로세스 목록을 출력하지만 psscan은 메모리 이미지의 처음부터 끝까지
스캔을 하여 프로세스 목록을 출력하는 형식
-> 그러므로 psscan에서는 확인이 가능하지만 pslist에서 확인이 안되는 프로세스는 악성 일 가능성이 높음
Psscan은 pslist와 유사하지만 pool tag 스캔을 통해 프로세스 목록을 생성하기때문에 DKOM을 통해서 프로세스를 은닉하는 경우에도 출력이되는 차이점이 있음
※DKOM(Direct Kernel
Object Manipulation) : 자신의 앞 뒤에 존재하는 EPROCESS의 ActiveProcessLinks를 조작하여 자신을 건너뛰고 서로 직접
연결되도록 조작하는 기법
2. Volatility 분석 (SSDT 후킹 내용 간략 설명)
1) 메모리 덤프
- Dumpit이나 기타 메모리 덤프 할 수 있는 툴을 사용하여 메모리 덤프
2) 이미지 확인
- profile 확인
3) 프로세스 목록 확인
pslist, psscan, psxview, ssdt를 통해 목록 확인
- volatility -f 덤프파일 --profile=Win7SP1x86 pslist >
c:\usb\pslist.txt
- volatility -f 덤프파일 --profile=Win7SP1x86 psscan > c:\usb\psscan.txt
- volatility -f 덤프파일 --profile=Win7SP1x86 psxview > c:\usb\psxview.txt
- volatility -f 덤프파일 --profile=Win7SP1x86 ssdt > c:\usb\ssdt.txt
4) (ex. ssdt 후킹 사례)
ssdt를 확인 결과 ntoskrnl.exe / win32k.sys 이외에 목적지로 설정 되어있다는 가정 (후킹 된 것임)
(꼭 위에 두개로 owned by <ntoskrnl.exe / win32k.sys> 가 있어야됨 (왼쪽은 시스템쪽 api 오른쪽은 gui 관련 api))
5) ssdt 후킹 확인
type ssdt.txt | findstr /i /v ntoskrnl.exe | findstr /i /v win32k.sys
6) 다음 진행 사항들
(본 내용은 해당 내용 범위에 벗어나는 내용이기 때문에 다루지 않음
추후 $MFT, UserJnrl, Log File 을 추출하고, 해당 내용을 분석 하는 방법에 대해 포스팅 할 예정)
3. Cuckoo 연동
Cuckoo는 Volatility 연동을 지원을 하는데
- 시간이 엄청 오래 걸림... 사실 샌드박스는 3~5분에 한 파일에 대해 끝내야 되는데 메모리 덤프 및 분석을
위한시간이 많이 소요됨
- Cuckoo가 뭔가 큰 그림을 보는거 같은데 잘 모르겠음..
설정파일 변경
- cuckoo.conf 변경
- memory_dump = on으로 변경
- processing.conf 변경
- 메모리 분석 기능 활성화
- enabled = yes로 변경
- memory.conf 변경
- 모두 yes 로 변경
'기타 > 악성코드 분석' 카테고리의 다른 글
Bro 개념 및 설치 (4) | 2017.03.27 |
---|---|
Thug 개념 및 설치 (0) | 2017.03.27 |
Cuckoo sanbox 개념 및 설치 (5) | 2017.03.27 |
Open source malware lab 정리 (0) | 2017.03.27 |
악성파일 분석의 4단계 (Mastering 4 Stages of Malware Analysis) (0) | 2017.03.13 |