SlideShare a Scribd company logo
악성코드 분석 사례
2008.10.07
㈜ 안철수연구소
AhnLab Security E-response Center
Anti-Virus Researcher, CISSP
장 영 준 주임 연구원
2
1. Dropper/PcClient.47873
은폐 기능을 수행하며 별도의 파일들을 생성하는 드로퍼 (Dropper) 형태의 트로이목마
1) Visual C++로 제작
2) 윈도우 시스템 폴더에 2개의 DLL 파일과 1개의 드라이버 파일 생성
3) 생성한 드라이버 파일을 이용한 커널 모드(Kernel Mode) 은폐 기능 수행
4) 생성한 파일들에 대한 파일 및 레지스트리 은폐 기능 수행
5) 실행한 인터넷 익스플로러의 프로세스 및 네트워크 포트 은폐 기능 수행
6) 실행한 인터넷 익스플로러를 이용하여 외부 특정 시스템으로 접속 시도
7) 접속한 시스템을 통하여 제3의 시스템으로 재접속 후 공격자의 명령 수행
8) 실행 중인 모든 프로세스에 스레드 (Thread)로 인젝션 (Injection)하여
사용자가 입력하는 모든 키보드 입력을 후킹 (Hooking)
1. 악성코드 분석 사례
3
2. 파일 형태 분석
헥사 코드(Hex Code)를 분석할 수 있는 유틸리티를 이용하여 파일 형태 분석
윈도우에서 실행이 가능하도록 제작된 PE (Portable Executable) 파일
.text, .rdata, .data의 3개의 PE (Portable Executable) 섹션 (Section)을 가지고 있음.
1. 악성코드 분석 사례
4
3. 파일 구조 분석
파일의 구조를 분석할 수 있는
유틸리티를 이용하여 파일의
구조 분석
단독으로 윈도우에서 실행이 가능
하도록 제작된 실행 파일
비주얼 C++로 제작
메모리에서 시작 주소는 0x403466
1. 악성코드 분석 사례
5
4. 윈도우 API 분석
파일의 IAT (Import Address Table)
분석 툴로 윈도우 API 분석
다음의 API들을 사용함으로 정상 파일
이 아닐 것으로 추정
GetSystemDirectoryA
Process32Next
CreateRemoteThread
GetModuleHandleA
WriteProcessMemory
OpenProcess
AdjustTokenPrivileges
OpenProcessToken
LookupPrivilegeValueA
1. 악성코드 분석 사례
6
5. 파일 내부 문자열 분석
파일의 내부 문자열 (String)을 분석할 수 있는 유틸리티를 이용하여 분석
파일 내부 문자열 (String)에서는 정상 파일 또는 악성코드로 추정되는 특별한
내부 문자열을 확인 할 수 없음
1. 악성코드 분석 사례
7
6. 파일을 시스템에서 실행
시스템 변화를 분석 할 수 있는 유틸리티를 이용하여 파일을 시스템에서 실행 후
시스템 변화 분석
생성된 파일은 없으나 레지스트리 키 값 생성으로 특정 드라이버 파일을 서비스로 등록
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesyncqjmkq "ImagePath"
Type: REG_EXPAND_SZ
Data: C:WINDOWSsystem32driversyncqjmkq.sys
파일이 드라이버 파일을 생성하고 윈도우 서비스로 레지스트리에 등록한 것으로 확인
레지스트리 분석 유틸리티를 이용하여 해당 레지스트리 키 값을 검색해보았으나 정상 윈도우
모드에서 확인되지 않음
해당 드라이버 파일을 윈도우 시스템 폴더의 드라이버 폴더에서 검색 해보았으나
정상 윈도우 모드에서 확인되지 않음
1. 악성코드 분석 사례
8
7. 파일 실행 후 네트워크 분석
네트워크 포트와 패킷을 분석할 수 있는 유틸리티를 이용하여 시스템의 네트워크 분석
사용되는 포트가 없으나 특정 시스템으로 접속하는 네트워크 패킷이 분석됨
1. 악성코드 분석 사례
9
8. 파일 실행 후 시스템 추가 분석 (1)
현재까지 분석 상황으로 미루어 은폐형 악성코드로 의심됨으로 은폐 기능을
탐지 할 수 있는 유틸리티로 시스템 분석
은폐 기능 탐지 유틸리티를 이용하여 인터넷 익스플로러가 은폐되어 있는 것을 탐지
그 외의 파일들이 윈도우 시스템에서 은폐되어 있는 것을 탐지
1. 악성코드 분석 사례
10
실행 파일이 생성한 파일들의 현재 상태를 유틸리티를 이용하여 추가 분석
실행 파일이 생성한 YNCQJMKQ.D1L 은 은폐된 인터넷 익스플로러에 핸들 (Handle)로 실행
실행 파일이 생성한 YNCQJMKQ.DLL 은 실행 중인 프로세스들에 스레드 (Thread)로
인젝션 (Injection)
9. 파일 실행 후 시스템 추가 분석 (2)
1. 악성코드 분석 사례
11
10. 파일 디버깅 및 디스어셈블링 (1)
실행 파일을 OllyDbg 를 이용하여 디버깅
실행 파일이 실행되면 시스템 사용자 계정의 임시 폴더 경로 확보
임시 폴더에 YNCQJMKQ.tmp, YNCQJMKQ.d1l 과 YNCQJMKQ.log 파일 생성
1. 악성코드 분석 사례
12
11. 파일 디버깅 및 디스어셈블링 (2)
윈도우 시스템 폴더 경로 확보 후 생성한 파일들 중 YNCQJMKQ.tmp 는 YNCQJMKQ.dll 로
파일명을 변경하여 윈도우 시스템 폴더로 복사
YNCQJMKQ.d1l 은 명칭 변경 없이 윈도우 시스템 폴더로 복사
복사 이후 YNCQJMKQ.sys를 윈도우 시스템 폴더 아래의 drivers 폴더에 생성
인터넷 익스플로러를 실행한 후 YNCQJMKQ.d1l 를 인터넷 익스플로러의 핸들(Handle)로
등록 후 실행
1. 악성코드 분석 사례
13
12. 파일 디버깅 및 디스어셈블링 (3)
YNCQJMKQ.d1l 는 실행된 인터넷 익스플로러를 통해 다음 함수들을 이용하여 파일내
하드코딩 된 주소의 특정 시스템으로 접속 후 파일 다운로드
InternetSetOptionA, InternetOpenA, InternetOpenUrlA, InternetReadFile
1. 악성코드 분석 사례
14
13. 파일 디버깅 및 디스어셈블링 (4)
YNCQJMKQ.d1l 는 다음 함수들을 호출
YNCQJMKQ.sys를 윈도우 서비스로 실행
OpenSCManagerA, OpenServiceA
CreateServiceA, StartServiceA
YNCQJMKQ.sys는 KeServiceDescriptorTable 을 이용 하여
SSDT (System Service Descriptor Table) 후킹 (Hooking)을 하여 은폐 기능을 수행
ZwCreateFile, ZwQueryKey, ZwEnumerateValueKey, ZwEnumerateKey
ZwQuerySystemInformation, ZwQueryDirectoryFile
1. 악성코드 분석 사례
15
14. 파일 디버깅 및 디스어셈블링 (5)
YNCQJMKQ.dll를 CreateRemoteThread 함수를 이용 실행 중인 프로세스들에 스레드(Thread)
로 인젝션(Injection) 후 실행
인젝션된 YNCQJMKQ.dll는 다음 함수들을 이용하여 사용자가 입력하는 키보드 입력을 후킹
SetWindowsHookExA, CallNextHookEx, GetKeyboardState,
1. 악성코드 분석 사례
Q&A
감사합니다

