padocon 2007 ctf online

33
PADOCON 2007 PADOCON 2007 CTF Online CTF Online -Lunatic-

Upload: azalia-myers

Post on 03-Jan-2016

69 views

Category:

Documents


0 download

DESCRIPTION

PADOCON 2007 CTF Online. -Lunatic-. Stage 1. Bingo. 문제 1 : Web(Cookie 가 보여졌다가 사라지는 문제 ) 그림이 뜨고 alert 창을 확인하면 실패하였습니다 . 다시 확인하세요 라는 문구가 뜬다 . 문제 2 : For fun (Steganography) 휴대폰 음을 통해 패스워드를 유추하는 문제 문제 3 : Web(Admin2007) Admin 으로 로그인 할 때 패스워드를 묻는 문제 문제 4 : Reverse( 핸드 리버싱 ) - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: PADOCON 2007 CTF Online

PADOCON 2007PADOCON 2007CTF OnlineCTF Online

-Lunatic-

Page 2: PADOCON 2007 CTF Online

2

Stage 1. BingoStage 1. Bingo

문제 1 : Web(Cookie 가 보여졌다가 사라지는 문제 )그림이 뜨고 alert 창을 확인하면 실패하였습니다 . 다시 확인하세요

라는 문구가 뜬다 .

문제 2 : For fun (Steganography) 휴대폰 음을 통해 패스워드를 유추하는 문제

문제 3 : Web(Admin2007)Admin 으로 로그인 할 때 패스워드를 묻는 문제

문제 4 : Reverse( 핸드 리버싱 )어셈코드를 보고 패스워드를 유추해내는 문제

문제 5 : Web(Steganography + unescape)여자 그림이 하나 뜨고 , 밑에 인증 코드를 넣는 곳이 하나 있음 .

Page 3: PADOCON 2007 CTF Online

3

Stage 1. BingoStage 1. Bingo

문제 6 : Web(Ajax)제시한 URL 로 들어가면 익스플로러가 죽어버린다 .

문제 7 : Reverse( 항구 문제 )웹페이지에서 항구 그림이 제시되어있고 여기서 주어진 힌트를 따라

문제를 해결 .

문제 8 : For fun( 암호대화 )대화가 암호화 되어있다 . 패스워드가 숨어있으니 대화를 확인

문제 9 : For fun(GNU)웹페이지에 GNU 마크 그림이 하나 제시 되며 , 암호화 된 키를 풀이해야

한다 .

문제 10 : Web( 스파이더맨 )스파이더맨이 술을 마시는 패러디 그림이 제시되어있다 .

Page 4: PADOCON 2007 CTF Online

4

Stage 1. BingoStage 1. Bingo

문제 11 : Web( 아이엠샘 )아이엠샘 포스터가 제시되어 있고 밑에는 암호화 된 숫자및 문자가

나열되어 있다 .문제 12 : Reverse( 가장 어려웠던 문제 )

MFC 파일이며 , 꽃 모양의 아이콘으로 되어있는 프로그램을 리버싱해서 답을 유추하는 문제 .문제 13 : Web( 코드 제시 )

C 형태의 코드가 몇줄 제시 되어있는 문제문제 14 : For fun( 암호화 )

파일이 하나 다운받아서 (CTF14.exe) 암호로 된 문장을 만드는 문장을 찾아야 함 .문제 15 : Web(Cookie 변조 )

웹페이지에 사각형이 8 개 색깔별로 제시되어 있다 .문제 16 : Bonus( 추가 셔플 횟수 )

Page 5: PADOCON 2007 CTF Online

5 5

Level1Level1

문제 1 : Web(Cookie 가 보여졌다가 사라지는 문제 )그림이 뜨고 alert 창을 확인하면 실패하였습니다 . 다시 확하세요 라는 문구가 뜬다 .

페이지에 접속하면은 key 는 제빨리 사라집니다라는 글과 함께 alert 창이 뜸 .

Achilles 란 프로그램을 이용하여 확인해보니 alert 창을 누르면 keysniff.php 로 넘어감 .

padowave=key 라는 쿠키를 생성한뒤 gone.php 로 넘어감

Page 6: PADOCON 2007 CTF Online

6 6

Level1Level1

Gone.php 에서 Set-Cookie: padowave=deleted; expires=Sat, 25 Feb 2006 14:58:17 GMT; 이라고 padowave 를 지우는것을 확인하고 padowave=key 라고 쿠키를 다시 세팅하고 페이지는 result.php 로 넘어감 .

