해킹 대회 리뷰 및 실전 해킹

50
해킹 대회 리뷰 및 실전 해킹 SETUID0

Transcript of 해킹 대회 리뷰 및 실전 해킹

Page 1: 해킹 대회 리뷰 및 실전 해킹

해킹대회리뷰및실전해킹SETUID0

Page 2: 해킹 대회 리뷰 및 실전 해킹

목차

발표자소개

해킹대회리뷰

실전(?) 해킹

QnA

Page 3: 해킹 대회 리뷰 및 실전 해킹

발표자소개

선린인터넷고등학교정보통신과 2015년졸업

Layer7 12기

CodeRed 팀

고려대학교정보보호학부

BoB 2기 Best 10

많은해킹대회우승/입상

취약점제보도조금

Page 4: 해킹 대회 리뷰 및 실전 해킹

해킹대회리뷰

50여개의해킹대회에참가

입상은 20번정도

대회별리뷰

해킹대회문제잘푸는법

Page 5: 해킹 대회 리뷰 및 실전 해킹

CTFTIME

https://ctftime.org/

CTF(해킹대회) 일정사이트

외국대회들과국내에서운영하는국제대회들의일정

팀들의랭킹과문제풀이링크도있음

Page 6: 해킹 대회 리뷰 및 실전 해킹

DEFCON CTF

세계최고권위의해킹대회

미국라스베가스에서본선

4년마다운영진이바뀌며규칙도조금씩변화

기본적으로예선은문제풀이, 본선은공격/방어

본선참가팀에대한지원이호텔방밖에없음

라스베가스왕복항공료…

BoB 지원 + 사비로갔다옴

Page 7: 해킹 대회 리뷰 및 실전 해킹

DEFCON CTF

2013년에운영진이바뀌면서

서버의 root 권한을주지않고제로데이사용도금지됨

채점방식도변경되어제로섬방식으로공격에성공하면방어에실패한팀은점수를빼앗김

원래정시에시작하는경우가없었다는데정확한시간에시작

패킷캡쳐는실시간이아닌 15분전의내용을줌

Page 8: 해킹 대회 리뷰 및 실전 해킹

DEFCON CTF

본선문제는모두시스템이고팀별로주어진서버를공격하고방어

서버바이너리를직접수정해서취약점패치

크기가크고취약점이여러개있는바이너리들이주어짐

공격을하는것도중요하지만방어를제때못하면점수가다털리는것을볼수있음

대회장에음악소리가아주크다

Page 9: 해킹 대회 리뷰 및 실전 해킹

SECUINSIDE CTF

국제대회

2012, 2013, 2014 모두운영진이달랐지만공통점은포너블, 리버싱위주의문제들

작년에지오핫이 1인팀으로우승

시스템해킹공부에많은도움이됨

Page 10: 해킹 대회 리뷰 및 실전 해킹

CODEGATE

국제대회

다양한분야가나왔었지만작년에운영진이바뀌고예선, 본선이모두시스템위주로나옴

재미있는문제들이많다

Page 11: 해킹 대회 리뷰 및 실전 해킹

CODEGATE Junior

CODEGATE 청소년부

해외중고등학생해커들과경쟁을해볼수있음

청소년대회들중에서난이도가가장높음

일반부문제들에서비교적쉬운문제들과청소년용으로아주쉬운문제를만들어서냄

올해에도선린에서우승자가나오기를…

Page 12: 해킹 대회 리뷰 및 실전 해킹

교내해킹대회

랭킹을마지막에공개하는데항상 test 계정이 1등을함

실력좋은고등학생해커들이선린에많이있기때문에우승하기가상당히힘듬

우승은힘들지만입상은쉬운편

졸업생들이문제를내는데누가내느냐에따라문제스타일이달라짐

보통다양한분야로난이도는낮음~중간으로출제

Page 13: 해킹 대회 리뷰 및 실전 해킹

청소년정보보호페스티벌

상당히역사가긴해킹대회

장관상이걸려있음

작년에예선이데프콘이랑겹쳐서…

다양한시스템, 웹, 리버싱, 포렌식, misc 등다양한분야의문제가출제됨

운영진이친절함 (IRC에서답을잘해줌)

Page 14: 해킹 대회 리뷰 및 실전 해킹

중고생정보보호올림피아드

본선장소가국회

센스(게싱?)을많이요구하는문제들

참가자마다문제답이다다름

예선과본선문제유형이비슷함

리버싱위주

시스템문제는아주쉽게나옴

절대로못풀만한문제가하나씩은꼭나옴

