SlideShare ist ein Scribd-Unternehmen logo
1 von 60
Downloaden Sie, um offline zu lesen
진짜 급하게
돈이 필요합
니다.
passket@gmail.com
www.CodeEngn.com
2014 CodeEngn Conference 10
Introduction
• 소프트웨어 취약점의 정의
• 소프트웨어 취약점의 위험성
– 설계한 소프트웨어의 보안 매커니즘을 파괴
– 예상하지 못한 소프트웨어의 동작으로 탐지하기 어려움
– 소프트웨어 개발 업체 : 기업의 신뢰성 위협
– 소프트웨어 사용 업체 : 기업의 보안 매커니즘을 위협
소프트웨어의 결함이나 체계ㆍ설계상의 허점으로 인해
사용자(특히 공격자)에게 허용된 권한 이상의 동작이나
허용된 범위 이상의 권한을 부여하는 약점을 의미한다
Introduction
• 소프트웨어 취약점이 악용된 사례 : 보안사고의 핵심
Introduction
• 악용된 소프트웨어 취약점 : Microsoft(社)
Introduction
• 소프트웨어 취약점 관련 용어정리
– 취약점(Vulnerability)
• 이용하여 권한을 획득할 수 있는 소프트웨어 적인 버그
– 공격코드(Exploit)
• 취약점을 공격할 수 있는 코드
– 개념증명 코드(PoC Code)
• 취약점을 증명할 수 있는 코드
– 시스템 소유(System Pwned)
• 취약점을 이용하여 해당 시스템을 점유하였을 때 사용하는 표현
– CVE : Common Vulnerabilities and Exposures
• 취약점에 대한 정보를 모아놓은 List-up
– 취약점 공개(Vulnerability Disclosure)
Software Bug Hunting 이란 ?
• 소프트웨어 취약점을 특정 이득을 위해 찾아내는 행위
소프트웨어의 결함이나 체계ㆍ설계상의 허점을 고의적으로 찾아내어
금전적인 이득, 사이버 테러의 예방, 해커적인 명성획득 등의
특정 이득을 노리는 일련의 행위
Bug Bounties
• Samsung SMART TV
– https://samsungtvbounty.com/
• Tipping Point ZDI
– http://www.zerodayinitiative.com/about/benefits/
Bug Bounties
• Verisign Idefense Lab Vulnerability Management
– https://www.verisigninc.com/en_US/products-and-
services/network-intelligence-availability/idefense/vulnerability-
intelligence/index.xhtml
• KISA 침해대응센터 취약점 신고 포상제
– http://www.krcert.or.kr/kor/consult/consult_04.jsp
Stories of Bug Hunters
• Pwn2Own In CanSecWest
– 가장 잘 알려진 Bug Hunter들의
Exploit 기술을 선보이는 대회
– 매년 캐나다 CanSenWest에서 열림
– Google, Tipping Point, Adobe 등이 스폰
• The Pwnie Award
– 매년 유명 Hacker들이 그 해 발견된 취약점 중 우수한 취약점에
대해 시상식을 통해 포상을 하는 제도
Business Model
• Offensive Reserch, Security, Model
Business Model
• 취약점을 발견하기 어렵다
– 배우기 어렵다
– 정형화된 방법이 드물다
Business Model
• 취약점을 알고 있어도 고치기 어렵다
– 정확한 취약점의 공격원리
– 프로그램의 안정성
– 개발 프로세스의 부재
– 취약점 관리 프로세스의 부재
– 뛰어난 프로그래머의 부족
– 공격 코드 작성과 프로그래밍이 가능한 인재의 부족
Business Model
구 분 국산 소프트웨어 외산 소프트웨어
취약점 발견 능력 미비 유명 해커의 고용
취약점 패치 능력 미비 자체적인 교육
취약점 관리 능력 없음 프로그램 운용
취약점 대응/독립 팀 존재 없음 자체 팀 존재
취약점 대응 능력 국가기관에 의존 TF구성
외부 전문가 활용 미비 많음
취약점 신고 창구 운용 미비 프로그램 운용
국산 소프트웨어는 잠재적으로 많은 보안 취약점을 지니고 있음
전문적으로 소프트웨어 취약점을 관리하는 인력이나 시스템이 없음
소프트웨어 취약점 점검
• White Box Testing
– 소프트웨어에 대한 전권을 행사할 수 있을 때 취약점을 점검
• 소프트웨어 개발사
• 적법한 절차의 소프트웨어 취약점 점검사
• Black Box Testing
– 소프트웨어에 대한 일부, 혹은 전혀 권한을 행할 수 없을 때 점검
• 특수한 경우의 적법한 절차의 소프트웨어 점검사
• Bug Bounty를 노리는 Bug Hunter
• 악의적인 Hacker (공격자)
소프트웨어 취약점 점검 방법
• 소스코드 점검 ( Source Code Auditing )
– 주로 White Box Testing에 사용
– 실제로 생각보다 난이도가 높음
• 소프트웨어 역공학( Reverse Code Engineering )
– 주로 Black Box Testing에 사용
– 취약점을 점검하는 사람에 따라 차이가 큰 편
• 퍼징 ( Fuzzing )
– 주로 Black Box Testing에 사용
– 자동화된 툴을 사용하여 취약점을 점검
– Every Hacker Make Own Fuzzers !
• 기타
취약점의 종류
• Software Bug Diagram
– 소프트웨어 버그는 엄청나게 종류가 많다
– 모든 버그가 모두 공격 가능한 것은 아니다
Program
Bug
Exception
Crash
Vulnerability
취약점 일반론
• Untrusted Input & Object
– 사용자(특히 공격자)가 조작할 수 있는 입력 혹은 객체
Program
Bug
Exception
Crash
Vulnerability
Inputs
Files,
Networks,
System
Objects,
Keyboard
Inputs,
ETC
Outputs
Files,
Networks,
System
Objects
Hacker
Needs
This
Flows
Command Injection
• 프로그램에 명령어 삽입이 가능한 경우
Command Injection
• Case Study : CVE-2010-3847
– GNU C library dynamic linker $ORIGIN expansion
Vulnerability
Command Injection
• Case Study : DLL Hijacking, Unsafe DLL Load
– CVE-2010-3141, MS Office Power Point 2007 DLL Hijacking
Command Injection
• Case Study : Unsafe Object Import
– CVE-2012-0013, MS Office ClickOnce Unsafe Object
Handing
– http://www.cc.gatech.edu/~blee303/exploit/ms12-
005/MS12-005.ppsx
Information Leak
• 프로그램이 악용될 수 있는 정보를 공개하는 경우
– 설치경로, 버전, 사용하는 라이브러리 버전
– 심지어 주소나 객체의 동적 주소 등도 포함됨
Stack Based Corruption
• Stack Based Overflow
Heap Based Corruption
Microsoft Exploit Mitigation
• History of Memory Protection
Microsoft Exploit Mitigation
• History of Stack Corroption
Microsoft Exploit Mitigation
• History of Heap Corroption
Use After Free
• Use After Free 취약점
Error ??
Use After Free
• Use After Free 취약점
Free 한 이후에도
Buf를 사용함
Use After Free
• Use – After – Free 취약점
– C++ 에서 Class 생성자인 new와 delete 연산에서도
같은 문제가 존재
– C++은 객체의 Use-after-free가 일어날 경우 Method의 함수포
인터를 조작할 수 있는 경우가 있음
멤버변수
number
Count()
함수포인터
(접근가능)
Use After Free
• Use – After – Free 취약점
– C++ 에서 생성자와 소멸자 기본 등록되는 경우
Use-After-Free와 만나면 매우 위험함
Constructor
MemberVariable
MemberFunction
Destructor
•생성자
•함수 포인터
•멤버 변수
•number
•멤버 함수
•count()
•소멸자
•함수 포인터
접근
가능
Use After Free
• Use – After – Free in Javascript
객체 생성
객체 소멸
2개의 Event
동시 발생
Type Confusion
• 객체의 Instance가 Type을 혼동하여 나는 오류
• Flash Player Case : Action Script
Action Script
Source Code
SWF file
(Bytecode)
Machine Code
(Assembly)
Trace( “AAAAA” );
Findpropstric <q>[public]::trace
Push string “AAAAAA”
Callpropvoid <q>[public]::trace, 1 params
AVM JIT
Type Confusion
: Flash Player Case
• Action Script Bytecode는 3단계를 거쳐서 실행된다
검증단계
(Verification
Process)
생성단계
(Generation
Process)
실행단계
(Execution
Process)
Bytecode가 안전한지 검사
Bytecode => Machine Code
Machine Code 를 실행
Type Confusion
: Flash Player Case
• Action Script Bytecode는 3단계를 거쳐서 실행된다
검증단계
(Verification
Process)
생성단계
(Generation
Process)
실행단계
(Execution
Process)
Verification Flow
수행흐름에 따라
안정성을 검증
Execution Flow
수행흐름에 따라
안정성을 검증
Type Confusion
: Flash Player Case
• Action Script Bytecode 검증은 Block 을 기반으로 계산된다
• Block의 구분은 jump와 같은 Branch 류의 명령을 기반한다
Type Confusion
: Flash Player Case
• 검증실패 1 : callpropvoid는 Object type을 필요하는데,
Integer type의 인자가 같이 들어감
• 검증실패 2 : “1 params”로 하나의 인자를 명시했는데,
2개의 인자가 들어감
Type Confusion
: Flash Player Case
BLOCK
1
BLOCK
2
BLOCK
3
• BLOCK 1,2,3 모두 검증 성공
Type Confusion
: Flash Player Case
• Action Script 는 모든 Object 를 Atomic Type으로 표현한다
2BC5732 : Atomic type
Trace( “AAAAA”
);
Type Confusion
: Flash Player Case
Type Confusion
: Flash Player Case
Type Confusion
: Flash Player Case
Type Confusion
: Flash Player Case
137CC3FC
137CC3FF
100 - undefined
111 - Double
Type Confusion
: Flash Player Case
• Verification Process 를 우회
• Atomic Confusion 을 통해 Crash 유발
Type Confusion
Class A
Call A.a()
Class B
Function B.a()
: return int
Class C
Function C.a()
: return string
Confusion
[Class B의 주소] -> [a() 함수의 주소] -> [함수 호출]
[Class B ? C ?의 주소] -> [???????] -> [Crash]
Bug Hunting 방법론
• Method 1 : Using Information or Open Vulnerbility
– 공개된 취약점을 재 조합하여 취약점을 찾아냄
– 일반적으로 프로그래머의 실수는 다시 재발하는 경우가 많음
• Method 2 : Source Code Auditing
– 활용할 수 있는 소스코드들을 Program이 Import했는지 확인
– 그 뒤 Source Code를 활용하여 취약점을 검색
• Method 3 : Top-Down Analysis
– 상위 High-level의 관점에서 부터 가장 낮은 Low-Level까지
– 데이터의 흐름이나 시스템의 약점을 조사하는 방법
Bug Hunting 방법론
• Method 4 : Reverse Engineering
– 소프트웨어 역공학을 통해 프로그램의 취약점을 조사
– 디버거나 디스어셈블러의 도움을 활용함
• Method 5 : Fuzzing ( Brute Force Testing )
– 프로그램의 입/출력부의 랜덤한 값을 입력하여 취약점을 조사
– 자동화하기 매우 편리함
• Method 6 : Dynamic Analysis
– 프로그램의 동작방식을 이용하여 취약점을 조사
– Dynamic Binary Instrumentation 이나 Debugger를 이용
Method 1(Practice 1)
: Using Information or Open Vulns
• 공개된 취약점의 정보를 조합하여 취약점 발견
Gomplayer
Exploit Code
KMPlayer
Pot Player
Choco Player
Method 1(Practice 2)
: Using Information or Open Vulns
• 공개된 Open Library의 Version 확인
Method 2
: Source Code Auditing
• 공개된 Open Source를 Code Level에서 취약점 발견
– 취약점의 종류를 노려서 하는 것이 일반적
• Step 1 : 변수 정보 수집
Method 2(Practice 3)
: Source Code Auditing
• Step 2 : 사용자로 부터 조작가능한 변수파악
Method 2
: Source Code Auditing
• Step 3 : 실행 흐름을 따라 취약점 조사
Method 3(Practice 4)
: Top-Down Analysis
• 프로그램의 취약점을 설계자 관점으로 분석하는 방법
Method 4(Practice 5)
: Reverse Engineering
• 소프트웨어 역공학을 통해 취약점을 조사하는 방법
– 가장 중요한 것은 조작할 수 있는 값을 찾아내는 것
Method 5
: Fuzzing
• 프로그램이 받아들이는 Input을 랜덤하게 발생기켜
프로그램의 취약점을 찾아내는 방법
• 현재 매우 인기있는 취약점 발견 방법론
• 대부분 Memory와 관련한 취약점을 찾는데 집중
• 매우 다양한 Fuzzing Framework들이 구성되어 있음
Method 6
: Dynamic Analysis
• Dynamic Taint Analysis
Taint Analysis
• Dynamic Taint Analysis
Taint Analysis
• Taint Analysis 의 효과 : Bug Hunting에 대한 응용
– Find Tainted EIP Register
– Find Tainted Function Pointers
– Find Tainted Stack Arguments
– Find Tainted Data Structure Using System
• Taint Analysis 의 효과 : Exploit detection
– Preprocessing : 0-day Exploit detection
• Rechability Problem의 해결
– How can I make PDF File to execute code block #937
• Mov [edi * 2], esi
– Packet으로부터
Memory Access가 edi, esi로
이어지는지를 판단
Dynamic Binary Instrumental
• Binary 실행시 원하는 Code를 삽입하는 기술
• 프로그램을 다시 컴파일하거나 링킹하지 않음
• 실행하는 동안 원하는 루틴을 찾을 수 있음
• 실행중인 프로그램을 분석하는데 탁월함
Mov eax, ebxCode 1 Code 2
Method 3
Putting All
• 취약점을 찾는데 정형화된 Flow는 없음
• 주의할 점
– 프로그램마다 특성이 있고 그 특성을 파악하는 것
– 공격자의 입장에서 생각하는 것
– 개발자는 사람이다 : 실수를 반드시 한다
– 모든 버그는 공격할 수 있다고 가정한다
Method1 Method2
Method 4
Method 5
Method 6
www.CodeEngn.com
2014 CodeEngn Conference 10

