76
게임 리소스 추출과 변조 ICEWALL 오효근

Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

Embed Size (px)

Citation preview

Page 1: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

게임 리소스 추출과 변조ICEWALL 오효근

Page 2: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

whoami

•오효근

•한양대학교 ICEWALL•Best of the Best 4기•프로그래밍 삽질에 지대한 관심이 있음•뻘짓거리에 집착하는 경향이 큼

2

Page 3: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

이상은...

•너도 할 수 있다 게임분해!!!•너도 할 수 있다 모딩!!!•너도 할 수 있다 툴키디!!!

3

Page 4: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

현실은...

•나도 할 수 없다 리버싱!!!•나도 할 수 없다 게임가드 우회!!!•나도 당했다 영구정지!!!

4

Page 5: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

뭘 할껀데?

•간단한 언패킹 및 리소스 들여다보기•툴만 써서 게임 리소스를 뒤엎는 시연•도대체 이게 왜 재미있는지에 대한 설명

5

Page 6: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

언팩?

6

Page 7: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

UPX?

7

Page 8: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20 8

Page 9: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

언팩?

9

Page 10: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

언팩?

10

Page 11: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

언팩?

•팩킹 된 것을 푸는 것•게임 내 데이터들을 해체하는 과정•마X노기나 던X에서는 좀 더 포괄적으로 사용: 데이터를 수정하는 일련의 과정까지 포함

11

Page 12: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

언팩?

•검열되었습니다. 죄송합니다.

12

Page 13: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

타겟은?

13

Page 14: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20 14

Page 15: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20 15

Page 16: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

Thanks to GNISoft

16

Page 17: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

타겟은?

•Art of War•2008 - 2009•한국 / 중국 서비스•GNISoft 개발 / 감마니아 퍼블리싱•발표자가 미친듯이 했었던 게임

17

Page 18: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

타겟은?

•Gigaslave•2010 - 2014•한국 / 중국 / 대만 / 태국 / 인도네시아•GNISoft 개발 / 퍼블리셔는 각각 다름•Art of War의 후속작 / 기존 맵 우려먹음

18

Page 19: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

타겟은?

19

https://www.youtube.com/watch?v=NkpPsTjqxd0

Page 20: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

타겟은?

20

Page 21: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

타겟은?

21

Page 22: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

타겟은?

•AOW.cvf는 93.6MB•_aow.exe는 3MB•aow.exe는 1.9MB

22

Page 23: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

AOW.cvf에 뭔가 있을 거 같다!

23

Page 24: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

AOW.cvf

24

Page 25: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

AOW.cvf

25

Page 26: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

AOW.cvf

26

파일 사이즈?

Page 27: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

AOW.cvf

•일종의 압축 파일 같다?•근데 압축 알고리즘을 모르겠다.•그렇다고 수동으로 hex 값을 복붙하기는 싫다•그렇다면?

27

Page 28: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

QuickBMS

28

Page 29: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

QuickBMS

•http://aluigi.altervista.org/quickbms.htm•모딩 좀 하다보면 만나는 녀석•700개 이상의 게임 파일 분해 지원•게임 파일 뜯는데 주로 사용

29

Page 30: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

QuickBMS

30

Page 31: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

QuickBMS

•QuickBMS를 이용한 분해•정보들을 추출•필요한 정보들 및 구조 살펴보기

31

Page 32: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

QuickBMS

32

Page 33: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

QuickBMS

33

Page 34: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

뜯어봅시다

34

Page 35: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

(시연 중)

35

Page 36: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

결론은?

•의외로 간단한 구조•의외로 대놓고 보여줌•의외로 나도 만들 수 있을 거 같음

36

Page 37: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

이게 별게 아닐까요?

37

Page 38: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

이게 별 게 아닐까요?

38

http://www.thisisgame.com/webzine/news/nboard/4/?n=10696

Page 39: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

이게 별 게 아닐까요?

39

http://blog.naver.com/tantk/120065353095

Page 40: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

이게 별 게 아닐까요?

40

http://blog.naver.com/tantk/120065353095

Page 41: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

이게 별 게 아닐까요?

41

http://blog.naver.com/tantk/120065353095

Page 42: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

이게 별 게 아닐까요?

•영상

42

http://blog.naver.com/tantk/120065353095

http://www.mgoon.com/ch/tantk/v/2115226

Page 43: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

Thanks to 땅꾸

43

http://blog.naver.com/tantk/120065353095

Page 44: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

World of Tanks

44

Page 45: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

World of Tanks

45

Page 46: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

World of Tanks

46

Page 47: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

World of Tanks

47

https://www.youtube.com/watch?v=EcXy7XrB_Ms

Page 48: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

한 발짝 더