Page 15: 해킹 대회 리뷰 및 실전 해킹

청소년화이트해커경진대회

문제수준은높은편

예선본선이나눠져있지않음

운영진이공정성을위해채팅응답을잘하지않음

작년에문제점수를기본 2000점 / 문제를푼사람수로하는방식이사용됨

Page 16: 해킹 대회 리뷰 및 실전 해킹

대한민국화이트햇콘테스트

문제난이도가국내대회들중가장높음

청소년부예선은거의 1~2 문제풀면본선진출

본선시간도그리길지않기때문에청소년부는보통 1문제풀면우승

라운드 2는포렌식, 리버싱문제들이나옴

점수따기가비교적쉬운라운드 2 문제들에집중

Page 17: 해킹 대회 리뷰 및 실전 해킹

KISA 해킹방어대회

침해사고대응위주의문제

1차예선은일반적인대회방식이고2차예선과본선은팀별로주어진서버에서과제해결

사고대응 (악성코드제거, DDoS 방어등)

사고분석 (악성코드유포지, 정보유출시간등)

Page 18: 해킹 대회 리뷰 및 실전 해킹

HolyShield

문제는꽤잘만들지만작년에실제 CCTV를해킹해서문제를내서논란이됨(경찰서에서강제정모?...)

특이한점은입상하면상금과함께로또도줌

Page 19: 해킹 대회 리뷰 및 실전 해킹

HUST Hacking Festival

2013년에지나친게싱문제들과절대로풀수없는문제(해쉬복호화)를내서욕을엄청나게먹고사과문까지올림

2014년에는그래도풀만하게나왔음

시스템문제는나오지않고리버싱문제가많이나옴

Page 20: 해킹 대회 리뷰 및 실전 해킹

Hack.lu CTF

다양한분야의문제들이나오지만특히신기한시스템문제들이인상적

윈도우환경에서작동하는문제

쓰레드사용으로취약점을발생시키는문제

Glibc heap의 fastbin을이용하여공격하는문제

libgcc_s의 unwind 구조를이용해서공격하는문제

이상한 libc를써서그걸잘가져와야하는문제

등등…

Page 21: 해킹 대회 리뷰 및 실전 해킹

CSAW CTF

본선진출이가능한학교들이지정되어있지만예선문제는풀어볼수있음

공부하기좋은쉬운문제들이많이나옴

시스템, 웹, 리버싱등다양한분야로출제되고검색을열심히해서특정정보를찾아내는리콘이라는분야도나옴

Page 22: 해킹 대회 리뷰 및 실전 해킹

SIGINT CTF

시스템문제가많이나오는데샌드박스관련문제를처음으로봐서인상적이었음

시스템문제들은난이도하향을위해ASLR, NX, PIE 등의방어기법들을좀꺼주는경우가많은데무자비하게다켜져있었고 64비트문제도많았음

Page 23: 해킹 대회 리뷰 및 실전 해킹

PlaidCTF

PPP에서운영하는 CTF

PPP가낸것같은문제들이많이나옴(높은난이도)

시스템, 웹, 리버싱, 암호학, 포렌식등다양한분야가나옴

포렌식문제가해킹대회에나오면보통게싱이많지만PCTF 포렌식문제는리버싱과암호학실력을요구함

Page 24: 해킹 대회 리뷰 및 실전 해킹

PHD CTF

예선에시스템문제는나오지않고리버싱과웹, 암호학, misc 위주

웹문제가그냥웹문제가아니라뭔가다른대회에서보기힘든신기한것들이나옴

여성해킹대회 power of xx 우승팀에게본선진출권이주어짐

Page 25: 해킹 대회 리뷰 및 실전 해킹

Ghost in the Shellcode

시스템비중이높지는않지만고난이도의시스템문제가나옴

게임을해킹하는 pwn advanture라는신기한문제가있었는데..

체력이상당히높은데반피를깎으면순식간에체력이차는보스잡기 (integer overflow 버그이용)

맵에숨겨둔보물찾기(코드분석후좌표핵으로해당위치로이동)

AK47을쏘는곰한테서 3분동안생존하기(좌표핵으로어그로가끌리지않는곳으로이동)

Page 26: 해킹 대회 리뷰 및 실전 해킹

Nullcon HackIM

게싱문제가좀많음

포너블문제들은공부용으로풀어볼만함

Page 27: 해킹 대회 리뷰 및 실전 해킹

선린모의해킹대회

Layer7 hacking festival

Layer7에서운영하는대회