Weitere ähnliche Inhalte

Was ist angesagt?

Art of hacking 발표자료
Art of hacking 발표자료Art of hacking 발표자료
Art of hacking 발표자료Dennis Kim
 
모의해킹 전문가 되기
모의해킹 전문가 되기모의해킹 전문가 되기
모의해킹 전문가 되기Jeremy Bae
 
[무료] 시스템해킹(해커스쿨문제풀이) 공개버전
[무료] 시스템해킹(해커스쿨문제풀이) 공개버전[무료] 시스템해킹(해커스쿨문제풀이) 공개버전
[무료] 시스템해킹(해커스쿨문제풀이) 공개버전James (SeokHun) Hwang
 
[NDC07] 게임 개발에서의 클라이언트 보안 - 송창규
[NDC07] 게임 개발에서의 클라이언트 보안 - 송창규[NDC07] 게임 개발에서의 클라이언트 보안 - 송창규
[NDC07] 게임 개발에서의 클라이언트 보안 - 송창규ChangKyu Song
 
백신 프로그램의 원리와 동작 차민석 20151117_security plus 발표판
백신 프로그램의 원리와 동작 차민석 20151117_security plus 발표판백신 프로그램의 원리와 동작 차민석 20151117_security plus 발표판
백신 프로그램의 원리와 동작 차민석 20151117_security plus 발표판Minseok(Jacky) Cha
 
해킹과 보안
해킹과 보안해킹과 보안
해킹과 보안창열 최
 
프로세스 방어
프로세스 방어프로세스 방어
프로세스 방어주항 박
 
[2013 CodeEngn Conference 09] Park.Sam - 게임 해킹툴의 변칙적 공격 기법 분석
[2013 CodeEngn Conference 09] Park.Sam - 게임 해킹툴의 변칙적 공격 기법 분석[2013 CodeEngn Conference 09] Park.Sam - 게임 해킹툴의 변칙적 공격 기법 분석
[2013 CodeEngn Conference 09] Park.Sam - 게임 해킹툴의 변칙적 공격 기법 분석GangSeok Lee
 
[HYSS 2016] 쉽고 빠르게 시작하는 Volatility Plugin 개발
[HYSS 2016] 쉽고 빠르게 시작하는 Volatility Plugin 개발[HYSS 2016] 쉽고 빠르게 시작하는 Volatility Plugin 개발
[HYSS 2016] 쉽고 빠르게 시작하는 Volatility Plugin 개발동현 김
 
Web hacking introduction
Web hacking introductionWeb hacking introduction
Web hacking introductionJinkyoung Kim
 
(FICON2015) #3 어떻게 들어왔는가?
(FICON2015) #3 어떻게 들어왔는가?(FICON2015) #3 어떻게 들어왔는가?
(FICON2015) #3 어떻게 들어왔는가?plainbit
 
16.02.27 해킹캠프 오픈 소스 최우석
16.02.27 해킹캠프 오픈 소스 최우석16.02.27 해킹캠프 오픈 소스 최우석
16.02.27 해킹캠프 오픈 소스 최우석KISEC
 
제12회 IT4U 강연회 - 악성코드 분석 잘하고 싶어요
제12회 IT4U 강연회 - 악성코드 분석 잘하고 싶어요제12회 IT4U 강연회 - 악성코드 분석 잘하고 싶어요
제12회 IT4U 강연회 - 악성코드 분석 잘하고 싶어요NAVER D2
 