•과연 게임 그래픽 리소스만 추출 가능?•과연 게임 그래픽 정도만 바꿀 수 있음?•과연 게임 리소스에 대한 방어가 이 정도임?

48

Page 49: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

한 번 봅시다

49

Page 50: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

(시연 중)

50

Page 51: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

한 번 봤더니?

51

Page 52: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

한 번 봤더니?

•검열 되었습니다. 죄송합니다.

52

Page 53: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20 53

Page 54: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20 54

http://pwnadventure.com/

Page 55: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

Pwn Adventure

•Ghost in the shellcode에서 문제로 내준 MMORPG 게임•Unity3D 기반으로 제작•여러가지 공격 기법을 배우고 볼 수 있음

55

Page 56: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

Pwn Adventure 3•http://lockboxx.blogspot.kr/2015/01/ghost-in-shellcode-2015-ctf-writeup-pwn.html•http://lockboxx.blogspot.kr/2015/01/ghost-in-shellcode-2015-ctf-writeup-pwn.html•http://www.0xebfe.net/blog/2015/01/24/ghost-in-the-shellcode-2015-pirates-treasure-500-write-up/•https://medium.com/@shanewilton/ghost-in-the-shellcode-2015-blockys-revenge-7074a119115e

56

Page 57: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

Pwn Adventure 2

•http://balidani.blogspot.kr/2014/01/ghost-in-shellcode-2014-pwn-adventure-2.html•http://lockboxx.blogspot.kr/2014/01/ghost-in-shellcode-2014-ctf-writeup.html

57

Page 58: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

Unity 3D

58

Page 59: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

Unity 3D

59

Page 60: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

Unity 3D - 시장 점유율

60

Page 61: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

Unity 3D - 시장 점유율 (모바일)

61

Page 62: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

Unity 3D - 가격 정책

62

Page 63: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

Unity 3D - 에셋 스토어

63

Page 64: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

넌 이미 분해되어 있다

64

Page 65: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

넌 이미 분해되어 있다

•잘 알려진 엔진 구조•잘 알려진 공격 기법•널리 퍼진 분해 툴들

65

Page 66: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

넌 이미 분해되어 있다

•앞서 말한 장점들이 오히려 단점으로 작용!•모바일 게임에 대한 공격이 점점 강해짐•Unity 3D는 그렇게 보안에 신경을 쓰지 않음

66

Page 67: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

쉽게 뚫릴 쏘냐

67

Page 68: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

쉽게 뚫릴 쏘냐

• “클라이언트는 적의 손아귀에”- 게임 개발에서의 클라이언트 보안NDC 2007 / http://www.slideshare.net/innover/revival-20109213

• “스마트폰 해킹과 대응”KGC 2013 / http://www.slideshare.net/ChanhoSong/for-kgc2013

• “Protecting your Android content”UniteKorea2013 / http://www.slideshare.net/williamyang3910/unitekorea2013-protecting-your-android-content-21713675?related=1

68

Page 69: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

쉽게 뚫릴 쏘냐

• “유니티에서 메모리 암호화 Step by Step”NDC 2014 / http://ndcreplay.nexon.com/NDC2014/sessions/NDC2014_0100.html#p=13

• “모바일 게임앱 해킹 공격과 그 방어 전략”NDC 2015 / http://ndcreplay.nexon.com/NDC2015/sessions/NDC2015_0058.html#k%5B%5D=%ED%95%B4%ED%82%B9

69

Page 70: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

더 볼만한 것?

• “라이브중인 2D게임에 시스템 변경 없이 본 애니메이션 도입하기 [던전앤파이터]”NDC14 / http://www.slideshare.net/SeungwonbruceLee/ndc14-2d

• “게임 해킹툴의 변칙적 공격 기법 분석”CodeEngn 2013 / http://www.slideshare.net/CodeEngn/2013-codeengn-conference-09-parksam

•사설 게임 서버를 막기 위한 방법들 NDC 2014 / http://ndcreplay.nexon.com/NDC2014/sessions/NDC2014_0047.html#p=10

70

Page 71: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

결론?

71

Page 72: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

결론?

72

Page 73: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

결론?

•카운터스트라이크는 하프라이프의 모드로 시작•1999년 모드 출시•2000년 밸브에 의해 정식 발매•420만 장 이상 판매 (2008 밸브 자료)

73

Page 74: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

결론?

•배움의 기회•다양한 타협점•뚫는 법을 알면 막는 법도 안다•악의적인 목적으로만 쓸 수 있는게 아니다

74

Page 75: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

QnA

75

Page 76: Incognito 2015 - 게임 리소스 추출과 변조 - 오효근

ICEWALL2015-08-20

감사합니다

76