Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "스크립트 SWF 파일 Exploit Drive by Download 분석."— Presentation transcript:

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

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

3 1. 악성 스크립트 분석

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

5 1-2 Compress Site

6 1.3 Gate/Redirect Site

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

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

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

10 2. SWF 파일 Exploit 분석

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

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

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

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

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

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

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

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

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

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

21 3. 쉘코드 실행 과정 분석

22 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)

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

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

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

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

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

28 Q & A Any question?

29 THANK YOU For your attention


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

Similar presentations


Ads by Google