스크립트 SWF 파일 Exploit Drive by Download 분석.

Slides:



Advertisements
Similar presentations
INDEX Ⅰ. 新한류 열풍 Ⅱ. 한국 아이돌 성공요인 Ⅲ. 시사점 및 결 론 Ⅰ. 新한류 열풍 한국 아이돌 아시아 에서만 통한 다 ?!
Advertisements

1 ‘ 우리나라의 주요공업 ’ - 정도웅, 주민혁, 안수진, 백경민, 엄다운, 박경찬 -.
수유부의 약물복용 시 주의점 발표자 조기성. 모유 수유의 장점 모유 수유의 장점은 ? 위장관 질환 발생감소 영아 돌연사 발생감소 아토피 질환 발생감소 정서적 안정.
미국의 미디어교육 신문방송학과 강진구 한인수 곽모란 이명현.
반송지역 스토리 텔링 호텔경영학과 권정민.
Format String Attack! 포맷 스트링 공격 경일대학교 사이버보안학과 학년 남주호.
수34 네트워크와 경제논리 경영4 A 윤다슬 신문 스크랩 발표 인터넷만 접속하면 OK.
PRESENTATION 저온화상이란?
노동쟁의/파업 사례 전국철도노동조합 4조 이성화 이민경 박민 김승주 김태용.
Re:Zero 부터 시작하는 Flash Player CVE 분석
공부할 내용 조상들이 살던 곳 자연과 잘 어울리는 한옥 지방에 따라 서로 다른 집의 모양 섬 지방의 집
사랑, 데이트와 성적 자율성 :데이트 성폭력!!! 성폭력예방교육 전문강사 / 여성학 전공 신 순 옥.
퇴계와 율곡의 사회사상 비교 남 일 재 동서대학교 교수/ 정치학 박사 1. 퇴계 이황과 율곡 이이의 약전(略傳)
최윤정 Java 프로그래밍 클래스 상속 최윤정
501. 군인들의 세상 502. 민정 이양과 한일회담 이선용.
쌓지 말고 해소하자 이 주휘 이 진영 전 민석 전 혜림.
2015년 하반기 소방교육 자 유 전 공 학 부 (금) 안녕하십니까 자유전공학부 행정실 입니다.
Lesson 5. 레퍼런스 데이터형.
시스템 보안 [Buffer Overflow] DEC, 15, 2013 By 박동혁.
UNIT 07 Memory Map 로봇 SW 교육원 조용수.
5장. 참조 타입.
Root Filesystem Porting
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
Javascript Basic Sample Programs
Root Filesystem Porting
Power Java 제14장 배치 관리자.
PySpark Review 박영택.
10장. 예외처리.
Hi KAKAO PRESENTATION sangja.tistory.com.
행정학과 김수민 중국 춘절의 교통문제.
Method & library.
사용자 함수 사용하기 함수 함수 정의 프로그램에서 특정한 기능을 수행하도록 만든 하나의 단위 작업
인터넷응용프로그래밍 JavaScript(Intro).
사회복지 법제론 /노인장기요양보험법 문은홍 조소라.
UNIT 07 Memory Map 로봇 SW 교육원 조용수.
이름 : 황 상 두 전화번호 : 이메일 : PinTool 이름 : 황 상 두 전화번호 : 이메일 :
영상처리 실습 인공지능연구실.
MVC 모델을 이용한 웹 애플리케이션 작성 웹 애플리케이션 개발 순서를 알아본다 웹 애플리케이션의 실행 순서를 이해한다.
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
15장 컬렉션 프레임워크 Section 1 컬렉션 프레임워크의 개요 Section 2 리스트 Section 3 셋
패시브하우스 신안산대학교 l 건축과 l 박효동, 박창준, 지예림.
소아 알레르기 발표자: 김제범 김재운, 김은진, 김지윤, 김지혜.
정치개혁의 가능성 논의 권력구조 개편을 통하여 본 -개헌을 통한 정부형태의 변화를 중심으로 [한국정치론] 윤성이 교수님
치료 레크레이션 프로그램 (지적 장애 대상) 과 목: 학 과: 학 번: 이 름: 제 출 일 자 담 당 교 수:
CHAP 21. 전화, SMS, 주소록.
데이터 동적 할당 Collection class.
보로노이 다이어그램 SIM (String art In Math) 조 팀원 : 문지윤, 염민아, 정유나, 정윤서, 하연주.
노년기 발달 장안대 행정법률과 세류반 정 오 손
12강. 컨트롤러 컨트롤러 클래스 제작 요청 처리 메소드 제작 뷰에 데이터 전달
클래스 : 기능 CHAPTER 7 Section 1 생성자(Constructor)
오라클 11g 보안.
13주 실습강의 학기, 소프트웨어 설계 및 실험(Ⅰ).
태국 문학 욜라다 왓짜니 싸란차나 팟차라와라이 끼따야펀 르앙다우 타니다.
가장 많이 사용 Accelerator 최상위 WM_COMMAND, OLE 메시지 관련 이벤트 처리만 가능 이 클래스를 상속받아서 다른 이벤트 처리 이벤트 처리 관련 윈도우(창) 최상위 클래스 멀티 테스킹(모듈) CFrameWnd, Cview,
발표자 : 이지연 Programming Systems Lab.
9 브라우저 객체 모델.
톡 튀는 컬러의 상큼한 오피스 톡 사무공간계획 토탈실내건축을 다녀오고 나서 김효선 류문경
Android -Data Base 윤수진 GyeongSang Univ. IT 1.
경영학의 상황학파에 대해서… 경제학과 3학년 최준용 회계학과 4학년 진현빈
워밍업 실뭉치 전달게임.
Power Java 제14장 배치 관리자.
트위치 트게더 Twitogether 김준희.
CCIT 네트워크 발표 정보보호학과 평문 사이트와 SSL 사이트, SSL strip과 데이터 변조를 이용한 로그인 취약점
29장. 템플릿과 STL 01_ 템플릿 02_ STL.
음파성명학 최종욱.
CODE INJECTION 시스템B 김한슬.
7 생성자 함수.
6 객체.
XSS 취약점을 이용한 웹메일 해킹
20 XMLHttpRequest.
Presentation transcript:

스크립트 SWF 파일 Exploit Drive by Download 분석

I N D E X 1 악성 스크립트 분석 2 SWF 파일 Exploit 분석 3 쉘코드 실행 과정 분석

1. 악성 스크립트 분석

1-1 악성 링크 구조 Compress Site Gate/Redirect Site Rig Landing Page

1-2 Compress Site

1.3 Gate/Redirect Site

1.4 Rig Landing Page 인코딩된 코드 디코딩 코드 인코딩된 코드 디코딩 코드

1.4 Rig Landing Page(첫 번째 인코딩된 코드)

1.4 Rig Landing Page(두 번째 인코딩된 코드)

2. SWF 파일 Exploit 분석

1 2 2-1 CVE-2015-5122 이태리 소재의 Hacking Team사의 데이터유출로 인해 알려지게 된 취약점 DisplayObject class의 opaqueBackground 속성 Setter에서 발생하는 UAF 취약점

2-2 악성 SWF 파일 개요(파일 구조) Encrypt Data ROP+Shellcode Exploit code Exploiter Decrypter Main Start <Sample>

2-2 악성 SWF 파일 개요(안티 디버깅) <난해한 변수명> <암호화된 데이터> <push+pop 난독화>

2-3 Exploit 과정 분석 New Vector.<int>(8) 호출 Vector<uint> TextLine createTextLine() 호출 클래스.prototype.valueOf = 함수

2-3 Exploit 과정 분석 textLine 개체.opaqueBackground = 클래스 객체 Vector<uint> Vector<uint>(Free) 사용자 정의 valueOf() 호출 TextLine TextLine(Free) Vector<uint> (TextLine(F) OverWrite) recreateTextLine() 호출 Vector<uint> 길이 변경(증가)

2-3 Exploit 과정 분석 사용자 정의 valueOf() return Vector<uint>(Free) opaqueBackground속성에 반환값 저장 TextLine(Free) 반환값 저장 Vector<uint> (TextLine(F) OverWrite) 확대(Vector<uint> 일부) 반환값 저장 Vector 길이 더미값 배열

2-3 Exploit 과정 분석(Exploit 원인 분석) textLine 객체 주소 반환 ESI에 객체 주소 저장 사용자 정의 valueOf 함수호출 Vector<uint> 반환값 저장

2-3 Exploit 과정 분석(코드 분석) 객체 생성 메소드 재정의 재정의 함수 호출

Vector<uint> .length=0x62 2-3 Exploit 과정 분석(코드 분석) textLine Free Vector<uint> .length=0x62 0x6a Return

2-3 Exploit 과정 분석(코드 분석) Vector<Object> Vector<uint> 저장 Length==0x6a Next Vector<uint> length=0x40000000 Current Vector<uint> length=0x40000000 -0x66 Next Vector<uint> length=0x62 -0x2

3. 쉘코드 실행 과정 분석

3-1 주소값 구하기 Current Current Vector+1 Current Vector+2 Current+1(+0x190) Vector Free Current+2(+0x320) Current Vector+1 주소 Current Vector 배열주소 Flash 모듈 주소 Base주소 (ByteArray)

3-2 ByteArray 생성 ByteArray 생성 0x8000 To search

3-3 ByteArray 주소값 구하기 ByteArray 객체일 경우 ByteArray 배열일 경우 ByteArray 배열주소 Base 주소 (toString)

3-4 ROP 가젯 검색 Code Section 0xFFFFF000 Flash 모듈 영역 주소 MZP

3-5 Payload 구성 ByteArray 주소영역 ROP 가젯+Shellcode

3-6 쉘코드 실행 ByteArray toString 주소 위치 함수 주소 후킹 ByteArray에 저장된 주소실행

Q & A Any question?

THANK YOU For your attention