재학생은입상할수없지만문제가좋으니까풀어보는것이좋음

게싱이없는시스템, 리버싱문제들이대부분

철저한문제검수(이상한문제내면다시만들어야됨)

Page 28: 해킹 대회 리뷰 및 실전 해킹

해킹대회잘하는법

1. 문제를빨리많이풀면된다.

2. 다른사람이못푸는문제를풀면된다.

연습

최대한많은대회참가 (CTFTIME 참고)

문제풀어보기 (지난대회들, 워게임사이트들)

풀이찾아보기 (write-up)

Page 29: 해킹 대회 리뷰 및 실전 해킹

실전해킹?

Page 30: 해킹 대회 리뷰 및 실전 해킹

실전해킹?

Page 31: 해킹 대회 리뷰 및 실전 해킹

실전해킹

버그헌팅

Page 32: 해킹 대회 리뷰 및 실전 해킹

버그헌팅

프로그램의버그중악용가능한취약점을찾는것

찾은취약점의심각성에따라돈을받을수도있음

KISA 취약점신고포상제, ZDI, iDefence, pwn2own

Page 33: 해킹 대회 리뷰 및 실전 해킹

취약점을찾는방법들

화이트박스 (내부구조를알수있는경우)

- (소스코드오디팅, 리버스엔지니어링등)

블랙박스 (내부구조를알수없는경우)- (퍼징등)

단순한실수들도많고실제프로그램에서취약점을찾는것이항상어렵지는않다

잘돌아가기만하면문제가없는것?

Page 34: 해킹 대회 리뷰 및 실전 해킹

퍼징

가장단순하면서도효과적인방법

취약점을찾으려는프로그램의구조를잘몰라도가능

직접작성한퍼저나 foe, peach 등을사용

Page 35: 해킹 대회 리뷰 및 실전 해킹

소스코드오디팅

소스코드를구할수있는경우

소스코드를분석하여취약점을찾는것

오픈소스소프트웨어들은소스코드다운로드링크가있거나svn, git 등이공개되어있음

Page 36: 해킹 대회 리뷰 및 실전 해킹

리버스엔지니어링

소스코드가없는경우

디스어셈블리와디버깅을통해취약점을찾음

ollyDBG, IDA 사용

Page 37: 해킹 대회 리뷰 및 실전 해킹

제보했던취약점들…

XE XSS

KCP ActiveX RCE

등등…

패치가안된것들이많아서 2개만

Page 38: 해킹 대회 리뷰 및 실전 해킹

XE XSS

XSS 취약점은입력값을다시출력할때발생

이스케이핑처리를항상제대로하는것은어렵다

Page 39: 해킹 대회 리뷰 및 실전 해킹

XE XSS

github에올라와있는XE 소스코드를열심히읽어서찾는다(소스코드오디팅)

https://github.com/xpressengine/xe-core

Page 40: 해킹 대회 리뷰 및 실전 해킹

XE XSS

XE는소스코드가상당히큰데

검색해보면개발자매뉴얼이있어서분석에유용한정보를얻을수있다

Page 41: 해킹 대회 리뷰 및 실전 해킹

XE XSS (14-488)

/classes/context/Context.class.php

Page 42: 해킹 대회 리뷰 및 실전 해킹

XE XSS (14-488)

/classes/context/Context.class.php

Page 43: 해킹 대회 리뷰 및 실전 해킹

XE XSS (14-488)

/classes/display/JSCallbackDisplayHandler.php

Page 44: 해킹 대회 리뷰 및 실전 해킹

XE XSS (14-488)

Page 45: 해킹 대회 리뷰 및 실전 해킹

XSS 취약점을이용한공격

쿠키를가져와서 Session Hijacking?

(XE에서는세션의 IP를확인하기때문에안됨)

잘생각해보면…

해당세션으로할수있는모든작업이가능

XE의경우

관리자계정생성, 웹쉘코드실행, 페이지변조등등

Page 46: 해킹 대회 리뷰 및 실전 해킹

KCP ActiveX RCE

파일쓰기, 라이브러리로딩등이자유롭게가능했음

설계상의문제

comraider로보니정직한함수명…

Page 47: 해킹 대회 리뷰 및 실전 해킹

KCP ActiveX RCE

Page 48: 해킹 대회 리뷰 및 실전 해킹

KCP ActiveX RCE

DLL을만들어서

다운로드후로드시키면원하는코드실행가능

Page 49: 해킹 대회 리뷰 및 실전 해킹

QnA

Page 50: 해킹 대회 리뷰 및 실전 해킹

끝감사합니다