메모리 분석

 

1. 메모리 덤프

AccessData FTK Imager 을 통해 메모리 덤프를 만든다.

 

 

 

volatility

 

distorm3-3.3.0.win32

PIL-1.1.7.win32-py2.7.exe

pycrypto-2.6.win32-py2.7.exe 

위의 exe를 다 설치

 

 

 

vol.py -h   //도움말

1. 프로파일 확인(Win7SP1x64)

-플러그인 : imageinfo

vol.py -f memdump.vmem imageinfo   //메모리 정보보기.

 

 

vol.py -f memdump.vmem imageinfo >> imageinfo.txt //파일로 저장.

 

2. 프로세스 확인.

-플러그인 : pstee , psscan , pslist

 

3개중  pstree , psscan 만 돌려도 상관 없음.   psscan은 루트킷도 발견가능

 

vol.py -f memdump.vmem --profile=Win7SP1x64 pstree >> pstree.txt  

.은 자식정보이다.
SkypeC2AutoUpd는 악성코드를 다운시키는 다운로더이다.

 

 

vol.py -f memdump.vmem --profile=Win7SP1x64 pslist >> pslist.txt

 

vol.py -f memdump.vmem --profile=Win7SP1x64 psscan >> psscan.txt 

Offset이 나와있다.
여기에도 역시 SkypeC2AutoUpd가 있다.

 

 

3. 네트워크 확인

- 플러그인 : netscan

 

vol.py -f memdump.vmem --profile=Win7SP1x64 pstree netscan >> netscan.txt

SkypeC2AutoUpd가 현재 연결되 있는것을 확인

4. 사용한 명령어 확인

- 플러그인 : cmdscan

 

vol.py -f memdump.vmem --profile=Win7SP1x64  cmdscan >> cmdscan.txt

명령어를 친 것이 없기 때문에 나오지 않는다.

5. IE 확인

- 플러그인 : iehistory

vol.py -f memdump.vmem --profile=Win7SP1x64  iehistory >> iehistory.txt

인터넷 등 캐시에 저장된 내용을 확인하는 명령어

 

6. MFT 파서 확인

MFT : 실제 가지고 있는 정보에 메타데이터(수정 삭제, 접근 시간 등을 의미, 속성정보)

- 플러그인 : mftparser

vol.py -f memdump.vmem --profile=Win7SP1x64  mftparser >> mftparser.txt

 

$STANDARD_INFORMATION

//파일의 생성, 수정시간

//파일을 수정하게 되면 수정 시간이 변한다.

 

$FILE_NAME   

//파일의 생성 , 수정 시간, 파일 이름과 확장자의 정보가 있다.

// 생성시간을 수정 해도 바뀌지 않는다.

 

$DATA

//700바이트 보다 작은 데이터들이 들어간다.

 

 

 

 

 

 

7. 특정 프로세스에 대한 메모리 덤프

- SkypeC2AutoUpd 프로세스 ID : 1364    //pstree를 통해 확인

 

vol.py -f memdump.vmem --profile=Win7SP1x64  memdump -p 1364 -D ./

 

 

strings을 사용해  텍스트 파일로 저장 시켜 연다.

strings 1364.dmp >> 1364.txt

 

악성코드를 분석한다.

 

Temp 폴더 안에 SkypeC2Auto를 이용해 다운 받은 파일들이 저장되게 된다.
teamviewer 나 avicap32.dll 등 다운 된것을 확인.

8. 파일 검색 및 복구

 

-'png' 파일 검색

vol.py -f memdump.vmem --profile=Win7SP1x64  filescan | findstr "png" >> png.txt

-'png' 파일 복구

vol.py -f memdump.vmem --profile=Win7SP1x64 dumpfiles -Q 0x000000007d40f400 -D ./      //offset주소

file.None.0xfffffa8004260240.dat 로 나오는데 png로 변환해서 열면 된다.

복원을 해도, 날짜가 복원한 날짜로 나오므로, 증거자료로 쓰기에는 조금 부적절하다.

 

8. 'SkypeC2AutoUpd' 파일추출

-'SkypeC2AutoUpd' 파일 검색

 

vol.py -f memdump.vmem --profile=Win7SP1x64 filescan | findstr "SkypeC2AutoUpd" >> SkypeC2AutoUpd.txt

 