bof기초+rtl+fake_ebp
bof기초+rtl+fake_ebpbof기초+rtl+fake_ebp
bof기초+rtl+fake_ebpone_two_12
 
CTF WEB Back_END 개발기
CTF WEB Back_END 개발기CTF WEB Back_END 개발기
CTF WEB Back_END 개발기one_two_12
 
메이플스토리 사례를 통해 살펴보는 서버사이드 봇/핵 탐지 시스템
메이플스토리 사례를 통해 살펴보는 서버사이드 봇/핵 탐지 시스템 메이플스토리 사례를 통해 살펴보는 서버사이드 봇/핵 탐지 시스템
메이플스토리 사례를 통해 살펴보는 서버사이드 봇/핵 탐지 시스템 ByungTak Kang
 
2. 악성코드 분석 방법론과 기법
2. 악성코드 분석 방법론과 기법2. 악성코드 분석 방법론과 기법
2. 악성코드 분석 방법론과 기법Youngjun Chang
 

Was ist angesagt? (20)

Art of hacking 발표자료
Art of hacking 발표자료Art of hacking 발표자료
Art of hacking 발표자료
 
Quick bcc
Quick bccQuick bcc
Quick bcc
 
모의해킹 전문가 되기
모의해킹 전문가 되기모의해킹 전문가 되기
모의해킹 전문가 되기
 
[무료] 시스템해킹(해커스쿨문제풀이) 공개버전
[무료] 시스템해킹(해커스쿨문제풀이) 공개버전[무료] 시스템해킹(해커스쿨문제풀이) 공개버전
[무료] 시스템해킹(해커스쿨문제풀이) 공개버전
 
Ropasaurusrex
RopasaurusrexRopasaurusrex
Ropasaurusrex
 
[NDC07] 게임 개발에서의 클라이언트 보안 - 송창규
[NDC07] 게임 개발에서의 클라이언트 보안 - 송창규[NDC07] 게임 개발에서의 클라이언트 보안 - 송창규
[NDC07] 게임 개발에서의 클라이언트 보안 - 송창규
 
02.모의해킹전문가되기
02.모의해킹전문가되기02.모의해킹전문가되기
02.모의해킹전문가되기
 
백신 프로그램의 원리와 동작 차민석 20151117_security plus 발표판
백신 프로그램의 원리와 동작 차민석 20151117_security plus 발표판백신 프로그램의 원리와 동작 차민석 20151117_security plus 발표판
백신 프로그램의 원리와 동작 차민석 20151117_security plus 발표판
 
해킹과 보안
해킹과 보안해킹과 보안
해킹과 보안
 
프로세스 방어
프로세스 방어프로세스 방어
프로세스 방어
 
[2013 CodeEngn Conference 09] Park.Sam - 게임 해킹툴의 변칙적 공격 기법 분석
[2013 CodeEngn Conference 09] Park.Sam - 게임 해킹툴의 변칙적 공격 기법 분석[2013 CodeEngn Conference 09] Park.Sam - 게임 해킹툴의 변칙적 공격 기법 분석
[2013 CodeEngn Conference 09] Park.Sam - 게임 해킹툴의 변칙적 공격 기법 분석
 
[HYSS 2016] 쉽고 빠르게 시작하는 Volatility Plugin 개발
[HYSS 2016] 쉽고 빠르게 시작하는 Volatility Plugin 개발[HYSS 2016] 쉽고 빠르게 시작하는 Volatility Plugin 개발
[HYSS 2016] 쉽고 빠르게 시작하는 Volatility Plugin 개발
 
Web hacking introduction
Web hacking introductionWeb hacking introduction
Web hacking introduction
 
(FICON2015) #3 어떻게 들어왔는가?
(FICON2015) #3 어떻게 들어왔는가?(FICON2015) #3 어떻게 들어왔는가?
(FICON2015) #3 어떻게 들어왔는가?
 
16.02.27 해킹캠프 오픈 소스 최우석
16.02.27 해킹캠프 오픈 소스 최우석16.02.27 해킹캠프 오픈 소스 최우석
16.02.27 해킹캠프 오픈 소스 최우석
 
제12회 IT4U 강연회 - 악성코드 분석 잘하고 싶어요
제12회 IT4U 강연회 - 악성코드 분석 잘하고 싶어요제12회 IT4U 강연회 - 악성코드 분석 잘하고 싶어요
제12회 IT4U 강연회 - 악성코드 분석 잘하고 싶어요
 
bof기초+rtl+fake_ebp
bof기초+rtl+fake_ebpbof기초+rtl+fake_ebp
bof기초+rtl+fake_ebp
 
CTF WEB Back_END 개발기
CTF WEB Back_END 개발기CTF WEB Back_END 개발기
CTF WEB Back_END 개발기
 
메이플스토리 사례를 통해 살펴보는 서버사이드 봇/핵 탐지 시스템
메이플스토리 사례를 통해 살펴보는 서버사이드 봇/핵 탐지 시스템 메이플스토리 사례를 통해 살펴보는 서버사이드 봇/핵 탐지 시스템
메이플스토리 사례를 통해 살펴보는 서버사이드 봇/핵 탐지 시스템
 
2. 악성코드 분석 방법론과 기법
2. 악성코드 분석 방법론과 기법2. 악성코드 분석 방법론과 기법
2. 악성코드 분석 방법론과 기법
 

Andere mochten auch

200931058 심준보 기말과제_20140611
200931058 심준보 기말과제_20140611200931058 심준보 기말과제_20140611
200931058 심준보 기말과제_20140611junbosim
 
4.13총선인권올리고가이드
4.13총선인권올리고가이드4.13총선인권올리고가이드
4.13총선인권올리고가이드humandasan
 
[2014 CodeEngn Conference 11] 박세한 - IE 1DAY Case Study KO
[2014 CodeEngn Conference 11] 박세한 - IE 1DAY Case Study KO[2014 CodeEngn Conference 11] 박세한 - IE 1DAY Case Study KO
[2014 CodeEngn Conference 11] 박세한 - IE 1DAY Case Study KOGangSeok Lee
 
2. 간사랑동우회
2. 간사랑동우회2. 간사랑동우회
2. 간사랑동우회Kwangmo Yang
 
Conference 2012 ppt mobile technology bowers-miller
Conference 2012 ppt mobile technology bowers-millerConference 2012 ppt mobile technology bowers-miller
Conference 2012 ppt mobile technology bowers-millerGina Bowers-Miller
 
[2012 CodeEngn Conference 07] M-Stoned - iThreat
[2012 CodeEngn Conference 07] M-Stoned - iThreat[2012 CodeEngn Conference 07] M-Stoned - iThreat
[2012 CodeEngn Conference 07] M-Stoned - iThreatGangSeok Lee
 
아침 2분 숨쉬기 다이어트
아침 2분 숨쉬기 다이어트아침 2분 숨쉬기 다이어트
아침 2분 숨쉬기 다이어트hwangjoy
 
아침 2분 숨쉬기 다이어트
아침 2분 숨쉬기 다이어트아침 2분 숨쉬기 다이어트
아침 2분 숨쉬기 다이어트hjy2901
 
20160519 전자금융보안론 금융사고사례 조사 방글라데시 은행 SWIFT 해킹사례
20160519 전자금융보안론 금융사고사례 조사 방글라데시 은행 SWIFT 해킹사례20160519 전자금융보안론 금융사고사례 조사 방글라데시 은행 SWIFT 해킹사례
20160519 전자금융보안론 금융사고사례 조사 방글라데시 은행 SWIFT 해킹사례Jisoo Park
 
정부 3.0 공공(빅)데이터 플랫폼거버넌스(5 sep2015)1시간
정부 3.0 공공(빅)데이터 플랫폼거버넌스(5 sep2015)1시간정부 3.0 공공(빅)데이터 플랫폼거버넌스(5 sep2015)1시간
정부 3.0 공공(빅)데이터 플랫폼거버넌스(5 sep2015)1시간Han Woo PARK
 
(FICON2015) #4 어떻게 가져갔는가?
(FICON2015) #4 어떻게 가져갔는가?(FICON2015) #4 어떻게 가져갔는가?
(FICON2015) #4 어떻게 가져갔는가?plainbit
 
자막을 뿌리려면 해야 할 여러가지 삽질모음
자막을 뿌리려면 해야 할 여러가지 삽질모음자막을 뿌리려면 해야 할 여러가지 삽질모음
자막을 뿌리려면 해야 할 여러가지 삽질모음Young-Ho Cha
 
2008안지숙 집단음악치료활동 결손가정 아동 자아존중감 및 사회성 향상 영향
2008안지숙 집단음악치료활동 결손가정 아동 자아존중감 및 사회성 향상 영향2008안지숙 집단음악치료활동 결손가정 아동 자아존중감 및 사회성 향상 영향
2008안지숙 집단음악치료활동 결손가정 아동 자아존중감 및 사회성 향상 영향혜원 정
 
