실전 악성코드와 멀웨어 분석 – 3장 기초 동적 분석 실습 3-4

 

Notice : 해당 자료가 저작권등에 의해서 문제가 있다면 바로 삭제하겠습니다.
연구목적으로 사용하지 않고 악의적인 목적으로 이용할 경우 발생할 수 있는 법적은 책임은 모두 본인에게 있습니다.

Practical_Malware_Analysis
[구매하기]

실전 악성코드와 멀웨어 분석 – 1장 기초 정적분석 실습 1-1
실전 악성코드와 멀웨어 분석 – 1장 기초 정적분석 실습 1-2
실전 악성코드와 멀웨어 분석 – 1장 기초 정적분석 실습 1-3
실전 악성코드와 멀웨어 분석 – 1장 기초 정적분석 실습 1-4
실전 악성코드와 멀웨어 분석 – 3장 기초 동적 분석 실습 3-1
실전 악성코드와 멀웨어 분석 – 3장 기초 동적 분석 실습 3-2
실전 악성코드와 멀웨어 분석 – 3장 기초 동적 분석 실습 3-3
실전 악성코드와 멀웨어 분석 – 3장 기초 동적 분석 실습 3-4

실습문제 다운로드 받는 곳 : http://nostarch.com/malware

실습 3-4
기초 동적분석 도구를 이용해 Lab03-04.exe 파일에서 발견된 악성코드를 분석하라.
(이 프로그램은 나중에 9장 실습에서 분석한다.)

질문
1. 이 파일을 실행했을 때 어떤일이 발생 했는가?
A: 실행시킨 악성코드가 conime.exe 자식 프로세스를 실행시키고 바로 없어지면서, 악성코드 자신도 삭제되었다.
3-4-1
3-4-2

ProcMon 에서 이벤트를 확인해보니, 아래와 같은 이벤트를 확인할수 있었다.
3-4-3

2. 동적 분석시 장애물이 무엇인가?
A:해당 악성코드가 삭제되고 실행되지 않아서 어떤 일을 수행하는지 알수 없다. 특정 조건 또는 컴포넌트가 필요할 것으로 보인다.

3. 이 파일을 실행시키는 다른 방법이 있는가?
A: strngs 으로 확인해보니 아래와 같은 문자열이 나타났다.

Strings v2.51
Copyright (C) 1999-2013 Mark Russinovich
Sysinternals - www.sysinternals.com

!This program cannot be run in DOS mode.
...
command.com
COMSPEC
...
__GLOBAL_HEAP_SELECTED
__MSVCRT_HEAP_SELECT
runtime error 
TLOSS error
SING error
DOMAIN error
R6028
- unable to initialize heap
R6027
- not enough space for lowio initialization
R6026
- not enough space for stdio initialization
R6025
- pure virtual function call
R6024
- not enough space for _onexit/atexit table
R6019
- unable to open console device
R6018
- unexpected heap error
R6017
- unexpected multithread lock error
R6016
- not enough space for thread data
abnormal program termination
R6009
- not enough space for environment
R6008
- not enough space for arguments
R6002
- floating point not loaded
Microsoft Visual C++ Runtime Library
Runtime Error!
Program: 
...
<program name unknown>
SunMonTueWedThuFriSat
JanFebMarAprMayJunJulAugSepOctNovDec
.com
.bat
.cmd
@@
GetLastActivePopup
GetActiveWindow
MessageBoxA
user32.dll
PATH
@@
CloseHandle
SetFileTime
GetFileTime
CreateFileA
GetSystemDirectoryA
GetLastError
ReadFile
WriteFile
Sleep
GetShortPathNameA
GetModuleFileNameA
CopyFileA
ExpandEnvironmentStringsA
DeleteFileA
KERNEL32.dll
RegQueryValueExA
RegOpenKeyExA
RegSetValueExA
RegCreateKeyExA
RegDeleteValueA
CreateServiceA
CloseServiceHandle
ChangeServiceConfigA
OpenServiceA
OpenSCManagerA
DeleteService
ADVAPI32.dll
ShellExecuteA
SHELL32.dll
WS2_32.dll
ExitProcess
TerminateProcess
GetCurrentProcess
GetTimeZoneInformation
GetSystemTime
GetLocalTime
DuplicateHandle
GetCommandLineA
GetVersion
SetStdHandle
GetFileType
SetHandleCount
GetStdHandle
GetStartupInfoA
CreatePipe
GetExitCodeProcess
WaitForSingleObject
HeapReAlloc
HeapAlloc
GetCPInfo
GetACP
GetOEMCP
UnhandledExceptionFilter
FreeEnvironmentStringsA
FreeEnvironmentStringsW
WideCharToMultiByte
GetEnvironmentStrings
GetEnvironmentStringsW
GetModuleHandleA
GetEnvironmentVariableA
GetVersionExA
HeapDestroy
HeapCreate
VirtualFree
HeapFree
RtlUnwind
MultiByteToWideChar
GetStringTypeA
GetStringTypeW
SetFilePointer
VirtualAlloc
LCMapStringA
LCMapStringW
GetProcAddress
LoadLibraryA
FlushFileBuffers
GetFileAttributesA
CreateProcessA
CompareStringA
CompareStringW
SetEnvironmentVariableA
lZ@
Configuration
SOFTWARE\Microsoft \XPS
\kernel32.dll
 HTTP/1.0
GET 
'`'`'
`'`'`
NOTHING
CMD
DOWNLOAD
UPLOAD
SLEEP
cmd.exe
 >> NUL
/c del 
ups
http://www.practicalmalwareanalysis.com
 Manager Service
.exe
%SYSTEMROOT%\system32\
k:%s h:%s p:%s per:%s
-cc
-re
-in

SOFTWARE\Microsoft \XPS 와 같은 레지스트리 위치와 http://www.practicalmalwareanalysis.com 주소, HTTP/1.0 등을 보아 http 통신을 하는 것으로 보이며, -cc, -re, -in 명령창에서 사용할 것으로 보이는 옵션들도 확인할 수 있었다.

해당 악성코드를 실행시키기 위햇 몇몇가지 시도를 해보았으나 잘되지 않았다.

 

This entry was posted in Reading, Reversing and tagged , . Bookmark the permalink.

4 Responses to 실전 악성코드와 멀웨어 분석 – 3장 기초 동적 분석 실습 3-4

댓글 남기기