“<img src='pado.jpg'><br><br>Bravo! 패스워드는 'padowaveshocking' 입니다 .” 라는 메시지와 함께 정답이 출력됩니다 .

Page 7: PADOCON 2007 CTF Online

7 7

Level1Level1

Page 8: PADOCON 2007 CTF Online

8

Level2Level2

문제 2 : For fun (Steganography) 휴대폰 음을 통해 패스워드를 유추하는 문제

페이지에 접속하면 전화기 그림과 Dials.wav 라는 파일존재함 .

Dials.wav 재생시 다이얼음이 녹음되어있다 .

DTMF Decoder 라는 프로그램을 이용하여 번호 추출

프로그램을 통해 알아낸 번호와 전화기 그림을 이용하여 패스워드 확인

Page 9: PADOCON 2007 CTF Online

9

Level2Level2

(DTMF Decoder 라는 프로그램을 이용 하여 어떤 숫자가 눌렸는지 알아내고있다 .)

Page 10: PADOCON 2007 CTF Online

10

Level3Level3

문제 3 : Web(Admin2007) Admin 으로 로그인 할 때 패스워드를 묻는 문제

쿠키의 ENCID 값을 Admin2007 을 암호화한 것으로 셋

회원정보에서 비밀번호를 얻을 수 있다 .

암호화된 규칙을 파악하여 비밀번호를 알아 낼 수 있다 .

DAE00B20706150609000A11B20A1BBB055E5.. = EoRkfwhgdmsQksWn29724791 = 떄깔좋은빤쭈 29724791

Page 11: PADOCON 2007 CTF Online

11

Level4Level4

문제 4 : Reverse( 핸드 리버싱 ) 어셈코드를 보고 패스워드를 유추해내는 문제

페이지에 접속하면 디스어셈된 코드가 나와있다 .

calculation 이라는 함수를 자세히 살펴보면 패스워드를 알아낼수있다 .

0x4d,0x69,0x6c,0x6d,0x79,0x77,0x61,0x79를 아스키로 변환하면 Milkyway 라는 문자열이 나온다 .

Page 12: PADOCON 2007 CTF Online

12

Level4Level4

(calculation 의 디스어셈코드 )

Page 13: PADOCON 2007 CTF Online

13

Level5Level5

문제 5 : Web(Steganography + unescape) 여자 그림이 하나 뜨고 , 밑에 인증 코드를 넣는 곳이

하나 있음 .

Escape 된 Javascript 소스를 unescape 하면인증코드를 알아내고 들어가면 여러가지 문자들과함께Findme.bmp 라는 그림파일이 뜬다 .

Unescape 된 자바스크립트를 살펴보면#P%A!D@O$R$I!D%A 라는 문자열을 만들고있다 .

S-tool 이라는 툴을 이용하면 Findme.bmp 안에서 Password.txt 파일을 찾을수있다 .

Page 14: PADOCON 2007 CTF Online

14

Level5Level5

(S-tool 을 이용하여 Password.txt 파일 추출 )

Page 15: PADOCON 2007 CTF Online

15

Level6Level6

문제 6 : Web(Ajax) 제시한 URL 로 들어가면 익스플로러가 죽어버린다 .

Ajax 를 이용해서 wanted.php 를 받아온다 .

하지만 무한루프로 함수가 실행되기때문에 익스플로러가 버벅인다 .( 실제로 다운되진 않았다 .)

wanted.php 의 안에는 패스워드가 담겨있다

Page 16: PADOCON 2007 CTF Online

16

Level7Level7

문제 7 : Reverse( 항구 문제 ) 웹페이지에서 항구 그림이 제시되어있고 여기서 주어진 힌트를 따라

문제를 해결 .

웹페이지에 접속하면 항구그림과 뒤에 소스코드의 일부가 캡쳐된 그림이 겹쳐있다 .

제시된 아이피와 포트로 접속하면 몇 개의 주소가 출력되며 , printf함수의 인자를 조작해서 패스워드부분의주소로 변조해야 한다 .

하지만 입력받는 버퍼보다 패스워드가 저장되있는변수의 주소값이 낮은곳에있다 .

힌트로 제시된 소스코드를 보면 ‘ !’ 를 이용하여 낮은주소에 접근이가능하다 .

Page 17: PADOCON 2007 CTF Online