redesign YOU - Design Thinking Yourself
redesign YOU - Design Thinking Yourselfredesign YOU - Design Thinking Yourself
redesign YOU - Design Thinking YourselfJochen Guertler
 
Web vulnerability seminar3
Web vulnerability seminar3Web vulnerability seminar3
Web vulnerability seminar3Sakuya Izayoi
 
Software Security - Vulnerability&Attack
Software Security - Vulnerability&AttackSoftware Security - Vulnerability&Attack
Software Security - Vulnerability&AttackEmanuela Boroș
 
How to find_vulnerability_in_software
How to find_vulnerability_in_softwareHow to find_vulnerability_in_software
How to find_vulnerability_in_softwaresanghwan ahn
 
Web vulnerability seminar4
Web vulnerability seminar4Web vulnerability seminar4
Web vulnerability seminar4Sakuya Izayoi
 
[2009 CodeEngn Conference 03] hkpco - DEFCON CTF 2009 Binary Leetness 100-500...
[2009 CodeEngn Conference 03] hkpco - DEFCON CTF 2009 Binary Leetness 100-500...[2009 CodeEngn Conference 03] hkpco - DEFCON CTF 2009 Binary Leetness 100-500...
[2009 CodeEngn Conference 03] hkpco - DEFCON CTF 2009 Binary Leetness 100-500...GangSeok Lee
 

Andere mochten auch (20)

200931058 심준보 기말과제_20140611
200931058 심준보 기말과제_20140611200931058 심준보 기말과제_20140611
200931058 심준보 기말과제_20140611
 
4.13총선인권올리고가이드
4.13총선인권올리고가이드4.13총선인권올리고가이드
4.13총선인권올리고가이드
 
[2014 CodeEngn Conference 11] 박세한 - IE 1DAY Case Study KO
[2014 CodeEngn Conference 11] 박세한 - IE 1DAY Case Study KO[2014 CodeEngn Conference 11] 박세한 - IE 1DAY Case Study KO
[2014 CodeEngn Conference 11] 박세한 - IE 1DAY Case Study KO
 
2. 간사랑동우회
2. 간사랑동우회2. 간사랑동우회
2. 간사랑동우회
 
Conference 2012 ppt mobile technology bowers-miller
Conference 2012 ppt mobile technology bowers-millerConference 2012 ppt mobile technology bowers-miller
Conference 2012 ppt mobile technology bowers-miller
 
[2012 CodeEngn Conference 07] M-Stoned - iThreat
[2012 CodeEngn Conference 07] M-Stoned - iThreat[2012 CodeEngn Conference 07] M-Stoned - iThreat
[2012 CodeEngn Conference 07] M-Stoned - iThreat
 
아침 2분 숨쉬기 다이어트
아침 2분 숨쉬기 다이어트아침 2분 숨쉬기 다이어트
아침 2분 숨쉬기 다이어트
 
아침 2분 숨쉬기 다이어트
아침 2분 숨쉬기 다이어트아침 2분 숨쉬기 다이어트
아침 2분 숨쉬기 다이어트
 
20160519 전자금융보안론 금융사고사례 조사 방글라데시 은행 SWIFT 해킹사례
20160519 전자금융보안론 금융사고사례 조사 방글라데시 은행 SWIFT 해킹사례20160519 전자금융보안론 금융사고사례 조사 방글라데시 은행 SWIFT 해킹사례
20160519 전자금융보안론 금융사고사례 조사 방글라데시 은행 SWIFT 해킹사례
 
정부 3.0 공공(빅)데이터 플랫폼거버넌스(5 sep2015)1시간
정부 3.0 공공(빅)데이터 플랫폼거버넌스(5 sep2015)1시간정부 3.0 공공(빅)데이터 플랫폼거버넌스(5 sep2015)1시간
정부 3.0 공공(빅)데이터 플랫폼거버넌스(5 sep2015)1시간
 
(FICON2015) #4 어떻게 가져갔는가?
(FICON2015) #4 어떻게 가져갔는가?(FICON2015) #4 어떻게 가져갔는가?
(FICON2015) #4 어떻게 가져갔는가?
 
자막을 뿌리려면 해야 할 여러가지 삽질모음
자막을 뿌리려면 해야 할 여러가지 삽질모음자막을 뿌리려면 해야 할 여러가지 삽질모음
자막을 뿌리려면 해야 할 여러가지 삽질모음
 
2008안지숙 집단음악치료활동 결손가정 아동 자아존중감 및 사회성 향상 영향
2008안지숙 집단음악치료활동 결손가정 아동 자아존중감 및 사회성 향상 영향2008안지숙 집단음악치료활동 결손가정 아동 자아존중감 및 사회성 향상 영향
2008안지숙 집단음악치료활동 결손가정 아동 자아존중감 및 사회성 향상 영향
 
redesign YOU - Design Thinking Yourself
redesign YOU - Design Thinking Yourselfredesign YOU - Design Thinking Yourself
redesign YOU - Design Thinking Yourself
 
Web vulnerability seminar3
Web vulnerability seminar3Web vulnerability seminar3
Web vulnerability seminar3
 
Software Security - Vulnerability&Attack
Software Security - Vulnerability&AttackSoftware Security - Vulnerability&Attack
Software Security - Vulnerability&Attack
 
Variables and constants
Variables and constantsVariables and constants
Variables and constants
 
How to find_vulnerability_in_software
How to find_vulnerability_in_softwareHow to find_vulnerability_in_software
How to find_vulnerability_in_software
 
Web vulnerability seminar4
Web vulnerability seminar4Web vulnerability seminar4
Web vulnerability seminar4
 
[2009 CodeEngn Conference 03] hkpco - DEFCON CTF 2009 Binary Leetness 100-500...
[2009 CodeEngn Conference 03] hkpco - DEFCON CTF 2009 Binary Leetness 100-500...[2009 CodeEngn Conference 03] hkpco - DEFCON CTF 2009 Binary Leetness 100-500...
[2009 CodeEngn Conference 03] hkpco - DEFCON CTF 2009 Binary Leetness 100-500...
 

Ähnlich wie [2014 CodeEngn Conference 10] 심준보 - 급전이 필요합니다

보안 위협 형태와 악성코드 분석 기법
보안 위협 형태와 악성코드 분석 기법보안 위협 형태와 악성코드 분석 기법
보안 위협 형태와 악성코드 분석 기법Youngjun Chang
 
보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법Youngjun Chang
 
Luniverse Partners Day - Smart Contract Assessment(Sooho)
Luniverse Partners Day - Smart Contract Assessment(Sooho)Luniverse Partners Day - Smart Contract Assessment(Sooho)
Luniverse Partners Day - Smart Contract Assessment(Sooho)Luniverse Dunamu
 
악성코드와 기업의 악성코드 대응
악성코드와 기업의 악성코드 대응악성코드와 기업의 악성코드 대응
악성코드와 기업의 악성코드 대응Youngjun Chang
 
포티파이 안전한 애플리케이션 구축 및 운영방안
포티파이 안전한 애플리케이션 구축 및 운영방안포티파이 안전한 애플리케이션 구축 및 운영방안
포티파이 안전한 애플리케이션 구축 및 운영방안TJ Seo
 
(Ficon2016) #2 침해사고 대응, 이렇다고 전해라
(Ficon2016) #2 침해사고 대응, 이렇다고 전해라(Ficon2016) #2 침해사고 대응, 이렇다고 전해라
(Ficon2016) #2 침해사고 대응, 이렇다고 전해라INSIGHT FORENSIC
 
[4th revolution] new technology security education material] android security...
[4th revolution] new technology security education material] android security...[4th revolution] new technology security education material] android security...
[4th revolution] new technology security education material] android security...james yoo
 
안드로이드 악성코드의 철학적_연구_padocon_조효제
안드로이드 악성코드의 철학적_연구_padocon_조효제안드로이드 악성코드의 철학적_연구_padocon_조효제
안드로이드 악성코드의 철학적_연구_padocon_조효제Hyoje Jo
 
보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법Youngjun Chang
 
악성코드 최신 동향과 분석 방안
악성코드 최신 동향과 분석 방안악성코드 최신 동향과 분석 방안
악성코드 최신 동향과 분석 방안Youngjun Chang
 
지능형지속위협공격 최신동향 분석
지능형지속위협공격 최신동향 분석지능형지속위협공격 최신동향 분석
지능형지속위협공격 최신동향 분석한익 주
 
[2012 CodeEngn Conference 06] x82 - 모바일 스마트 플랫폼 원격, 로컬 취약점 공격 분석
[2012 CodeEngn Conference 06] x82 - 모바일 스마트 플랫폼 원격, 로컬 취약점 공격 분석[2012 CodeEngn Conference 06] x82 - 모바일 스마트 플랫폼 원격, 로컬 취약점 공격 분석
[2012 CodeEngn Conference 06] x82 - 모바일 스마트 플랫폼 원격, 로컬 취약점 공격 분석GangSeok Lee
 