offset주소를 통해 추출

-'SkypeC2AutoUpd' 파일 추출

vol.py -f memdump.vmem --profile=Win7SP1x64 dumpfiles -Q 0x000000007dbb69b0  -D ./

 

확장자를 .exe로 변경

 

virustotal 사이트를 통해 바이러스 인지 확인.

 

2군데에서 바이러스라고 판단함.

PE파일 이란?  windows에서 실행하는 파일들을 의미한다.

 

PEview를 통해 img 파일을 연다.

SECTION.rdata -> IMPORT Directory Table에서 사용중인 dll파일을 알아낸다.

 

 

PeStudio842.exe 을 통해 img파일 연다.

Indicators

1등급으로 위험한 내용들이 많다고 알려준다.

Sections

위험한 API임을 알려주는 Blacklisted

Imported Libraries

WS2_32.dll

iphlpapi.dll

COMCTL32.dll

AVICAP2.dll

MSVFW32.dll

WINMM.dll

KERNEL32.dll

USER32.dll

GDI32.dll

ADVAPI32.dll

SHELL32.dll

들이 위험하다는 것을 알려줌

 

WS2_32.dll

iphlpapi.dll

COMCTL32.dll

AVICAP2.dll

MSVFW32.dll

WINMM.dll

KERNEL32.dll

USER32.dll

GDI32.dll

ADVAPI32.dll

SHELL32.dll

 

\AppData\Local\Temp\에서 위의 dll 파일과 매칭되는 파일을 찾는다.

많이 보이는애도 찾는다.

 

AVICAP32.dll tv_x64.exe tv_x64.dll 이 가장 많이 보인다. 이들을 각각 파일 검색한다.

 

AVICAP32.dll

vol.py -f memdump.vmem --profile=Win7SP1x64  filescan | findstr "avicap32.dll" >> AVICAP32.dll.txt

 

tv_x64.exe

vol.py -f memdump.vmem --profile=Win7SP1x64  filescan | findstr "tv_x64.exe" >> tv_x64.exe.txt

tv_x64.dll

vol.py -f memdump.vmem --profile=Win7SP1x64  filescan | findstr "tv_x64.dll" >> tv_x64.dll.txt

 

위의 offset 번호를 통해 복구한후 , virustotal로 확인.

tv_x64.dll     //바이러스 x

vol.py -f memdump.vmem --profile=Win7SP1x64 dumpfiles -Q 0x000000007d8b4c90  -D ./

tv_x64.exe   ////바이러스 x

vol.py -f memdump.vmem --profile=Win7SP1x64 dumpfiles -Q 0x000000007e379340  -D ./

AVICAP32.dll  //temp 파일에 있는 offset을 가져옴.  //바이러스o

vol.py -f memdump.vmem --profile=Win7SP1x64 dumpfiles -Q 0x00000000059f8bd0   -D ./

 


윈도우 서버분석

 

1.OTL by OldTimer를 통해 

Processes Modules

Services Drivers

Standard Registry

Extra Registry

을 2000일 동안 분석.

2.추출하면 메모장으로 뜬다. 거기서 mtsfocom.exe을 검색

 

3.FTK Imager 실행

 

4.add 를 통해  위의 windows7.vmdk 을 추가 한다. (img file을 통해 출력)

 

5.root -> $LogFile $MFT 를 export file을 통해 추출

 

6.NTFS Log Tracket 는 위의 로그파일을 읽을 수 있게 해준다.

입력한 후 Parsing을 클릭

7.db저장

db이름 아무렇게나 하구 확인

8. 저장한 것을 엑셀파일로 변환.

CSV를 통해 엑셀파일로 변환하여 저장

9.  LogFile.scv에서 mtsfocom.exe 파일을 검색

 

10. mtsfcom.exe 를 디버거로 실행

위의 주소에서 다운이 된것을 확인.

 

 

 

'디지털 포렌식' 카테고리의 다른 글

파일시스템 포렌식  (0) 2019.07.29
윈도우 포렌식  (0) 2019.07.23
네트워크 포렌식  (0) 2019.07.15
안티 포렌식  (0) 2019.07.11
디지털 포렌식 개요  (0) 2019.07.11

+ Recent posts