More Related Content

What's hot

5. system level reversing
5. system level reversing5. system level reversing
5. system level reversing
Youngjun Chang
 
2. 악성코드 분석 방법론과 기법
2. 악성코드 분석 방법론과 기법2. 악성코드 분석 방법론과 기법
2. 악성코드 분석 방법론과 기법
Youngjun Chang
 
Memory forensics with volatility
Memory forensics with volatilityMemory forensics with volatility
Memory forensics with volatility
Youngjun Chang
 
1. 악성코드 진단 기법 개론
1. 악성코드 진단 기법 개론1. 악성코드 진단 기법 개론
1. 악성코드 진단 기법 개론
Youngjun Chang
 
1. 악성코드 진단 기법 개론
1. 악성코드 진단 기법 개론1. 악성코드 진단 기법 개론
1. 악성코드 진단 기법 개론
Youngjun Chang
 
악성코드와 분석 방법
악성코드와 분석 방법악성코드와 분석 방법
악성코드와 분석 방법Youngjun Chang
 
악성코드와 시스템 복구
악성코드와 시스템 복구악성코드와 시스템 복구
악성코드와 시스템 복구
Youngjun Chang
 
Windows Vista Security
Windows Vista SecurityWindows Vista Security
Windows Vista Security
Youngjun Chang
 
2007년 6월 악성코드 최신 동향과 대응
2007년 6월 악성코드 최신 동향과 대응2007년 6월 악성코드 최신 동향과 대응
2007년 6월 악성코드 최신 동향과 대응
Youngjun Chang
 