오픈소스 개발 방법론 - Mozilla 사례 중심 (2010)
오픈소스 개발 방법론 - Mozilla 사례 중심 (2010)오픈소스 개발 방법론 - Mozilla 사례 중심 (2010)
오픈소스 개발 방법론 - Mozilla 사례 중심 (2010)Channy Yun
 
악성코드와 분석 방안
악성코드와 분석 방안악성코드와 분석 방안
악성코드와 분석 방안Youngjun Chang
 
처음 시작하는 라라벨
처음 시작하는 라라벨처음 시작하는 라라벨
처음 시작하는 라라벨KwangSeob Jeong
 
XECon2015 :: [2-1] 정광섭 - 처음 시작하는 laravel
XECon2015 :: [2-1] 정광섭 - 처음 시작하는 laravelXECon2015 :: [2-1] 정광섭 - 처음 시작하는 laravel
XECon2015 :: [2-1] 정광섭 - 처음 시작하는 laravelXpressEngine
 
Under attack - application
Under attack - applicationUnder attack - application
Under attack - applicationWonjun Hwang
 
[네이버D2SF] 안전한 서비스 운영을 위한 Ncloud 보안교육
[네이버D2SF] 안전한 서비스 운영을 위한 Ncloud 보안교육[네이버D2SF] 안전한 서비스 운영을 위한 Ncloud 보안교육
[네이버D2SF] 안전한 서비스 운영을 위한 Ncloud 보안교육NAVER D2 STARTUP FACTORY
 
(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 baseINSIGHT FORENSIC
 

Ähnlich wie [2014 CodeEngn Conference 10] 심준보 - 급전이 필요합니다 (20)

보안 위협 형태와 악성코드 분석 기법
보안 위협 형태와 악성코드 분석 기법보안 위협 형태와 악성코드 분석 기법
보안 위협 형태와 악성코드 분석 기법
 
보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법
 
Luniverse Partners Day - Smart Contract Assessment(Sooho)
Luniverse Partners Day - Smart Contract Assessment(Sooho)Luniverse Partners Day - Smart Contract Assessment(Sooho)
Luniverse Partners Day - Smart Contract Assessment(Sooho)
 
codeache
codeachecodeache
codeache
 
악성코드와 기업의 악성코드 대응
악성코드와 기업의 악성코드 대응악성코드와 기업의 악성코드 대응
악성코드와 기업의 악성코드 대응
 
포티파이 안전한 애플리케이션 구축 및 운영방안
포티파이 안전한 애플리케이션 구축 및 운영방안포티파이 안전한 애플리케이션 구축 및 운영방안
포티파이 안전한 애플리케이션 구축 및 운영방안
 
(Ficon2016) #2 침해사고 대응, 이렇다고 전해라
(Ficon2016) #2 침해사고 대응, 이렇다고 전해라(Ficon2016) #2 침해사고 대응, 이렇다고 전해라
(Ficon2016) #2 침해사고 대응, 이렇다고 전해라
 
[4th revolution] new technology security education material] android security...
[4th revolution] new technology security education material] android security...[4th revolution] new technology security education material] android security...
[4th revolution] new technology security education material] android security...
 
안드로이드 악성코드의 철학적_연구_padocon_조효제
안드로이드 악성코드의 철학적_연구_padocon_조효제안드로이드 악성코드의 철학적_연구_padocon_조효제
안드로이드 악성코드의 철학적_연구_padocon_조효제
 
보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법
 
악성코드 최신 동향과 분석 방안
악성코드 최신 동향과 분석 방안악성코드 최신 동향과 분석 방안
악성코드 최신 동향과 분석 방안
 
지능형지속위협공격 최신동향 분석
지능형지속위협공격 최신동향 분석지능형지속위협공격 최신동향 분석
지능형지속위협공격 최신동향 분석
 
[2012 CodeEngn Conference 06] x82 - 모바일 스마트 플랫폼 원격, 로컬 취약점 공격 분석
[2012 CodeEngn Conference 06] x82 - 모바일 스마트 플랫폼 원격, 로컬 취약점 공격 분석[2012 CodeEngn Conference 06] x82 - 모바일 스마트 플랫폼 원격, 로컬 취약점 공격 분석
[2012 CodeEngn Conference 06] x82 - 모바일 스마트 플랫폼 원격, 로컬 취약점 공격 분석
 
오픈소스 개발 방법론 - Mozilla 사례 중심 (2010)
오픈소스 개발 방법론 - Mozilla 사례 중심 (2010)오픈소스 개발 방법론 - Mozilla 사례 중심 (2010)
오픈소스 개발 방법론 - Mozilla 사례 중심 (2010)
 
악성코드와 분석 방안
악성코드와 분석 방안악성코드와 분석 방안
악성코드와 분석 방안
 
처음 시작하는 라라벨
처음 시작하는 라라벨처음 시작하는 라라벨
처음 시작하는 라라벨
 
XECon2015 :: [2-1] 정광섭 - 처음 시작하는 laravel
XECon2015 :: [2-1] 정광섭 - 처음 시작하는 laravelXECon2015 :: [2-1] 정광섭 - 처음 시작하는 laravel
XECon2015 :: [2-1] 정광섭 - 처음 시작하는 laravel
 
Under attack - application
Under attack - applicationUnder attack - application
Under attack - application
 
[네이버D2SF] 안전한 서비스 운영을 위한 Ncloud 보안교육
[네이버D2SF] 안전한 서비스 운영을 위한 Ncloud 보안교육[네이버D2SF] 안전한 서비스 운영을 위한 Ncloud 보안교육
[네이버D2SF] 안전한 서비스 운영을 위한 Ncloud 보안교육
 
