#About


해당 메모리덤프 파일은 악성코드에 감염된 PC의 메모리를 덤프 한 것이다.

본 메모리 덤프에서 악성코드를 찾아 exe 파일 형식으로 다운로드 한 후 해당 악성코드의 해쉬값을 인증하여라.


(추출은 exe 형식의 파일로 추출하며, sha-1 해쉬를 인증한다.)




#Solution


[그림 1] - 문제 파일 확인


문제에서 제공받은 메모리 덤프 파일을 확인했으며 곧 바로 volatility를 이용해 이미지 정보를 확인했다


[그림 2] - 이미지 정보 확인


imageinfo 명령을 통해 얻은 메모리 덤프를 진행한 시스템의 서비스팩 정보를 얻을 수 있었다. 


문제에서 제시한 PC는 악성코드에 감염되어 있으므로, 악성코드가 실행된 프로그램의 프로세스가 메모리에 상주하고 있을 것이다


따라서 프로세스 정보를 보기위한 명령어 pstree를 이용했으며 결과는 아래와 같다


[그림 3] - 프로세스 정보 확인


악성코드는 주로, 기본 프로세스와 유사해 자세히 보지 않으면 알기 어려운 이름을 가지거나 DLL 기반 서비스를 관리하는 svchost.exe를 주로 건드린다


svchost.exe는 윈도우즈 서비스를 백그라운드로 구동되는 프로세스이며, 서비스 제어 관리자인 services.exe에 의해 관리된다


만약 services.exe에 의해 관리되는 svchost.exe가 services.exe의 자식 프로세스가 아니거나, explorer.exe 또는 


다른 프로세스 또는 단독으로 메모리에 상주한다면 svchost.exe라는 이름을 가진 악성코드일 확률이 매우 높다


출처 = d0lk0ng.tistory.com/42


이를 바탕으로 [그림 3]을 살펴보면 svchost.exe들의 PPID가 532이며, PID는 위의 설명과 동일하게 Services.exe의 PID임을 확인할 수 있다


[그림 4] - 의심스러운 svchost.exe 확인


위 그림에서 모든 svchost.exe는 PPID 532인 services.exe의 하위 프로세스로 돌아가고 있지만, 마지막에 위치하는 svchost.exe는 PPID 3868를 가진다


따라서 해당 메모리에 상주하고 있는 악성코드는 PID 3876을 가지는 svchost.exe이다


이를 문제에서 요구하는, exe 파일형식으로 추출하기 위해서 아래와 같이 procexedump 명령을 사용했으며 성공적으로 추출해낼 수 있었다


[그림 5] - Procexedump 명령을 이용한 파일 추출



[그림 6] - SHA-1 해시 값 확인


Answer = 819883BC936337F525BC6D520562E5D785F1C64E



'Wargame' 카테고리의 다른 글

[Cresendo] Network Problem 02  (0) 2017.11.11
[Cresendo] Network Problem 01  (0) 2017.11.10
[Cresendo] Memory Problem 02  (0) 2017.11.09
[Cresendo] Memory Problem 01  (0) 2017.11.09
[Cresendo] Shim Cache Problem 01  (0) 2017.11.09

#About


평소에 PC 게임을 즐겨하던 왕별난 양은 누군지 알 수 없는 신원미상의 해커로부터 당신의 PC는 해킹되었으며, 당신의 일상생활을 담은 영상이 있으니, 이 영상을 유포하지 않는 조건으로 금품을 달라고 요구하고 있다. 이 해커가 사용한 C&C서버의 IP주소와 Port 번호를 적으시오.


(인증 형식은 IP_Port)




#Solution


[그림 1] - 문제 파일 확인


메모리 덤프 파일을 제공 받았으며 곧 바로 분석을 위해 Volatility를 이용해 메모리 덤프를 한 시스템 정보를 확인했다


[그림 2] - Imageinfo


Imageinfo 명령을 통해 메모리를 덤프한 시스템의, 시스템 정보를 얻었으며 Suggested Profile 필드를 통해 


다른 플러그인을 사용함에 있어 필요한 --profile에 전달되는 파라미터 값을 얻을 수 있었다


문제에서 요구하는 내용은 해커가 사용한 C&C서버의 IP와 Port번호이므로 네트워크 관련 명령어인 netscan을 사용했다


[그림 3] - netscan


netscan은 포렌식에 있어 네트워크 아티팩트를 찾아주는 역할을 하며, TCP Endpoints와 listeners, 


UDP Endpoints와 listeners등을 찾아주며 메모리 덤프로부터 연결/종료된 네트워크 세션을 확인가능하다


또한 netscan 명령어는 32bit와 64bit의 Windows Vista, 2008 Server, 7에서 사용가능하다


문제로 돌아가 네트워크 세션을 살피다보면 아래에서 Owner의 이름이 의심스러운 것을 확인가능 하다


[그림 4] - 의심스러운 Owner 발견


svchost.exe.ex라는 이름을 가지는 레코드에서, 로컬에서 원격으로 연결 요청을 시도한 상태인 SYN_SENT을 확인할 수 있다


이는 문제에서 일어난 시나리오와 연관지을 수 있으며 그 시나리오는 아래와 같다


네트워크 통신을 하는 악성코드 또는 바이러스의 감염으로 인해 해커는 사용자 웹 캠 정보를 탈취했고 


그 정보를 사용자의 로컬에서 해커의 C&C서버인 210.220.131.43:34251로 웹 캠 정보를 전송했다


Answer = 210.220.131.43_34251



'Wargame' 카테고리의 다른 글