17

Level8Level8

문제 8 : For fun( 암호대화 ) 대화가 암호화 되어있다 . 패스워드가 숨어있으니

대화를 확인

대화의 흐름을 보고 나올 말들을 생각하며문자 하나하나 일대일로 대칭시켜보며 대칭표작성함 .

해독된 대화를보면 딸의 이름이 패스워드이며딸이 이름이 eliane 라고 말하는걸 볼수있다 .

Page 18: PADOCON 2007 CTF Online

18

Level9Level9

문제 9 : For fun(GNU) 웹페이지에 GNU 마크 그림이 하나 제시 되며 , 암호화

된 키를 풀이해야 한다 .

웹페이지에서 PadoriEncoder.exe 를 다운받는다 .

몇번의 테스트 결과 평문의길이 = 키의길이 = 암호화된 키의길이 라는걸 알수있다 .

힌트를 보고 평문은 gnuisnotunix 이라고 추측 .

간단한 프로그램을 작성하여 패스워드 획득 .

Page 19: PADOCON 2007 CTF Online

19

Level9Level9

=

Page 20: PADOCON 2007 CTF Online

20

Level10Level10

문제 10 : Web( 스파이더맨 ) 스파이더맨이 술을 마시는 패러디 그림이 제시되어있다 .

e35eb447217f4919ce040be5251517f62a85c0743d286e20ed4f05feeb25a083bfa0e2b6f1134e36360a1261eee7eb9c

페이지에 접속하면 위와같은 해쉬스트링 3 개가 있다 .

각각 s3xy pad0 c5n 이라는 값이 나온다 .

Page 21: PADOCON 2007 CTF Online

21

Level11Level11

문제 11 : Web( 아이엠샘 ) 아이엠샘 포스터가 제시되어 있고 밑에는 암호화 된

숫자및 문자가 나열되어 있다 .

padocon:1006:3A2031B32E4880E0AAD3B435B51404EE:C75B184F1A53D557945F640A370AE3F8:::아이엠샘이라는 문제제목과 위의 문자열을 보고SAM 파일 크랙 문제라고 추측

l0phtcrack 이라는 SAM 용 Crack 프로그램을 사용하면 ,padocon:"OKAY":"okay":3A2031B32E4880E0AAD3B435B51404EE:C75B184F1A53D557945F640A370AE3F8 라는 결과를 얻을 수 있다 .

Page 22: PADOCON 2007 CTF Online

22

Level12Level12

문제 12 : Reverse( 가장 어려웠던 문제 ) MFC 파일이며 , 꽃 모양의 아이콘으로 되어있는

프로그램을 리버싱해서 답을 유추하는 문제 .

하드디스크의 볼륨이름을 “ PADORIFIGHT” 로 해야함 .

.data 에 NAME is 18char 을 보고 , 시리얼 부분과 NAME부분을 다음 부분으로 추정

Serial: foB-r$; Name : !!SeC iRst!! Serial 에 맞는 Name 값을 찾으면 된다 .

Page 23: PADOCON 2007 CTF Online

23

Level13Level13

문제 13 : Web( 코드 제시 ) C 형태의 코드가 몇줄 제시 되어있는 문제 .

간단히 비트 연산을 하는 코드가 존재했는데 , 실제 그 값을계산기를 이용하여 16 진수로 변경하여 보니 ,

0x6C 0x6F 0x76 0x65 였다 . 문자열로 표시해보면 love 라는 패스워드 획득 .

Page 24: PADOCON 2007 CTF Online

24

Level14Level14

문제 14 : For fun( 암호화 )

값을 삽입해보면서 각 자리의 수치변화를 알아본다 .

변화량에 맞추어 적절한 알파벳을 삽입하여 정답을 찾아낸다 .

Page 25: PADOCON 2007 CTF Online

25

Level15Level15

문제 15 : Web(Cookie 변조 ) 웹페이지에 사각형이 8 개 색깔별로 제시되어 있다 .

페이지에 접속하면 아래와 같은 그림이 존재한다 .

4 개의 사각형은 정지해있고 나머지 4 개의 사각형은랜덤하게 움직인다 .

쿠키중 SESSIONID 의 값에 따라 나머지4 개의 사각형의 위치가 바뀌었다 .

Page 26: PADOCON 2007 CTF Online

26

Level15Level15

SESSIONID 에 들어가는값은 각각 사각형의 좌표였고 순서는 분홍색 노란색 파란색 초록색 이다

