본문 바로가기
디지털 포렌식

디지털 포렌식 10

by 윤라경 2024. 10. 30.

[2024.10.30]

 

[메모리 포렌식]

 

01. cmd 사용 기록

 

c:\ vola.exe -f 2.mem --profile=Win7SP1x64 cmdscan

 

 

 

02. cmd 사용 기록 목록 출력

 

c:\ vola.exe -f 4.raw --profile=Win7SP1x64 iehistory

 

 

인터넷 익스플로러를 실행 후 4.raw 덤프하고 파일을 생성한다

 

 

4.raw를 palist로 확인하게 되면 바로 iexplore.exe를 확인할 수 있다

 

 

이전의 4.raw는 히스토리가 나오지 않아 다시 6.raw로 생성했다

6.raw 역시 pslist로  iexplore.exe로 덤핑된 걸 볼 수 있다

 

 

6.raw 파일로 iehistory를 이용하여 사용 기록 목록을 출력했으며,

현재 창을 열어 둔 인터넷 익스플로러의 url을 확인할 수 있다

 

 

이번에는 창을 새로 열어 여러 개를 띄우고 덤핑을 시도했다

 

 

메모리가 부족할 가능성도 있어 모두 삭제 후 2.raw로 다시 생성했다

 

 

2.raw 파일 역시 pslist는 확인되지만 히스토리는 확인할 수 없어 다시 생성했다

 

 

3.raw pslist를 확인하게 되면 iexplore.exe를 확인할 수 있다

창을 여러 개 띄우고 시작했지만 두 개밖에 나오지 않는다

 

 

3.raw의 iehistory를 확인했을 때에도 두 개가 아닌 하나로 출력된다

 

 

3.raw cmdscan로 cmd 사용 기록도 살펴보고 목록을 확인했을 때

가장 많이 사용한 volatility와 DumpIt이 나오는 것을 볼 수 있다

 

 

마지막으로 3.raw로 netscan도 확인했다

netscan 역시 확인 시 인터넷 익스플로러를 열어 두었기 때문에

포트 번호 443으로 기록이 남게 되는 걸 확인할 수 있다

 

 

03. 프로세스 덤프

 

c:\ vola -f 1.vmem --profile=Win7SP1x64 memdump -p 1364 -D ./

 

> -D ./  <--  현재 디렉터리에 덤프한다는 뜻

 

 

다시 기존의 1.vmem 파일로 pslist를 확인하고

의심되는 SkypeC2AutoUpd의 PID를 확인한다 

 

 

프로세스 덤프를 위해 PID를 입력하고 현재 디렉터리에

덤프하겠다는 뜻으로 명령어를 입력 후 스트링을 실행하여 텍스트 파일로 추출한다

 

 

생성된 파일을 확인 시 사용하지 않는 코드와 사용되는 코드가 뒤섞인 상태다

현재 알 수 있는 것은 Wow64 같은 부분은 실존하는 파일 디렉터리가

아닐 가능성이 크기 때문에 의심해 봐야 되는 코드라고 볼 수 있다

 

 

실제로 SkypeC2AutoUpd가 악성 코드인지 확인하기 위해

virustotal 페이지에서 프로세스 덤프를 진행한 1346의 프로세스 파일로 확인 시

SkypeC2AutoUpd는 악성 코드가 아니라는 걸 확인했다

화면을 보면 알 수 있듯이 찾아낸 갯수가 0이기 때문에 악성 코드가 아니라고 보면 된다

 

*악성 코드의 경우 빨간색으로 검열되면서 악성 코드의 갯수가 나옴

 

 

2.raw를 다시 생성하여 pslist로 iexplore.exe의 PID에서 둘 중에 하나를 선택 후 프로세스 덤프를 시도한다

 

 

2.raw 파일로 프로세스 덤핑을 시도한다

 

 

해당 파일도 이전의 파일과 다른 점은 없다

현재 실행 중인 url을 확인할 수 있는 부분을 확인했고,

나머지도 이전의 파일과 비슷하다는 공통점이 있다

 

 

04. MFT 파싱

 

c:\ vola -f 2.raw --profile=Win7SP1x64 mftparser

 

> 디스크의 메타 데이터를 가져오는 것

 

 

시간이 오래 걸리지만 이런 식으로 해시 값도 나타난다

 

 

나머지는 디스크의 메타 데이터를 차례대로 나열하는 방식으로 출력되었다

 

 

05. 문자열 추출

 

c:\ vola -f 2.raw --profile=Win7SP1x64 filescan | findstr "DumpIt.exe"

 

 

filescan | findstr "DumpIt.exe"를 하게 되면

2.raw 파일에서 나오는 DumpIt.exe 문자열을 모두 추출한다

 

 

06. 파일 추출

 

c:\ vola -f 2.raw --profile=Win7SP1x64 dumpfiles -Q [가상 메모리 주소]

 

*가상 메모리 주소: 0xfffffa801aee3210

 

 

07. 레지스트리 Hive 목록 추출

 

c:\ vola -f 2.raw --profile=Win7SP1x64 hivelist

 

 

 

08. 사용자 정보 추출

 

c:\ vola -f 2.raw --profile=Win7SP1x64 getsids

 

 

일반 사용자는 1000번대로 시작한다

또한 관리자는 500, 게스트는 501번이다

S-1-5-21에서 S-1은 Windows System을 뜻하고,

다음의 5-21은 Domain Controller System이다

나머지는 시스템 고유 식별자로 랜덤으로 생성된다

 

 

 

강의 소감

오늘도 메모리 포렌식의 실습을 이어서 진행했다

이번 시간도 역시 기록을 기반으로 계속 검색하고,

찾아내는 그런 실습들을 연속적으로 진행했다

cmd 사용 기록과 프로세스 덤프까지 시도했다

MFT 파싱으로 디스크의 메타 데이터를 추출하는 것도 진행했지만,

MFT 파싱의 경우 상당한 시간이 소요된다

마지막으로 문자열 및 파일 추출에 더불어

사용자 정보를 추출로 마무리했다

사용자 정보의 경우 번호대로 다른 것까지 알게 되었다

이런 실습을 토대로 포렌식의 연장선을

계속해서 배우고 있는 것 같다

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

디지털 포렌식 12  (0) 2024.11.04
디지털 포렌식 11  (0) 2024.10.31
디지털 포렌식 9  (0) 2024.10.29
디지털 포렌식 8  (0) 2024.10.28
디지털 포렌식 7  (2) 2024.10.25