[Cresendo] Network Problem 01  (0) 2017.11.10
[Cresendo] Memory Problem 03  (0) 2017.11.10
[Cresendo] Memory Problem 01  (0) 2017.11.09
[Cresendo] Shim Cache Problem 01  (0) 2017.11.09
[Cresendo] LNK Problem 05  (0) 2017.11.08

#About


평소에 컴퓨터로 업무와 간단한 게임 이외의 작업은 하지 않던 나잘난군은 최근 자꾸 컴퓨터가 이상동작을 함을 느끼게 되었고, 평소에 친분이 있던 당신에게 분석을 의뢰하여 당신은 나잘난군의 PC의 메모리 덤프를 요청하여 분석을 진행하게 되었다. 메모리상에 존재하는 악성 Process의 이름과 해당 악성 프로세스의 부모 프로세스의 부모 프로세스의 이름을 구하시오.


(인증형식 : Process Name_부모의 부모Process Name)




#Solution


[그림 1 ] - 문제 파일 확인


제공 받은 문제 파일에서 확장자 .raw이 가지는 특징을 검색해보았더니 포렌식 위키에서 정보를 얻을 수 있었다


http://forensic.korea.ac.kr/DFWIKI/index.php/메모리_획득_도구


[그림 2] - 메모리 이미지의 포맷 유형


위 그림에서 메모리 이미지 덤프 파일임을 확인하고 메모리 파일의 분석을 위해 파이썬 기반의 메모리 분석 도구인 Volatility를 이용했다


http://www.volatilityfoundation.org/


[그림 2] - Imageinfo


Imageinfo 명령은 메모리 덤프를 시킨 시스템 정보의 요약을 제공하며, Suggested Profile 필드에 나온 결과 값인 


서비스 팩 정보는 다른 플러그인을 사용함에 있어 --profile의 파라미터 값으로 전달되어 사용된다


문제에서 요구하는 것은 프로세스와 관련되므로 프로세스의 정보를 보여주는 명령어인 psscan를 사용했다


[그림 3] - 의심되는 프로세스 확인


psscan을 이용하여 프로세스 정보를 확인 결과, sms.exe라는 프로세스가 메모리에 상주하고 있었다


sms.exe라는 파일은, Session Manager SubSystem를 의미하는 smss.exe와 유사한 이름을 가지는 프로세스로, 


기본적으로 윈도우 시작 프로세스 과정에 실행되는 smss.exe와 달리, sms.exe는 따로 윈도우 기본 프로세스에 속하지 않는다


[그림 4] - PPID 확인


문제에서 요구하는, 메모리상의 악성 프로세스의 부모 프로세스를 따라 가보았더니 더욱이 의심되는 sms.exe.exe라는 


이름의 프로세스를 확인할 수 있었고, sms.exe.exe의 부모 프로세스를 따라가보았더니 explorer.exe라는 프로세스임을 확인할 수 있었다


Answer = sms.exe_explorer.exe




[ + ] 윈도우 기본 프로세스 목록


csrss.exe

csrss는 클라이언트/서버 런타임 하위 시스템을 나타내며 항상 실행되어야 하는 필수 하위 시스템이며 csrss는 콘솔 창, 스레드 생성과 삭제 및 16비트 가상 MS-DOS 환경의 일부를 담당한다


explorer.exe

작업 표시줄, 바탕 화면 등으로 표시되는 사용자 셸이며 윈도우의 대부분의 명령 처리를 관리한다


lsass.exe

로컬 보안 인증 서버인 이 프로세스는 Winlogon 서비스에 대해 사용자 인증 프로세스를 생성한다


smss.exe

사용자 세션의 시작을 담당하는 세션 관리자 하위 시스템으로, 시스템 스레드에서 시작되며 Winlogon 및 Win32(csrss.exe)프로세스의 시작과 

시스템 변수설정을 비롯한 다양한 작업을 수행한다 또한, smss.exe는 이러한 프로세스를 시작 후 Winlogon 또는 csrss가 끝나기를 기다린다. 

Winlogon 또는 csrss 정상적으로 끝나면 시스템이 종료되지만 예기치 않은 동작이 일어나면 smss.exe는 시스템이 응답을 중지하도록 한다


services.exe

시스템 서비스의 시작, 중지 및 시스템 서비스와의 상호 작용을 담당하는 서비스 제어 관리자이다


spoolsv.exe

스풀 서비스는 스풀링된 인쇄/팩스 작업 관리를 담당한다


svchost.exe

DLL에서 실행되는 다른 프로세스의 호스트 역할을 하는 일반 프로세스이다


system

대부분의 시스템 커널 모드 스레드가 System 프로레스로 실행된다


system Idle Process

각 프로세서에서 실행되는 단일 스레드로 시스템이 다른 스레드를 처리하지 않을 때의 프로세서 시간을 나타내는 역할을 한다


Taskmgr.exe

작업 관리자 자체에 대한 프로세스이다


Winlogon

로그온과 로그오프를 관리하는 프로세스이며, Winlogon은 사용자가 Ctrl+Alt+Del을 누를 때만 활성화되어 보안 대화 상자를 표시한다


출처 = spr2ad.tistory.com/192



'Wargame' 카테고리의 다른 글

[Cresendo] Memory Problem 03  (0) 2017.11.10
[Cresendo] Memory Problem 02  (0) 2017.11.09
[Cresendo] Shim Cache Problem 01  (0) 2017.11.09
[Cresendo] LNK Problem 05  (0) 2017.11.08
[Cresendo] LNK Problem 04  (0) 2017.11.08

+ Recent posts