순서대로 x,y좌표를 16 진수로 표현한뒤에 base64 로 인코딩 해야 한다

사각형들의 좌표는 각각(25,3e) (79,22) (19,8a) (9c,81)

253e7922198a9c81 를 인코딩한 MjUzZTc5MjIxOThhOWM4MQ==라는값을 SESSIONID 에 넣은뒤 페이지를 요청하면패스워드를 획득할수 있다 .

Page 27: PADOCON 2007 CTF Online

27

Level16Level16

문제 16 : Bonus( 추가 셔플 횟수 )

OverTheRainbow 라는 답이 나와있다 .

Page 28: PADOCON 2007 CTF Online

28

Stage 2. Step by StepStage 2. Step by Step

문제 1 : Reverse(CTF.exe)MFC 프로그램을 실행하면 CTF2007 이라는 문구가 검정색 바탕의 흰

글씨로 나타나며 밑에 submit 이 보임

문제 2 : Web(Ajax)웹페이지에 소설같은 글이 제시 되어 있다 .

문제 3 : Return to the Bingo빙고 문제중 3 문제에 숨겨져있는 코드를 확인

문제 4 : Web홈페이지에서 다운받을 수 있는 파일을 참조 하면서 깨진 화면의

웹페이지가 주어진다 .

문제 5 : Reverse(Windows)파일을 다운받아서 윈도우 XP 상에서 리버싱

Page 29: PADOCON 2007 CTF Online

29

Level1Level1

문제 1 : Reverse(CTF.exe)MFC 프로그램을 실행하면 CTF2007 이라는 문구가 검정색 바탕의 흰 글씨로 나타나며 밑에 submit 이 보임

0x4017c0부터 사용자가 입력한 키가 올바른지 비교

위 루틴의 리턴값은 0x4354 여야 올바른 결과로 판별 됨으로 0x4354 를 만족 시키도록 값을 조정하여 대입 하여 주면 된다 .

위 조건을 만족 시키는 키로 진행을 하면 서버로 부터 패스워드가 있는 파일주소를 복화화 하여 읽어온다 .

Page 30: PADOCON 2007 CTF Online

30

Level2Level2

문제 2 : Web(Ajax) 웹페이지에 소설같은 글이 제시 되어 있다 .

소스를 보면 js 파일과 소설같은글 그리고 주석처리된부분이 있다 .Javascript 파일을 분석해보면 Ajax 라는걸 이용하여Background 를 통해 1초에 한번씩 ace.php 파일의 내용을 출력해준다 .ace.php 파일이 출력되는곳의 주석처리를 제거하면시간이 표시된다 .약 1분주기로 시간밑에 문자가 출력되었고 그 문자들을 모아보면패스워드를 획득할수있다 .

Page 31: PADOCON 2007 CTF Online

31

Level3Level3

문제 3 : Return to the Bingo 빙고 문제중 3 문제에 숨겨져있는 코드를 확인

Stage.1 인 빙고판에서 풀었던 문제를 다시 클릭하면그중 3 개의 문제에서 padocon / 2007 / coming soon이라는 문자열들을 찾을수있으며그 문자열들을 조합하면 패스워드가 된다 .

Page 32: PADOCON 2007 CTF Online

32

Level4Level4

문제 4 : Web 홈페이지에서 다운받을 수 있는 파일을 참조 하면서 깨진

화면의 웹페이지가 주어진다 .

깨진 문자열의 맨 처음을보면 ELF 를 확인할수있다 .파일을 다운받은뒤 리눅스상에서 실행해보면

7899 번 포트가 열리며 가상 웹서버가 실행된다 .파일을 분석해보면 target 함수에서 passwd 라는파일을 읽어온다 .깨진문자열이 뜨는 파일과 같은경로의 passwd 파일을 요청하면패스워드가 담긴 페이지를 찾을수있다 .

Page 33: PADOCON 2007 CTF Online

33

Level5Level5

문제 5 : Reverse(Windows)파일을 다운받아서 윈도우 XP 상에서 리버싱

SOFTWARE\Microsoft\Windows\Current Version\policies\system 에 legalnoticecaption 의 값으로는 “ I love binish ” 를 , leganoticetext 의 값으로는 “ I want binish ” 를 셋하여 준 후 , 프로그램을 진행시키면 올바른 키를 얻을 수 있다 .