(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
 

Mehr von GangSeok Lee

[2014 CodeEngn Conference 11] 박한범 - 가상화 기술과 보안
[2014 CodeEngn Conference 11] 박한범 - 가상화 기술과 보안[2014 CodeEngn Conference 11] 박한범 - 가상화 기술과 보안
[2014 CodeEngn Conference 11] 박한범 - 가상화 기술과 보안GangSeok Lee
 
[2014 CodeEngn Conference 11] 남대현 - iOS MobileSafari Fuzzer 제작 및 Fuzzing
[2014 CodeEngn Conference 11] 남대현 - iOS MobileSafari Fuzzer 제작 및 Fuzzing[2014 CodeEngn Conference 11] 남대현 - iOS MobileSafari Fuzzer 제작 및 Fuzzing
[2014 CodeEngn Conference 11] 남대현 - iOS MobileSafari Fuzzer 제작 및 FuzzingGangSeok Lee
 
[2014 CodeEngn Conference 11] 김기홍 - 빅데이터 기반 악성코드 자동 분석 플랫폼
[2014 CodeEngn Conference 11] 김기홍 - 빅데이터 기반 악성코드 자동 분석 플랫폼[2014 CodeEngn Conference 11] 김기홍 - 빅데이터 기반 악성코드 자동 분석 플랫폼
[2014 CodeEngn Conference 11] 김기홍 - 빅데이터 기반 악성코드 자동 분석 플랫폼GangSeok Lee
 
[2014 CodeEngn Conference 11] 최우석 - 자바스크립트 난독화 너네 뭐니?
[2014 CodeEngn Conference 11] 최우석 - 자바스크립트 난독화 너네 뭐니?[2014 CodeEngn Conference 11] 최우석 - 자바스크립트 난독화 너네 뭐니?
[2014 CodeEngn Conference 11] 최우석 - 자바스크립트 난독화 너네 뭐니?GangSeok Lee
 
[2014 CodeEngn Conference 11] 박세한 - IE 1DAY Case Study EN
[2014 CodeEngn Conference 11] 박세한 - IE 1DAY Case Study EN[2014 CodeEngn Conference 11] 박세한 - IE 1DAY Case Study EN
[2014 CodeEngn Conference 11] 박세한 - IE 1DAY Case Study ENGangSeok Lee
 
[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 KOGangSeok Lee
 
[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis EN
[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis EN[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis EN
[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis ENGangSeok Lee
 
[2014 CodeEngn Conference 11] 정든품바 - 웹성코드
[2014 CodeEngn Conference 11] 정든품바 - 웹성코드[2014 CodeEngn Conference 11] 정든품바 - 웹성코드
[2014 CodeEngn Conference 11] 정든품바 - 웹성코드GangSeok Lee
 
[2014 CodeEngn Conference 10] 정광운 - 안드로이드에서도 한번 후킹을 해볼까 (Hooking on Android)
[2014 CodeEngn Conference 10] 정광운 -  안드로이드에서도 한번 후킹을 해볼까 (Hooking on Android)[2014 CodeEngn Conference 10] 정광운 -  안드로이드에서도 한번 후킹을 해볼까 (Hooking on Android)
[2014 CodeEngn Conference 10] 정광운 - 안드로이드에서도 한번 후킹을 해볼까 (Hooking on Android)GangSeok Lee
 
[2014 CodeEngn Conference 10] 노용환 - 디버거 개발, 삽질기
[2014 CodeEngn Conference 10] 노용환 -  디버거 개발, 삽질기[2014 CodeEngn Conference 10] 노용환 -  디버거 개발, 삽질기
[2014 CodeEngn Conference 10] 노용환 - 디버거 개발, 삽질기GangSeok Lee
 
[2013 CodeEngn Conference 09] x15kangx - MS Office 2010 문서 암호화 방식 분석 결과
[2013 CodeEngn Conference 09] x15kangx - MS Office 2010 문서 암호화 방식 분석 결과[2013 CodeEngn Conference 09] x15kangx - MS Office 2010 문서 암호화 방식 분석 결과
[2013 CodeEngn Conference 09] x15kangx - MS Office 2010 문서 암호화 방식 분석 결과GangSeok Lee
 
[2013 CodeEngn Conference 09] proneer - Malware Tracker
[2013 CodeEngn Conference 09] proneer - Malware Tracker[2013 CodeEngn Conference 09] proneer - Malware Tracker
[2013 CodeEngn Conference 09] proneer - Malware TrackerGangSeok Lee
 
[2013 CodeEngn Conference 09] BlueH4G - hooking and visualization
[2013 CodeEngn Conference 09] BlueH4G - hooking and visualization[2013 CodeEngn Conference 09] BlueH4G - hooking and visualization
[2013 CodeEngn Conference 09] BlueH4G - hooking and visualizationGangSeok Lee
 
[2013 CodeEngn Conference 09] wh1ant - various tricks for linux remote exploits
[2013 CodeEngn Conference 09] wh1ant - various tricks for linux remote exploits[2013 CodeEngn Conference 09] wh1ant - various tricks for linux remote exploits
[2013 CodeEngn Conference 09] wh1ant - various tricks for linux remote exploitsGangSeok Lee
 
[2013 CodeEngn Conference 09] 김홍진 - 보안컨설팅 이해 및 BoB 보안컨설팅 인턴쉽
[2013 CodeEngn Conference 09] 김홍진 - 보안컨설팅 이해 및 BoB 보안컨설팅 인턴쉽[2013 CodeEngn Conference 09] 김홍진 - 보안컨설팅 이해 및 BoB 보안컨설팅 인턴쉽
[2013 CodeEngn Conference 09] 김홍진 - 보안컨설팅 이해 및 BoB 보안컨설팅 인턴쉽GangSeok Lee
 
[2010 CodeEngn Conference 04] Max - Fighting against Botnet
[2010 CodeEngn Conference 04] Max - Fighting against Botnet[2010 CodeEngn Conference 04] Max - Fighting against Botnet
[2010 CodeEngn Conference 04] Max - Fighting against BotnetGangSeok Lee
 
[2010 CodeEngn Conference 04] window31 - Art of Keylogging 키보드보안과 관계없는 키로거들
[2010 CodeEngn Conference 04] window31 - Art of Keylogging 키보드보안과 관계없는 키로거들[2010 CodeEngn Conference 04] window31 - Art of Keylogging 키보드보안과 관계없는 키로거들
[2010 CodeEngn Conference 04] window31 - Art of Keylogging 키보드보안과 관계없는 키로거들GangSeok Lee
 
[2010 CodeEngn Conference 04] hahah - Defcon 18 CTF 문제풀이
[2010 CodeEngn Conference 04] hahah - Defcon 18 CTF 문제풀이[2010 CodeEngn Conference 04] hahah - Defcon 18 CTF 문제풀이
[2010 CodeEngn Conference 04] hahah - Defcon 18 CTF 문제풀이GangSeok Lee
 
[2009 CodeEngn Conference 03] externalist - Reversing Undocumented File Forma...
[2009 CodeEngn Conference 03] externalist - Reversing Undocumented File Forma...[2009 CodeEngn Conference 03] externalist - Reversing Undocumented File Forma...
[2009 CodeEngn Conference 03] externalist - Reversing Undocumented File Forma...GangSeok Lee
 
[2009 CodeEngn Conference 03] koheung - 윈도우 커널 악성코드에 대한 분석 및 방법
[2009 CodeEngn Conference 03] koheung - 윈도우 커널 악성코드에 대한 분석 및 방법[2009 CodeEngn Conference 03] koheung - 윈도우 커널 악성코드에 대한 분석 및 방법
[2009 CodeEngn Conference 03] koheung - 윈도우 커널 악성코드에 대한 분석 및 방법GangSeok Lee
 

Mehr von GangSeok Lee (20)

[2014 CodeEngn Conference 11] 박한범 - 가상화 기술과 보안
[2014 CodeEngn Conference 11] 박한범 - 가상화 기술과 보안[2014 CodeEngn Conference 11] 박한범 - 가상화 기술과 보안
[2014 CodeEngn Conference 11] 박한범 - 가상화 기술과 보안
 
[2014 CodeEngn Conference 11] 남대현 - iOS MobileSafari Fuzzer 제작 및 Fuzzing
[2014 CodeEngn Conference 11] 남대현 - iOS MobileSafari Fuzzer 제작 및 Fuzzing[2014 CodeEngn Conference 11] 남대현 - iOS MobileSafari Fuzzer 제작 및 Fuzzing
[2014 CodeEngn Conference 11] 남대현 - iOS MobileSafari Fuzzer 제작 및 Fuzzing
 
[2014 CodeEngn Conference 11] 김기홍 - 빅데이터 기반 악성코드 자동 분석 플랫폼
[2014 CodeEngn Conference 11] 김기홍 - 빅데이터 기반 악성코드 자동 분석 플랫폼[2014 CodeEngn Conference 11] 김기홍 - 빅데이터 기반 악성코드 자동 분석 플랫폼
[2014 CodeEngn Conference 11] 김기홍 - 빅데이터 기반 악성코드 자동 분석 플랫폼
 
[2014 CodeEngn Conference 11] 최우석 - 자바스크립트 난독화 너네 뭐니?
[2014 CodeEngn Conference 11] 최우석 - 자바스크립트 난독화 너네 뭐니?[2014 CodeEngn Conference 11] 최우석 - 자바스크립트 난독화 너네 뭐니?
[2014 CodeEngn Conference 11] 최우석 - 자바스크립트 난독화 너네 뭐니?
 
[2014 CodeEngn Conference 11] 박세한 - IE 1DAY Case Study EN
[2014 CodeEngn Conference 11] 박세한 - IE 1DAY Case Study EN[2014 CodeEngn Conference 11] 박세한 - IE 1DAY Case Study EN
[2014 CodeEngn Conference 11] 박세한 - IE 1DAY Case Study EN
 
[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
 
[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis EN
[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis EN[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis EN
[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis EN
 
[2014 CodeEngn Conference 11] 정든품바 - 웹성코드
[2014 CodeEngn Conference 11] 정든품바 - 웹성코드[2014 CodeEngn Conference 11] 정든품바 - 웹성코드
[2014 CodeEngn Conference 11] 정든품바 - 웹성코드
 
[2014 CodeEngn Conference 10] 정광운 - 안드로이드에서도 한번 후킹을 해볼까 (Hooking on Android)
[2014 CodeEngn Conference 10] 정광운 -  안드로이드에서도 한번 후킹을 해볼까 (Hooking on Android)[2014 CodeEngn Conference 10] 정광운 -  안드로이드에서도 한번 후킹을 해볼까 (Hooking on Android)
[2014 CodeEngn Conference 10] 정광운 - 안드로이드에서도 한번 후킹을 해볼까 (Hooking on Android)
 
[2014 CodeEngn Conference 10] 노용환 - 디버거 개발, 삽질기
[2014 CodeEngn Conference 10] 노용환 -  디버거 개발, 삽질기[2014 CodeEngn Conference 10] 노용환 -  디버거 개발, 삽질기
[2014 CodeEngn Conference 10] 노용환 - 디버거 개발, 삽질기
 
[2013 CodeEngn Conference 09] x15kangx - MS Office 2010 문서 암호화 방식 분석 결과
[2013 CodeEngn Conference 09] x15kangx - MS Office 2010 문서 암호화 방식 분석 결과[2013 CodeEngn Conference 09] x15kangx - MS Office 2010 문서 암호화 방식 분석 결과
[2013 CodeEngn Conference 09] x15kangx - MS Office 2010 문서 암호화 방식 분석 결과
 
[2013 CodeEngn Conference 09] proneer - Malware Tracker
[2013 CodeEngn Conference 09] proneer - Malware Tracker[2013 CodeEngn Conference 09] proneer - Malware Tracker
[2013 CodeEngn Conference 09] proneer - Malware Tracker
 
[2013 CodeEngn Conference 09] BlueH4G - hooking and visualization
[2013 CodeEngn Conference 09] BlueH4G - hooking and visualization[2013 CodeEngn Conference 09] BlueH4G - hooking and visualization
[2013 CodeEngn Conference 09] BlueH4G - hooking and visualization
 
[2013 CodeEngn Conference 09] wh1ant - various tricks for linux remote exploits
[2013 CodeEngn Conference 09] wh1ant - various tricks for linux remote exploits[2013 CodeEngn Conference 09] wh1ant - various tricks for linux remote exploits
[2013 CodeEngn Conference 09] wh1ant - various tricks for linux remote exploits
 
[2013 CodeEngn Conference 09] 김홍진 - 보안컨설팅 이해 및 BoB 보안컨설팅 인턴쉽
[2013 CodeEngn Conference 09] 김홍진 - 보안컨설팅 이해 및 BoB 보안컨설팅 인턴쉽[2013 CodeEngn Conference 09] 김홍진 - 보안컨설팅 이해 및 BoB 보안컨설팅 인턴쉽
[2013 CodeEngn Conference 09] 김홍진 - 보안컨설팅 이해 및 BoB 보안컨설팅 인턴쉽
 
[2010 CodeEngn Conference 04] Max - Fighting against Botnet
[2010 CodeEngn Conference 04] Max - Fighting against Botnet[2010 CodeEngn Conference 04] Max - Fighting against Botnet
[2010 CodeEngn Conference 04] Max - Fighting against Botnet
 
[2010 CodeEngn Conference 04] window31 - Art of Keylogging 키보드보안과 관계없는 키로거들
[2010 CodeEngn Conference 04] window31 - Art of Keylogging 키보드보안과 관계없는 키로거들[2010 CodeEngn Conference 04] window31 - Art of Keylogging 키보드보안과 관계없는 키로거들
[2010 CodeEngn Conference 04] window31 - Art of Keylogging 키보드보안과 관계없는 키로거들
 
[2010 CodeEngn Conference 04] hahah - Defcon 18 CTF 문제풀이
[2010 CodeEngn Conference 04] hahah - Defcon 18 CTF 문제풀이[2010 CodeEngn Conference 04] hahah - Defcon 18 CTF 문제풀이
[2010 CodeEngn Conference 04] hahah - Defcon 18 CTF 문제풀이
 
[2009 CodeEngn Conference 03] externalist - Reversing Undocumented File Forma...
[2009 CodeEngn Conference 03] externalist - Reversing Undocumented File Forma...[2009 CodeEngn Conference 03] externalist - Reversing Undocumented File Forma...
[2009 CodeEngn Conference 03] externalist - Reversing Undocumented File Forma...
 
[2009 CodeEngn Conference 03] koheung - 윈도우 커널 악성코드에 대한 분석 및 방법
[2009 CodeEngn Conference 03] koheung - 윈도우 커널 악성코드에 대한 분석 및 방법[2009 CodeEngn Conference 03] koheung - 윈도우 커널 악성코드에 대한 분석 및 방법
[2009 CodeEngn Conference 03] koheung - 윈도우 커널 악성코드에 대한 분석 및 방법
 

[2014 CodeEngn Conference 10] 심준보 - 급전이 필요합니다

  • 2. Introduction • 소프트웨어 취약점의 정의 • 소프트웨어 취약점의 위험성 – 설계한 소프트웨어의 보안 매커니즘을 파괴 – 예상하지 못한 소프트웨어의 동작으로 탐지하기 어려움 – 소프트웨어 개발 업체 : 기업의 신뢰성 위협 – 소프트웨어 사용 업체 : 기업의 보안 매커니즘을 위협 소프트웨어의 결함이나 체계ㆍ설계상의 허점으로 인해 사용자(특히 공격자)에게 허용된 권한 이상의 동작이나 허용된 범위 이상의 권한을 부여하는 약점을 의미한다
  • 3. Introduction • 소프트웨어 취약점이 악용된 사례 : 보안사고의 핵심
  • 4. Introduction • 악용된 소프트웨어 취약점 : Microsoft(社)
  • 5. Introduction • 소프트웨어 취약점 관련 용어정리 – 취약점(Vulnerability) • 이용하여 권한을 획득할 수 있는 소프트웨어 적인 버그 – 공격코드(Exploit) • 취약점을 공격할 수 있는 코드 – 개념증명 코드(PoC Code) • 취약점을 증명할 수 있는 코드 – 시스템 소유(System Pwned) • 취약점을 이용하여 해당 시스템을 점유하였을 때 사용하는 표현 – CVE : Common Vulnerabilities and Exposures • 취약점에 대한 정보를 모아놓은 List-up – 취약점 공개(Vulnerability Disclosure)
  • 6. Software Bug Hunting 이란 ? • 소프트웨어 취약점을 특정 이득을 위해 찾아내는 행위 소프트웨어의 결함이나 체계ㆍ설계상의 허점을 고의적으로 찾아내어 금전적인 이득, 사이버 테러의 예방, 해커적인 명성획득 등의 특정 이득을 노리는 일련의 행위
  • 7. Bug Bounties • Samsung SMART TV – https://samsungtvbounty.com/ • Tipping Point ZDI – http://www.zerodayinitiative.com/about/benefits/
  • 8. Bug Bounties • Verisign Idefense Lab Vulnerability Management – https://www.verisigninc.com/en_US/products-and- services/network-intelligence-availability/idefense/vulnerability- intelligence/index.xhtml • KISA 침해대응센터 취약점 신고 포상제 – http://www.krcert.or.kr/kor/consult/consult_04.jsp
  • 9. Stories of Bug Hunters • Pwn2Own In CanSecWest – 가장 잘 알려진 Bug Hunter들의 Exploit 기술을 선보이는 대회 – 매년 캐나다 CanSenWest에서 열림 – Google, Tipping Point, Adobe 등이 스폰 • The Pwnie Award – 매년 유명 Hacker들이 그 해 발견된 취약점 중 우수한 취약점에 대해 시상식을 통해 포상을 하는 제도
  • 10. Business Model • Offensive Reserch, Security, Model
  • 11. Business Model • 취약점을 발견하기 어렵다 – 배우기 어렵다 – 정형화된 방법이 드물다
  • 12. Business Model • 취약점을 알고 있어도 고치기 어렵다 – 정확한 취약점의 공격원리 – 프로그램의 안정성 – 개발 프로세스의 부재 – 취약점 관리 프로세스의 부재 – 뛰어난 프로그래머의 부족 – 공격 코드 작성과 프로그래밍이 가능한 인재의 부족
  • 13. Business Model 구 분 국산 소프트웨어 외산 소프트웨어 취약점 발견 능력 미비 유명 해커의 고용 취약점 패치 능력 미비 자체적인 교육 취약점 관리 능력 없음 프로그램 운용 취약점 대응/독립 팀 존재 없음 자체 팀 존재 취약점 대응 능력 국가기관에 의존 TF구성 외부 전문가 활용 미비 많음 취약점 신고 창구 운용 미비 프로그램 운용 국산 소프트웨어는 잠재적으로 많은 보안 취약점을 지니고 있음 전문적으로 소프트웨어 취약점을 관리하는 인력이나 시스템이 없음
  • 14. 소프트웨어 취약점 점검 • White Box Testing – 소프트웨어에 대한 전권을 행사할 수 있을 때 취약점을 점검 • 소프트웨어 개발사 • 적법한 절차의 소프트웨어 취약점 점검사 • Black Box Testing – 소프트웨어에 대한 일부, 혹은 전혀 권한을 행할 수 없을 때 점검 • 특수한 경우의 적법한 절차의 소프트웨어 점검사 • Bug Bounty를 노리는 Bug Hunter • 악의적인 Hacker (공격자)
  • 15. 소프트웨어 취약점 점검 방법 • 소스코드 점검 ( Source Code Auditing ) – 주로 White Box Testing에 사용 – 실제로 생각보다 난이도가 높음 • 소프트웨어 역공학( Reverse Code Engineering ) – 주로 Black Box Testing에 사용 – 취약점을 점검하는 사람에 따라 차이가 큰 편 • 퍼징 ( Fuzzing ) – 주로 Black Box Testing에 사용 – 자동화된 툴을 사용하여 취약점을 점검 – Every Hacker Make Own Fuzzers ! • 기타
  • 16. 취약점의 종류 • Software Bug Diagram – 소프트웨어 버그는 엄청나게 종류가 많다 – 모든 버그가 모두 공격 가능한 것은 아니다 Program Bug Exception Crash Vulnerability
  • 17. 취약점 일반론 • Untrusted Input & Object – 사용자(특히 공격자)가 조작할 수 있는 입력 혹은 객체 Program Bug Exception Crash Vulnerability Inputs Files, Networks, System Objects, Keyboard Inputs, ETC Outputs Files, Networks, System Objects Hacker Needs This Flows
  • 18. Command Injection • 프로그램에 명령어 삽입이 가능한 경우
  • 19. Command Injection • Case Study : CVE-2010-3847 – GNU C library dynamic linker $ORIGIN expansion Vulnerability
  • 20. Command Injection • Case Study : DLL Hijacking, Unsafe DLL Load – CVE-2010-3141, MS Office Power Point 2007 DLL Hijacking
  • 21. Command Injection • Case Study : Unsafe Object Import – CVE-2012-0013, MS Office ClickOnce Unsafe Object Handing – http://www.cc.gatech.edu/~blee303/exploit/ms12- 005/MS12-005.ppsx
  • 22. Information Leak • 프로그램이 악용될 수 있는 정보를 공개하는 경우 – 설치경로, 버전, 사용하는 라이브러리 버전 – 심지어 주소나 객체의 동적 주소 등도 포함됨
  • 23. Stack Based Corruption • Stack Based Overflow
  • 25. Microsoft Exploit Mitigation • History of Memory Protection
  • 26. Microsoft Exploit Mitigation • History of Stack Corroption
  • 27. Microsoft Exploit Mitigation • History of Heap Corroption
  • 28. Use After Free • Use After Free 취약점 Error ??
  • 29. Use After Free • Use After Free 취약점 Free 한 이후에도 Buf를 사용함
  • 30. Use After Free • Use – After – Free 취약점 – C++ 에서 Class 생성자인 new와 delete 연산에서도 같은 문제가 존재 – C++은 객체의 Use-after-free가 일어날 경우 Method의 함수포 인터를 조작할 수 있는 경우가 있음 멤버변수 number Count() 함수포인터 (접근가능)
  • 31. Use After Free • Use – After – Free 취약점 – C++ 에서 생성자와 소멸자 기본 등록되는 경우 Use-After-Free와 만나면 매우 위험함 Constructor MemberVariable MemberFunction Destructor •생성자 •함수 포인터 •멤버 변수 •number •멤버 함수 •count() •소멸자 •함수 포인터 접근 가능
  • 32. Use After Free • Use – After – Free in Javascript 객체 생성 객체 소멸 2개의 Event 동시 발생
  • 33. Type Confusion • 객체의 Instance가 Type을 혼동하여 나는 오류 • Flash Player Case : Action Script Action Script Source Code SWF file (Bytecode) Machine Code (Assembly) Trace( “AAAAA” ); Findpropstric <q>[public]::trace Push string “AAAAAA” Callpropvoid <q>[public]::trace, 1 params AVM JIT
  • 34. Type Confusion : Flash Player Case • Action Script Bytecode는 3단계를 거쳐서 실행된다 검증단계 (Verification Process) 생성단계 (Generation Process) 실행단계 (Execution Process) Bytecode가 안전한지 검사 Bytecode => Machine Code Machine Code 를 실행
  • 35. Type Confusion : Flash Player Case • Action Script Bytecode는 3단계를 거쳐서 실행된다 검증단계 (Verification Process) 생성단계 (Generation Process) 실행단계 (Execution Process) Verification Flow 수행흐름에 따라 안정성을 검증 Execution Flow 수행흐름에 따라 안정성을 검증
  • 36. Type Confusion : Flash Player Case • Action Script Bytecode 검증은 Block 을 기반으로 계산된다 • Block의 구분은 jump와 같은 Branch 류의 명령을 기반한다
  • 37. Type Confusion : Flash Player Case • 검증실패 1 : callpropvoid는 Object type을 필요하는데, Integer type의 인자가 같이 들어감 • 검증실패 2 : “1 params”로 하나의 인자를 명시했는데, 2개의 인자가 들어감
  • 38. Type Confusion : Flash Player Case BLOCK 1 BLOCK 2 BLOCK 3 • BLOCK 1,2,3 모두 검증 성공
  • 39. Type Confusion : Flash Player Case • Action Script 는 모든 Object 를 Atomic Type으로 표현한다 2BC5732 : Atomic type Trace( “AAAAA” );
  • 40. Type Confusion : Flash Player Case
  • 41. Type Confusion : Flash Player Case
  • 42. Type Confusion : Flash Player Case
  • 43. Type Confusion : Flash Player Case 137CC3FC 137CC3FF 100 - undefined 111 - Double
  • 44. Type Confusion : Flash Player Case • Verification Process 를 우회 • Atomic Confusion 을 통해 Crash 유발
  • 45. Type Confusion Class A Call A.a() Class B Function B.a() : return int Class C Function C.a() : return string Confusion [Class B의 주소] -> [a() 함수의 주소] -> [함수 호출] [Class B ? C ?의 주소] -> [???????] -> [Crash]
  • 46. Bug Hunting 방법론 • Method 1 : Using Information or Open Vulnerbility – 공개된 취약점을 재 조합하여 취약점을 찾아냄 – 일반적으로 프로그래머의 실수는 다시 재발하는 경우가 많음 • Method 2 : Source Code Auditing – 활용할 수 있는 소스코드들을 Program이 Import했는지 확인 – 그 뒤 Source Code를 활용하여 취약점을 검색 • Method 3 : Top-Down Analysis – 상위 High-level의 관점에서 부터 가장 낮은 Low-Level까지 – 데이터의 흐름이나 시스템의 약점을 조사하는 방법
  • 47. Bug Hunting 방법론 • Method 4 : Reverse Engineering – 소프트웨어 역공학을 통해 프로그램의 취약점을 조사 – 디버거나 디스어셈블러의 도움을 활용함 • Method 5 : Fuzzing ( Brute Force Testing ) – 프로그램의 입/출력부의 랜덤한 값을 입력하여 취약점을 조사 – 자동화하기 매우 편리함 • Method 6 : Dynamic Analysis – 프로그램의 동작방식을 이용하여 취약점을 조사 – Dynamic Binary Instrumentation 이나 Debugger를 이용
  • 48. Method 1(Practice 1) : Using Information or Open Vulns • 공개된 취약점의 정보를 조합하여 취약점 발견 Gomplayer Exploit Code KMPlayer Pot Player Choco Player
  • 49. Method 1(Practice 2) : Using Information or Open Vulns • 공개된 Open Library의 Version 확인
  • 50. Method 2 : Source Code Auditing • 공개된 Open Source를 Code Level에서 취약점 발견 – 취약점의 종류를 노려서 하는 것이 일반적 • Step 1 : 변수 정보 수집
  • 51. Method 2(Practice 3) : Source Code Auditing • Step 2 : 사용자로 부터 조작가능한 변수파악
  • 52. Method 2 : Source Code Auditing • Step 3 : 실행 흐름을 따라 취약점 조사
  • 53. Method 3(Practice 4) : Top-Down Analysis • 프로그램의 취약점을 설계자 관점으로 분석하는 방법
  • 54. Method 4(Practice 5) : Reverse Engineering • 소프트웨어 역공학을 통해 취약점을 조사하는 방법 – 가장 중요한 것은 조작할 수 있는 값을 찾아내는 것
  • 55. Method 5 : Fuzzing • 프로그램이 받아들이는 Input을 랜덤하게 발생기켜 프로그램의 취약점을 찾아내는 방법 • 현재 매우 인기있는 취약점 발견 방법론 • 대부분 Memory와 관련한 취약점을 찾는데 집중 • 매우 다양한 Fuzzing Framework들이 구성되어 있음
  • 56. Method 6 : Dynamic Analysis • Dynamic Taint Analysis
  • 57. Taint Analysis • Dynamic Taint Analysis
  • 58. Taint Analysis • Taint Analysis 의 효과 : Bug Hunting에 대한 응용 – Find Tainted EIP Register – Find Tainted Function Pointers – Find Tainted Stack Arguments – Find Tainted Data Structure Using System • Taint Analysis 의 효과 : Exploit detection – Preprocessing : 0-day Exploit detection • Rechability Problem의 해결 – How can I make PDF File to execute code block #937 • Mov [edi * 2], esi – Packet으로부터 Memory Access가 edi, esi로 이어지는지를 판단
  • 59. Dynamic Binary Instrumental • Binary 실행시 원하는 Code를 삽입하는 기술 • 프로그램을 다시 컴파일하거나 링킹하지 않음 • 실행하는 동안 원하는 루틴을 찾을 수 있음 • 실행중인 프로그램을 분석하는데 탁월함 Mov eax, ebxCode 1 Code 2
  • 60. Method 3 Putting All • 취약점을 찾는데 정형화된 Flow는 없음 • 주의할 점 – 프로그램마다 특성이 있고 그 특성을 파악하는 것 – 공격자의 입장에서 생각하는 것 – 개발자는 사람이다 : 실수를 반드시 한다 – 모든 버그는 공격할 수 있다고 가정한다 Method1 Method2 Method 4 Method 5 Method 6 www.CodeEngn.com 2014 CodeEngn Conference 10