악성코드와 웜
악성코드와 웜악성코드와 웜
악성코드와 웜
Youngjun Chang
 
악성코드 분석 도구
악성코드 분석 도구악성코드 분석 도구
악성코드 분석 도구
Youngjun Chang
 
보안 위협 형태와 악성코드 분석 기법
보안 위협 형태와 악성코드 분석 기법보안 위협 형태와 악성코드 분석 기법
보안 위협 형태와 악성코드 분석 기법
Youngjun Chang
 
악성코드와 분석 방안
악성코드와 분석 방안악성코드와 분석 방안
악성코드와 분석 방안
Youngjun Chang
 
악성코드와 기업의 악성코드 대응
악성코드와 기업의 악성코드 대응악성코드와 기업의 악성코드 대응
악성코드와 기업의 악성코드 대응
Youngjun Chang
 
악성코드와 분석 방안
악성코드와 분석 방안악성코드와 분석 방안
악성코드와 분석 방안
Youngjun Chang
 
[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis KO
[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis KO[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis KO
[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis KO
GangSeok Lee
 
악성코드 최신 동향과 분석 방안
악성코드 최신 동향과 분석 방안악성코드 최신 동향과 분석 방안
악성코드 최신 동향과 분석 방안
Youngjun Chang
 
(130216) #fitalk reverse connection tool analysis
(130216) #fitalk   reverse connection tool analysis(130216) #fitalk   reverse connection tool analysis
(130216) #fitalk reverse connection tool analysis
INSIGHT FORENSIC
 
4. reverse engineering basic
4. reverse engineering basic4. reverse engineering basic
4. reverse engineering basic
Youngjun Chang
 
(140407) #fitalk d trace를 이용한 악성코드 동적 분석
(140407) #fitalk   d trace를 이용한 악성코드 동적 분석(140407) #fitalk   d trace를 이용한 악성코드 동적 분석
(140407) #fitalk d trace를 이용한 악성코드 동적 분석
INSIGHT FORENSIC
 

What's hot (20)

5. system level reversing
5. system level reversing5. system level reversing
5. system level reversing
 
2. 악성코드 분석 방법론과 기법
2. 악성코드 분석 방법론과 기법2. 악성코드 분석 방법론과 기법
2. 악성코드 분석 방법론과 기법
 
Memory forensics with volatility
Memory forensics with volatilityMemory forensics with volatility
Memory forensics with volatility
 
1. 악성코드 진단 기법 개론
1. 악성코드 진단 기법 개론1. 악성코드 진단 기법 개론
1. 악성코드 진단 기법 개론
 
1. 악성코드 진단 기법 개론
1. 악성코드 진단 기법 개론1. 악성코드 진단 기법 개론
1. 악성코드 진단 기법 개론
 
악성코드와 분석 방법
악성코드와 분석 방법악성코드와 분석 방법
악성코드와 분석 방법
 
악성코드와 시스템 복구
악성코드와 시스템 복구악성코드와 시스템 복구
악성코드와 시스템 복구
 
Windows Vista Security
Windows Vista SecurityWindows Vista Security
Windows Vista Security
 
2007년 6월 악성코드 최신 동향과 대응
2007년 6월 악성코드 최신 동향과 대응2007년 6월 악성코드 최신 동향과 대응
2007년 6월 악성코드 최신 동향과 대응
 
악성코드와 웜
악성코드와 웜악성코드와 웜
악성코드와 웜
 
악성코드 분석 도구
악성코드 분석 도구악성코드 분석 도구
악성코드 분석 도구
 
보안 위협 형태와 악성코드 분석 기법
보안 위협 형태와 악성코드 분석 기법보안 위협 형태와 악성코드 분석 기법
보안 위협 형태와 악성코드 분석 기법
 
악성코드와 분석 방안
악성코드와 분석 방안악성코드와 분석 방안
악성코드와 분석 방안
 
악성코드와 기업의 악성코드 대응
악성코드와 기업의 악성코드 대응악성코드와 기업의 악성코드 대응
악성코드와 기업의 악성코드 대응
 
악성코드와 분석 방안
악성코드와 분석 방안악성코드와 분석 방안
악성코드와 분석 방안
 
[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis KO
[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis KO[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis KO
[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis KO
 
악성코드 최신 동향과 분석 방안
악성코드 최신 동향과 분석 방안악성코드 최신 동향과 분석 방안
악성코드 최신 동향과 분석 방안
 
(130216) #fitalk reverse connection tool analysis
(130216) #fitalk   reverse connection tool analysis(130216) #fitalk   reverse connection tool analysis
(130216) #fitalk reverse connection tool analysis
 
4. reverse engineering basic
4. reverse engineering basic4. reverse engineering basic
4. reverse engineering basic
 
(140407) #fitalk d trace를 이용한 악성코드 동적 분석
(140407) #fitalk   d trace를 이용한 악성코드 동적 분석(140407) #fitalk   d trace를 이용한 악성코드 동적 분석
(140407) #fitalk d trace를 이용한 악성코드 동적 분석
 

Viewers also liked

1.악성코드 최신 동향과 기법
1.악성코드 최신 동향과 기법1.악성코드 최신 동향과 기법
1.악성코드 최신 동향과 기법
Youngjun Chang
 
1. 2009년 상반기 보안 위협 동향
1. 2009년 상반기 보안 위협 동향1. 2009년 상반기 보안 위협 동향
1. 2009년 상반기 보안 위협 동향
Youngjun Chang
 
2.악성 코드와 최근의 동향
2.악성 코드와 최근의 동향2.악성 코드와 최근의 동향
2.악성 코드와 최근의 동향
Youngjun Chang
 
악성코드와 개인 정보 보호
악성코드와 개인 정보 보호악성코드와 개인 정보 보호
악성코드와 개인 정보 보호
Youngjun Chang
 
악성코드 최신 동향과 기법
악성코드 최신 동향과 기법악성코드 최신 동향과 기법
악성코드 최신 동향과 기법
Youngjun Chang
 
악성 코드와 보안 위협 동향
악성 코드와 보안 위협 동향악성 코드와 보안 위협 동향
악성 코드와 보안 위협 동향
Youngjun Chang
 
중국 It문화와 해커
중국 It문화와 해커중국 It문화와 해커
중국 It문화와 해커
Youngjun Chang
 
보안 위협 동향과 대응 방안
보안 위협 동향과 대응 방안보안 위협 동향과 대응 방안
보안 위협 동향과 대응 방안
Youngjun Chang
 
1. 보안 위협 동향과 주요 보안 위협 특징
1. 보안 위협 동향과 주요 보안 위협 특징1. 보안 위협 동향과 주요 보안 위협 특징
1. 보안 위협 동향과 주요 보안 위협 특징
Youngjun Chang
 

Viewers also liked (9)

1.악성코드 최신 동향과 기법
1.악성코드 최신 동향과 기법1.악성코드 최신 동향과 기법
1.악성코드 최신 동향과 기법
 
1. 2009년 상반기 보안 위협 동향
1. 2009년 상반기 보안 위협 동향1. 2009년 상반기 보안 위협 동향
1. 2009년 상반기 보안 위협 동향
 
2.악성 코드와 최근의 동향
2.악성 코드와 최근의 동향2.악성 코드와 최근의 동향
2.악성 코드와 최근의 동향
 
악성코드와 개인 정보 보호
악성코드와 개인 정보 보호악성코드와 개인 정보 보호
악성코드와 개인 정보 보호
 
악성코드 최신 동향과 기법
악성코드 최신 동향과 기법악성코드 최신 동향과 기법
악성코드 최신 동향과 기법
 
악성 코드와 보안 위협 동향
악성 코드와 보안 위협 동향악성 코드와 보안 위협 동향
악성 코드와 보안 위협 동향
 
중국 It문화와 해커
중국 It문화와 해커중국 It문화와 해커
중국 It문화와 해커
 
보안 위협 동향과 대응 방안
보안 위협 동향과 대응 방안보안 위협 동향과 대응 방안
보안 위협 동향과 대응 방안
 
1. 보안 위협 동향과 주요 보안 위협 특징
1. 보안 위협 동향과 주요 보안 위협 특징1. 보안 위협 동향과 주요 보안 위협 특징
1. 보안 위협 동향과 주요 보안 위협 특징
 

Similar to 3. 악성코드 분석 사례

Linux 강의자료 ed10
Linux 강의자료 ed10Linux 강의자료 ed10
Linux 강의자료 ed10
hungrok
 
(130511) #fitalk utilization of ioc, ioaf and sig base
(130511) #fitalk   utilization of ioc, ioaf and sig base(130511) #fitalk   utilization of ioc, ioaf and sig base
(130511) #fitalk utilization of ioc, ioaf and sig base
INSIGHT FORENSIC
 
(Ficon2016) #2 침해사고 대응, 이렇다고 전해라
(Ficon2016) #2 침해사고 대응, 이렇다고 전해라(Ficon2016) #2 침해사고 대응, 이렇다고 전해라
(Ficon2016) #2 침해사고 대응, 이렇다고 전해라
INSIGHT FORENSIC
 
시큐어디스크 ECM
시큐어디스크 ECM시큐어디스크 ECM
시큐어디스크 ECM
시온시큐리티
 
리눅스커널-디바이스드라이버_모듈_프로그래밍
리눅스커널-디바이스드라이버_모듈_프로그래밍리눅스커널-디바이스드라이버_모듈_프로그래밍
리눅스커널-디바이스드라이버_모듈_프로그래밍
Yunsu Lee
 
Ddd
DddDdd
dddd
dddddddd
dddd
dooroomi
 
(160820) #fitalk fileless malware forensics
(160820) #fitalk    fileless malware forensics(160820) #fitalk    fileless malware forensics
(160820) #fitalk fileless malware forensics
INSIGHT FORENSIC
 
리눅스 커널 기초 태스크관리
리눅스 커널 기초 태스크관리리눅스 커널 기초 태스크관리
리눅스 커널 기초 태스크관리
Seungyong Lee
 
04 프로세스
04 프로세스04 프로세스
04 프로세스
ssuser3fb17c
 
Hyperledger farbric build your first network install and analysis
Hyperledger farbric   build your first network install and analysisHyperledger farbric   build your first network install and analysis
Hyperledger farbric build your first network install and analysis
병준 김
 
보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법
Youngjun Chang
 
보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법
Youngjun Chang
 
(Fios#03) 4. 파워셸 포렌식 조사 기법
(Fios#03) 4. 파워셸 포렌식 조사 기법(Fios#03) 4. 파워셸 포렌식 조사 기법
(Fios#03) 4. 파워셸 포렌식 조사 기법
INSIGHT FORENSIC
 
App check pro_표준제안서_z
App check pro_표준제안서_zApp check pro_표준제안서_z
App check pro_표준제안서_z
시온시큐리티
 
(Fios#03) 1. 실전 윈도 악성코드 메모리 분석
(Fios#03) 1. 실전 윈도 악성코드 메모리 분석(Fios#03) 1. 실전 윈도 악성코드 메모리 분석
(Fios#03) 1. 실전 윈도 악성코드 메모리 분석
INSIGHT FORENSIC
 
(111217) #fitalk rootkit tools and debugger
(111217) #fitalk   rootkit tools and debugger(111217) #fitalk   rootkit tools and debugger
(111217) #fitalk rootkit tools and debugger
INSIGHT FORENSIC
 
Osx cocoa study-ch36_nstask
Osx cocoa study-ch36_nstaskOsx cocoa study-ch36_nstask
Osx cocoa study-ch36_nstask
EungShik (Henry) Kim
 

Similar to 3. 악성코드 분석 사례 (18)

Linux 강의자료 ed10
Linux 강의자료 ed10Linux 강의자료 ed10
Linux 강의자료 ed10
 
(130511) #fitalk utilization of ioc, ioaf and sig base
(130511) #fitalk   utilization of ioc, ioaf and sig base(130511) #fitalk   utilization of ioc, ioaf and sig base
(130511) #fitalk utilization of ioc, ioaf and sig base
 
(Ficon2016) #2 침해사고 대응, 이렇다고 전해라
(Ficon2016) #2 침해사고 대응, 이렇다고 전해라(Ficon2016) #2 침해사고 대응, 이렇다고 전해라
(Ficon2016) #2 침해사고 대응, 이렇다고 전해라
 
시큐어디스크 ECM
시큐어디스크 ECM시큐어디스크 ECM
시큐어디스크 ECM
 
리눅스커널-디바이스드라이버_모듈_프로그래밍
리눅스커널-디바이스드라이버_모듈_프로그래밍리눅스커널-디바이스드라이버_모듈_프로그래밍
리눅스커널-디바이스드라이버_모듈_프로그래밍
 
Ddd
DddDdd
Ddd
 
dddd
dddddddd
dddd
 
(160820) #fitalk fileless malware forensics
(160820) #fitalk    fileless malware forensics(160820) #fitalk    fileless malware forensics
(160820) #fitalk fileless malware forensics
 
리눅스 커널 기초 태스크관리
리눅스 커널 기초 태스크관리리눅스 커널 기초 태스크관리
리눅스 커널 기초 태스크관리
 
04 프로세스
04 프로세스04 프로세스
04 프로세스
 
Hyperledger farbric build your first network install and analysis
Hyperledger farbric   build your first network install and analysisHyperledger farbric   build your first network install and analysis
Hyperledger farbric build your first network install and analysis
 
보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법
 
보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법
 
(Fios#03) 4. 파워셸 포렌식 조사 기법
(Fios#03) 4. 파워셸 포렌식 조사 기법(Fios#03) 4. 파워셸 포렌식 조사 기법
(Fios#03) 4. 파워셸 포렌식 조사 기법
 
App check pro_표준제안서_z
App check pro_표준제안서_zApp check pro_표준제안서_z
App check pro_표준제안서_z
 
(Fios#03) 1. 실전 윈도 악성코드 메모리 분석
(Fios#03) 1. 실전 윈도 악성코드 메모리 분석(Fios#03) 1. 실전 윈도 악성코드 메모리 분석
(Fios#03) 1. 실전 윈도 악성코드 메모리 분석
 
(111217) #fitalk rootkit tools and debugger
(111217) #fitalk   rootkit tools and debugger(111217) #fitalk   rootkit tools and debugger
(111217) #fitalk rootkit tools and debugger
 
Osx cocoa study-ch36_nstask
Osx cocoa study-ch36_nstaskOsx cocoa study-ch36_nstask
Osx cocoa study-ch36_nstask
 

More from Youngjun Chang

IT보안과 사회공학(Social Engineering)
IT보안과 사회공학(Social Engineering)IT보안과 사회공학(Social Engineering)
IT보안과 사회공학(Social Engineering)
Youngjun Chang
 
Volatility를 이용한 memory forensics
Volatility를 이용한 memory forensicsVolatility를 이용한 memory forensics
Volatility를 이용한 memory forensics
Youngjun Chang
 
Apt(advanced persistent threat) 공격의 현재와 대응 방안
Apt(advanced persistent threat) 공격의 현재와 대응 방안Apt(advanced persistent threat) 공격의 현재와 대응 방안
Apt(advanced persistent threat) 공격의 현재와 대응 방안
Youngjun Chang
 
2011년 보안 이슈와 2012년 보안 위협 예측
2011년 보안 이슈와 2012년 보안 위협 예측2011년 보안 이슈와 2012년 보안 위협 예측
2011년 보안 이슈와 2012년 보안 위협 예측
Youngjun Chang
 
클라우드 서비스를 이용한 APT 대응
클라우드 서비스를 이용한 APT 대응클라우드 서비스를 이용한 APT 대응
클라우드 서비스를 이용한 APT 대응
Youngjun Chang
 
APT Case Study
APT Case StudyAPT Case Study
APT Case Study
Youngjun Chang
 
보안 위협 동향과 대응 방안
보안 위협 동향과 대응 방안보안 위협 동향과 대응 방안
보안 위협 동향과 대응 방안
Youngjun Chang
 
SNS 보안 위협 사례
SNS 보안 위협 사례SNS 보안 위협 사례
SNS 보안 위협 사례
Youngjun Chang
 
보안 위협 동향과 대응 방안
보안 위협 동향과 대응 방안보안 위협 동향과 대응 방안
보안 위협 동향과 대응 방안
Youngjun Chang
 
2010년 상반기 보안 위협 동향과 주요 보안 위협
2010년 상반기 보안 위협 동향과 주요 보안 위협2010년 상반기 보안 위협 동향과 주요 보안 위협
2010년 상반기 보안 위협 동향과 주요 보안 위협
Youngjun Chang
 
보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법
Youngjun Chang
 
악성코드와 개인 정보 보호
악성코드와 개인 정보 보호악성코드와 개인 정보 보호
악성코드와 개인 정보 보호
Youngjun Chang
 
중국 보안 위협 동향
중국 보안 위협 동향중국 보안 위협 동향
중국 보안 위협 동향
Youngjun Chang
 

More from Youngjun Chang (13)

IT보안과 사회공학(Social Engineering)
IT보안과 사회공학(Social Engineering)IT보안과 사회공학(Social Engineering)
IT보안과 사회공학(Social Engineering)
 
Volatility를 이용한 memory forensics
Volatility를 이용한 memory forensicsVolatility를 이용한 memory forensics
Volatility를 이용한 memory forensics
 
Apt(advanced persistent threat) 공격의 현재와 대응 방안
Apt(advanced persistent threat) 공격의 현재와 대응 방안Apt(advanced persistent threat) 공격의 현재와 대응 방안
Apt(advanced persistent threat) 공격의 현재와 대응 방안
 
2011년 보안 이슈와 2012년 보안 위협 예측
2011년 보안 이슈와 2012년 보안 위협 예측2011년 보안 이슈와 2012년 보안 위협 예측
2011년 보안 이슈와 2012년 보안 위협 예측
 
클라우드 서비스를 이용한 APT 대응
클라우드 서비스를 이용한 APT 대응클라우드 서비스를 이용한 APT 대응
클라우드 서비스를 이용한 APT 대응
 
APT Case Study
APT Case StudyAPT Case Study
APT Case Study
 
보안 위협 동향과 대응 방안
보안 위협 동향과 대응 방안보안 위협 동향과 대응 방안
보안 위협 동향과 대응 방안
 
SNS 보안 위협 사례
SNS 보안 위협 사례SNS 보안 위협 사례
SNS 보안 위협 사례
 
보안 위협 동향과 대응 방안
보안 위협 동향과 대응 방안보안 위협 동향과 대응 방안
보안 위협 동향과 대응 방안
 
2010년 상반기 보안 위협 동향과 주요 보안 위협
2010년 상반기 보안 위협 동향과 주요 보안 위협2010년 상반기 보안 위협 동향과 주요 보안 위협
2010년 상반기 보안 위협 동향과 주요 보안 위협
 
보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법
 
악성코드와 개인 정보 보호
악성코드와 개인 정보 보호악성코드와 개인 정보 보호
악성코드와 개인 정보 보호
 
중국 보안 위협 동향
중국 보안 위협 동향중국 보안 위협 동향
중국 보안 위협 동향
 

3. 악성코드 분석 사례

  • 1. 악성코드 분석 사례 2008.10.07 ㈜ 안철수연구소 AhnLab Security E-response Center Anti-Virus Researcher, CISSP 장 영 준 주임 연구원
  • 2. 2 1. Dropper/PcClient.47873 은폐 기능을 수행하며 별도의 파일들을 생성하는 드로퍼 (Dropper) 형태의 트로이목마 1) Visual C++로 제작 2) 윈도우 시스템 폴더에 2개의 DLL 파일과 1개의 드라이버 파일 생성 3) 생성한 드라이버 파일을 이용한 커널 모드(Kernel Mode) 은폐 기능 수행 4) 생성한 파일들에 대한 파일 및 레지스트리 은폐 기능 수행 5) 실행한 인터넷 익스플로러의 프로세스 및 네트워크 포트 은폐 기능 수행 6) 실행한 인터넷 익스플로러를 이용하여 외부 특정 시스템으로 접속 시도 7) 접속한 시스템을 통하여 제3의 시스템으로 재접속 후 공격자의 명령 수행 8) 실행 중인 모든 프로세스에 스레드 (Thread)로 인젝션 (Injection)하여 사용자가 입력하는 모든 키보드 입력을 후킹 (Hooking) 1. 악성코드 분석 사례
  • 3. 3 2. 파일 형태 분석 헥사 코드(Hex Code)를 분석할 수 있는 유틸리티를 이용하여 파일 형태 분석 윈도우에서 실행이 가능하도록 제작된 PE (Portable Executable) 파일 .text, .rdata, .data의 3개의 PE (Portable Executable) 섹션 (Section)을 가지고 있음. 1. 악성코드 분석 사례
  • 4. 4 3. 파일 구조 분석 파일의 구조를 분석할 수 있는 유틸리티를 이용하여 파일의 구조 분석 단독으로 윈도우에서 실행이 가능 하도록 제작된 실행 파일 비주얼 C++로 제작 메모리에서 시작 주소는 0x403466 1. 악성코드 분석 사례
  • 5. 5 4. 윈도우 API 분석 파일의 IAT (Import Address Table) 분석 툴로 윈도우 API 분석 다음의 API들을 사용함으로 정상 파일 이 아닐 것으로 추정 GetSystemDirectoryA Process32Next CreateRemoteThread GetModuleHandleA WriteProcessMemory OpenProcess AdjustTokenPrivileges OpenProcessToken LookupPrivilegeValueA 1. 악성코드 분석 사례
  • 6. 6 5. 파일 내부 문자열 분석 파일의 내부 문자열 (String)을 분석할 수 있는 유틸리티를 이용하여 분석 파일 내부 문자열 (String)에서는 정상 파일 또는 악성코드로 추정되는 특별한 내부 문자열을 확인 할 수 없음 1. 악성코드 분석 사례
  • 7. 7 6. 파일을 시스템에서 실행 시스템 변화를 분석 할 수 있는 유틸리티를 이용하여 파일을 시스템에서 실행 후 시스템 변화 분석 생성된 파일은 없으나 레지스트리 키 값 생성으로 특정 드라이버 파일을 서비스로 등록 HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesyncqjmkq "ImagePath" Type: REG_EXPAND_SZ Data: C:WINDOWSsystem32driversyncqjmkq.sys 파일이 드라이버 파일을 생성하고 윈도우 서비스로 레지스트리에 등록한 것으로 확인 레지스트리 분석 유틸리티를 이용하여 해당 레지스트리 키 값을 검색해보았으나 정상 윈도우 모드에서 확인되지 않음 해당 드라이버 파일을 윈도우 시스템 폴더의 드라이버 폴더에서 검색 해보았으나 정상 윈도우 모드에서 확인되지 않음 1. 악성코드 분석 사례
  • 8. 8 7. 파일 실행 후 네트워크 분석 네트워크 포트와 패킷을 분석할 수 있는 유틸리티를 이용하여 시스템의 네트워크 분석 사용되는 포트가 없으나 특정 시스템으로 접속하는 네트워크 패킷이 분석됨 1. 악성코드 분석 사례
  • 9. 9 8. 파일 실행 후 시스템 추가 분석 (1) 현재까지 분석 상황으로 미루어 은폐형 악성코드로 의심됨으로 은폐 기능을 탐지 할 수 있는 유틸리티로 시스템 분석 은폐 기능 탐지 유틸리티를 이용하여 인터넷 익스플로러가 은폐되어 있는 것을 탐지 그 외의 파일들이 윈도우 시스템에서 은폐되어 있는 것을 탐지 1. 악성코드 분석 사례
  • 10. 10 실행 파일이 생성한 파일들의 현재 상태를 유틸리티를 이용하여 추가 분석 실행 파일이 생성한 YNCQJMKQ.D1L 은 은폐된 인터넷 익스플로러에 핸들 (Handle)로 실행 실행 파일이 생성한 YNCQJMKQ.DLL 은 실행 중인 프로세스들에 스레드 (Thread)로 인젝션 (Injection) 9. 파일 실행 후 시스템 추가 분석 (2) 1. 악성코드 분석 사례
  • 11. 11 10. 파일 디버깅 및 디스어셈블링 (1) 실행 파일을 OllyDbg 를 이용하여 디버깅 실행 파일이 실행되면 시스템 사용자 계정의 임시 폴더 경로 확보 임시 폴더에 YNCQJMKQ.tmp, YNCQJMKQ.d1l 과 YNCQJMKQ.log 파일 생성 1. 악성코드 분석 사례
  • 12. 12 11. 파일 디버깅 및 디스어셈블링 (2) 윈도우 시스템 폴더 경로 확보 후 생성한 파일들 중 YNCQJMKQ.tmp 는 YNCQJMKQ.dll 로 파일명을 변경하여 윈도우 시스템 폴더로 복사 YNCQJMKQ.d1l 은 명칭 변경 없이 윈도우 시스템 폴더로 복사 복사 이후 YNCQJMKQ.sys를 윈도우 시스템 폴더 아래의 drivers 폴더에 생성 인터넷 익스플로러를 실행한 후 YNCQJMKQ.d1l 를 인터넷 익스플로러의 핸들(Handle)로 등록 후 실행 1. 악성코드 분석 사례
  • 13. 13 12. 파일 디버깅 및 디스어셈블링 (3) YNCQJMKQ.d1l 는 실행된 인터넷 익스플로러를 통해 다음 함수들을 이용하여 파일내 하드코딩 된 주소의 특정 시스템으로 접속 후 파일 다운로드 InternetSetOptionA, InternetOpenA, InternetOpenUrlA, InternetReadFile 1. 악성코드 분석 사례
  • 14. 14 13. 파일 디버깅 및 디스어셈블링 (4) YNCQJMKQ.d1l 는 다음 함수들을 호출 YNCQJMKQ.sys를 윈도우 서비스로 실행 OpenSCManagerA, OpenServiceA CreateServiceA, StartServiceA YNCQJMKQ.sys는 KeServiceDescriptorTable 을 이용 하여 SSDT (System Service Descriptor Table) 후킹 (Hooking)을 하여 은폐 기능을 수행 ZwCreateFile, ZwQueryKey, ZwEnumerateValueKey, ZwEnumerateKey ZwQuerySystemInformation, ZwQueryDirectoryFile 1. 악성코드 분석 사례
  • 15. 15 14. 파일 디버깅 및 디스어셈블링 (5) YNCQJMKQ.dll를 CreateRemoteThread 함수를 이용 실행 중인 프로세스들에 스레드(Thread) 로 인젝션(Injection) 후 실행 인젝션된 YNCQJMKQ.dll는 다음 함수들을 이용하여 사용자가 입력하는 키보드 입력을 후킹 SetWindowsHookExA, CallNextHookEx, GetKeyboardState, 1. 악성코드 분석 사례