악성코드 분석(29)
-
RootKit [ DeviceDriver 개념 및 설치실습]
RootKit침투를 성공한 공격자가 은밀하게 침투한 상태를 유지하도록 도와주는 프로그램 4가지 기능- 프로세스 숨기기- 파일 숨기기- 네트워크 커넥션 숨기기- 시스템에 접속하기 위한 백도어 설치 * RootKit은 커널의 DeviceDriver를 통해서 동작한다* RootKit을 공부하기 전에 DeviceDriver에 대해서 공부하자 DeviceDriver란 ?- load가능한 커널모드 모듈형태 ( .sys )- I/O관리자와 관련 하드웨어를 인터페이스로 연결한다- 커널내에 존재하여, Hal.dll을 통해서 하드웨어와 조작 및 통신- 컴퓨터 하드웨어 장치와 상호작용하기 위해 만들어진 컴퓨터 프로그램- 커널 전체 소스에 포함되어 컴파일 되기도하고, 별도로 컴파일된 (sys파일)형태로 존재할 수 있다- dl..
2018.05.13 -
Windows Message Hooking ( 키보드입력 후킹 실습 )
* 메모장에서 키보드 입력하려는 것을 후킹하여 메모장에서 키보드 입력이 먹히지 않도록 하는 실습 [ KeyHook Code ]KeyHook.cpp 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667#include "stdio.h"#include "windows.h" #define DEF_PROCESS_NAME "notepad.exe" HINSTANCE g_hInstance = NULL;HHOOK g_hHook = NULL;HWND g_hWnd = NULL; BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWO..
2018.05.10 -
Windows Message Hooking ( KeyLogger 실습 )
WindowMessageHooking - 키보드나 마우스의 입력을 후킹한다[ Key -> OS -> Application ] => [ Key -> OS -> Hooker -> Application ] KeyLogger 실습CPP타입의 키로거 파일을 비쥬얼베이직으로 Release하여서 실행가능한 파일로 생성해야한다[ Release 순서 ]New Project - Win32 Console Application Console application & Empty project 헤더파일과 소스파일을 구분하여 파일을 옮긴 다음 Release를 실행해야한다" F7 " => Release => 실행가능한 파일로 생성된다 [ KeyLogger Source Code ][1] keys.cpp - 입력내용을 검사하는 함수 등..
2018.05.10 -
악성코드 분석 실습 ( Lab07_03 ) [ DLL 변조]
[ 기초 정적분석 ] Lab07-03.exe패킹의 흔적은 없고, KERNERL32.dll 과 MSVCRT.dll을 import한다 File과 관련된 메서드들을 사용하고 있다 의심스러운 문자열로는 " kerne132.dll " , " Lab07-03.dll " , " C:\* " 이 확인된다 Lab07-03.dllKERNEL32.dll 과 WS2_32.dll을 임포트하고 있다 WS2_32.dll : 소켓통신과 관련된 dll [ 기초 동적분석 ]Lab07-03.exe를 실행시키고 변경되어지는 시스템들을 확인해보자API에서 특별히 이상한 낌새를 보이는 부분은 보이지 않는다디렉터리에 접근하는 부분도 특별히 이상은 없었다 [ 고급 정적분석 ]Lab07-03.dll 분석OpenMutexA & CreateMutexA..
2018.05.03 -
악성코드 분석 실습 ( Lab07_02 ) [ COM Object ]
[ 기초 정적분석 ]1> ExeinfoPE패킹의 흔적은 보이지 않으며, 임포트한 dll을 확인할 수 있었다 2-1> pestudio (1) VariantInit, SysAllocString, SysFreestring함수를 사용하고 있다 2-2> pestudio (2)의심스러운 www.malwareanalysisbook.com/ad.html 주소가 확인되었다 [ 기초 동적분석 ] - SysAnalyzer1> 실행화면악성파일 실행 후 30초동안 이루어지는 시스템의 현상을 살펴보자 2> Open Ports여러개의 포트가 열어짐이 확인된다 3> Directory Watch인터넷을 요청하기 위해 IEUser Directory를 사용함을 확인할 수 있다 4> API Log악성파일이 사용한 함수 흔적들이다 * COM..
2018.05.03 -
악성코드 고급 정적 분석 ( Lab07_01 ) [ DOS Attack ]
고급 정적분석은 IDA Pro를 통해 Lab07_01악성파일을 분석한다 해당 악성파일은 StartServiceCtrlDispatcherA함수 호출 이후 sub_0x00401040주소의 함수를 호출한다 sub_401040은 실질적인 main함수가 된다StartServiceCtrlDispatcherA()connect the main thread of a service process to the service control manager,the thread to be the service control dispatcher thread for the calling process. 0x401040로 이동하자제일 먼저 OpenMutexA함수를 볼 수 있다 OpenMuextA( DA,IH,MutexObject ) -..
2018.05.02