1. Copyright ⓒ 2016 KISEC All Rights Reserved
제 13회 해킹캠프
있는거라도 잘 쓰자
2015.02.27
2. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
X㈜ 한국정보보호교육센터 정보보호전문가과정
교육목표/목적
직
무
별
장기과정 교육 프레임워크
운영체제 보안 기초
(윈도우 / 리눅스)
네트워크 보안
기초
웹 해킹 과정
(웹 취약점 분석)
시스템 해킹 과정
(운영체제 보안 심화)
네트워크 해킹 과정
(네트워크 보안 심화)
악성코드 제작/분석
리버스
엔지니어링
정보보호컨설팅 과정
(정보보호관리체계)
보안관제
/ 보안장비운용 실무
디지털 포렌식
모의해킹 전문인력 양성
정보보호전문인력 양성
보안관제전문인력 양성 / 보안분석 전문인력 양성
정보보호컨설턴트 양성 / 침해사고대응 전문인력 양성 / 사이버수사 전문인력 양성
심화Project
3. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
X㈜ 한국정보보호교육센터 정보보호전문가과정
역사와 전통의 정보보호 전문교육 업체!
5년째 이어온 정보보호 전문교육 업체로서 다양한 정보보호
교육과정 설계 및 운영 노하우와 보안전문 연구원 및 강사진,
기획·설계전문인력 보유한 자타공인 제1의
정보보호전문교육센터입니다.
산학협동으로 설립된 정보보호전문교육센터!
보안전문 4개업체(㈜안랩, STG시큐리티, 비씨큐어, NDS)와
고려대 정보보호연구원, 성균관대 정보기술연구 센터가 공동
설립한 정보보호전문교육센터로 실무중심의 전문교육과
충실한 이론교육이 뒷받침 되어 최상의 교육서비스를
제공합니다.
Strength 1 Strength 2
차별화된 Management 시스템!
독보적인 강사관리시스템과 수강생관리시스템, 연구이
력관리시스템을 통해 보다 프로페셔널한 강사진과 양질의
컨텐츠를 제공함으로써 수강생으로부터 최상의 만족을 이끌어
냅니다.
60기수 이상 배출된 정보보호전문가과정!
2001년 06월, 국내/외 최초 개강한 장기정보보호전문가
과정을 통해 약 1,000여명의 전문인력이 배출되었으며,
선후배 기수간의 긴밀한 네트워크로 빠르고 다양한
정보공유가 가능합니다.
Strength 3 Strength 4
4. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
X
Security : Play the Role
I.D.T.C
모의해킹, 리버싱, 포렌식 등 정보보안의
다양한 분야의 연계성을 고려한 커리큘럼
개별 과정에서의 기승전결
ACT
교보재 활용, 직접 실습,
문제 기반 학습(PBL, Problem
based Learning)
SUMMARY
플립러닝(Filpped Learning) 도입하여 선행
학습 후 토론식 수업 형태를 채택
QUEST
게임형 학습(과제) (Gaming Learning)
미션 수행형 학습 (Mission Driven Learning)
ATTRACTIVE CASE
현실적인 시나리오를 기반으로
다양한 관점을 해석하는 능력 배양
PERFORMANC EVALUATION
교수/학습(과제) 과정에 대한 체계적 수행 평가
전체 교육 과정을 하나의 시나리오(ATTRACTIVE CASE)
로 진행
각 과목(ACT)별로 학습자에게 하나의 역할(ROLE)을 부
여
수 업 전 과 목 별 시 나 리 오 와 역 할 을 예 습 자 료
(SUMMARY)와 함께 사전 교부
다양한 수평/수직 과제(QUEST)를 통한 자습 방향 유도
과 제 수 행 중 학 습 과 정 에 대 한 수 행 평 가
(PERFORMANC EVALUATION) 진행 및 수치화
㈜ 한국정보보호교육센터 정보보호전문가과정
5. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
X㈜ 한국정보보호교육센터 정보보호전문가과정
6. Copyright ⓒ 2016 KISEC All Rights Reserved
BEST
EARNEST
VISION
Seminar 오픈 소스를 활용한 정보보안
오픈 소스란?
Cuckoo Sandbox
Hidden-Tear
SPToolkit
Mobile Security Framework
CVE-Search
7. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
X
집필 활동
칼리 리눅스와 백트랙을 활용한 모의해킹 공저
파이썬 오픈소스 도구를 활용한 악성코드 분석 공저
(가제) DBD 공격과 자바스크립트 난독화로 배우는
해킹의 기술 집필 계약
소개
이름
최우석 선임연구원
소속
㈜한국정보보호교육센터 f-NGS 연구소 랩장
fngs.tistory.com 운영자
www.facebook.com/startupkisec 페이지 운영자
블로그 활동
www.hakawati.co.kr 운영자
연구 활동
정보보안과 관련된 오픈 소스 도구 구축 및 기능 분석
드라이브-바이 다운로드 분석 및 연구
침투테스트 프로세스 연구
대외 활동
Let's Security Festival ‘드라이브-바이 다운로드’ 발표
탐라 SUM 페스티발 ‘사물인터넷과 보안’ 발표
코드엔진 11 ‘자바스크립트 난독화 너네 뭐니?’ 발표
사이버침해대응지원센터 자문위원단 참여
SUA 정보보안 컨퍼런스 ‘워터링홀 공격 구현’ 발표
코드엔진 클로즈세미나 03 발표
Seminar. 오픈 소스를 활용한 정보보안
8. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
X
개요
오픈 소스(Open Source)
정의
•소프트웨어 또는 하드웨어의 제작자의 권리를 지키면서 원시 코드를 누구나 열람할 수 있도록 한 소프트웨어 또는 오픈 소스
라이선스를 준하는 모든 통칭을 일컫는다. – 위키피디아
•최근에는 소프트웨어 및 하드웨어 뿐만 아니라 콘텐츠도 가능 (ex, 오픈 소스 북)
장점
•대부분 무료
•소스 코드를 제공받기에 개선 및 융합을 통해 새로운 방향으로 응용 가능
•특정 기업 및 개인과 독립적이어서 직접 구축하여 테스트 가능
•제약사항만 잘 지키면 다양한 형태로 활용하고 공개 가능
단점
•오픈 소스 도구를 사용하기 위해서 연구와 학습이 필요
•디자인적인 설계의 부재로 오픈 소스 도구의 서비스를 제공받는 사용자에 혼란을 야기 시킴
•도구 운영에 있어 문제 발생시 스스로 해결하는 상황이 발생 가능
•무분별한 개발과 배포로 보안적인 문제가 발생 가능
•충분한 제약사항 인지 없이는 운영 시 문제가 발생할 수 있음
Seminar. 오픈 소스를 활용한 정보보안
오픈 소스는 누구에게나 공개된 좋은 자원이다.
9. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
XSeminar. 오픈 소스를 활용한 정보보안
개요
오픈 소스 라이선스
오픈 소스 소프트웨어를 사용하는데 필요한 의무사항을 명시
필수적 의무사항
•저작권 관련 문구 유지
- 표현된 결과물에 대한 권리를 부여하는 행위로 대부분 소스 코드 상단에 개발자 정보를 기록
- 이 문구를 삭제하면 안되며, 오픈 소스를 수정할 경우 수정한 개발자의 정보를 추가
•오픈 소스 이름 중복 방지
- 사용하는 오픈 소스의 도구 이름이나 서비스 이름이 중복되면 안됨
•서로 다른 라이선스 조합 확인
- 서로 다른 오픈 소스에서 서로 다른 라이선스를 사용할 경우 상충하는 라이선스가 호환되는지 확인
선택적 의무사항(라이선스에 따라 다름)
•사용 여부 명시
- 어떠한 오픈 소스를 사용하는지 언급
•소스 코드 필수 공개
- 특히 GPL 라이선스의 경우 수정하거나 추가한 경우 해당 부분의 소스 코드를 공개
•특허
- 특허권자의 허락이 필요
오픈 소스는 누구에게나 공개된 좋은 자원이다.
10. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
XSeminar. 오픈 소스를 활용한 정보보안
개요
오픈 소스 라이선스 – 비교
오픈 소스는 누구에게나 공개된 좋은 자원이다.
ASL CDDL GPL LGPL Ms-PL Ms-RL MPL BSD MIT
바이너리 또는 소스와 함께 라이선스를 배포해야 하는가? ● ● ● ● ● ● ● ● ●
양도를 위해 배포자 이름을 사용할 수 없는가? ● ● ● ●
변경된 파일에 대한 언급이 필요한가? ● ● ● ● ●
어떠한 변경도 소스 형태로 배포되어야 하는가? ● ● ● ●
일반적이지 않지만, 원하는 경우 보증을 제공할 수 있는가? ●
명확한 공급을 위해 보증/보장/코드전송 등을 변경할 수 있는가? ● ●
파생된 작업은 동일한 라이선스로 유지해야 하는가? ● ●
커맨드 라인에서 실행할 때 라이선스를 표시해야 하는가? ●
파생되지 않은 작업은 다른 라이선스를 가질 수 있는가? ● ● ●
특정 나라에서 특허로 반박될 경우 그 나라를 제외할 수 있는가? ● ●
규제 때문에 벗어난 무언가를 설명해야 하는가? ●
11. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
XSeminar. 오픈 소스를 활용한 정보보안
오픈 소스는 누구에게나 공개된 좋은 자원이다.
12. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
X
개요
오픈 소스 생태계
Seminar. 오픈 소스를 활용한 정보보안
오픈 소스는 누구에게나 공개된 좋은 자원이다.
제작 수준
무언가를 만들고, 만들어낸 산출물을 공유하는 사용자로
흔히 소스 변경권한을 가지고 있음
• Commiters
판독 수준
오픈 소스의 내부 요소들을 살펴보고 사용하는 방법과
동작하는 원리를 이해하며, 사용하기 위해 어떤 환경이
필요하며 어떤 제한적인 요소가 있는지 판독할 수 있는
사용자
물론 오픈 소스를 자신의 환경에 맞게 수정할 수 있는 사
용자
• Contributors
무료
“지원” 관계
“확장” 관계
참가 수준
도구를 사용하고 문제를 질문하거나 의견을 피력하는 사
용자
• Configurer, User, End User
13. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
X
개요
정보보안과 오픈 소스
정보보안에서도 다양한 오픈 소스가 존재
공격을 위한 오픈 소스 vs 방어를 위한 오픈 소스
Seminar. 오픈 소스를 활용한 정보보안
오픈 소스는 누구에게나 공개된 좋은 자원이다.
공격에 사용되는 오픈 소스 도구 방어에 사용되는 오픈 소스 도구
14. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
X
Cuckoo Sandbox
악성코드 분석을 자동화하기 위해 만들어진 오픈 소스 도구
사용하는 소프트웨어: python, yara, volatility, tcpdump, virtualbox, mongodb, django, distorm, snort, suricata 등
도구: https://github.com/cuckoosandbox/cuckoo
라이선스: The GNU General Public License v3.0
Seminar. 오픈 소스를 활용한 정보보안
악성코드 자동분석의 선두주자로 샌드박스 기술을 이용하여 악성코드를 안전하게 분석하는 도구다.
15. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
X
Cuckoo Sandbox
최근 2.0 RC1 버전으로 공식 릴리즈
64비트 윈도우 응용프로그램과 샘플 모니터링
맥 OSX 분석
리눅스 분석 (ARM, MIPS 확장은 아직 무리가 있음)
안드로이드 분석
Snort, Suricata, Moloch와 같은 PCAP 분석 도구를 구성하고 통합
TLS/HTTPS 트래픽 분석
VPN 지원 및 네트워크 라우팅 분석
악성 행위를 구분하고 정의하기 위한 300가지 넘는 시그니쳐 추가 지원
볼라티리티(Volatility) 베이스라인 캡쳐를 지원
프로세스 메모리 덤프에서 URL 추출
리터럴 무브먼트 지원을 위한 고민 (여러대의 가상머신을 사용)
많은 버그를 수정하고 기능을 개선
Seminar. 오픈 소스를 활용한 정보보안
악성코드 자동분석의 선두주자로 샌드박스 기술을 이용하여 악성코드를 안전하게 분석하는 도구다.
16. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
X
Cuckoo Droid (Cuckoo Sandbox v1.2)
Seminar. 오픈 소스를 활용한 정보보안
악성코드 자동분석의 선두주자로 샌드박스 기술을 이용하여 악성코드를 안전하게 분석하는 도구다.
17. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
X
hidden-tear
교육을 위해 제작된 오픈 소스 랜섬웨어
사용하는 소프트웨어: Visual Studio, C#, Apache, PHP 등
도구: https://github.com/utkusen/hidden-tear (배포 중단)
라이선스: (아마도) The GNU General Public License v3.0
Seminar. 오픈 소스를 활용한 정보보안
랜섬웨어의 동작원리를 이해시키기 위한 목적으로 오픈 소스로 랜섬웨어가 제작되었다. 하지만 공격자
가 코드를 수정하여 악성코드로 사용함으로써 프로젝트는 종료되었다.
18. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
X
hidden-tear
최근 소스코드 공개 비활성화
실제 악성코드로 사용됨
제작자는 이 프로젝트를
비활성화
교 육 이 나 연 구 목 적 으 로
소 스 코 드 가 필 요 하 다 면
utkusen@protonmail.ch
로 요구하도록 변경
Seminar. 오픈 소스를 활용한 정보보안
랜섬웨어의 동작원리를 이해시키기 위한 목적으로 오픈 소스로 랜섬웨어가 제작되었다. 하지만 공격자
가 코드를 수정하여 악성코드로 사용함으로써 프로젝트는 종료되었다.
19. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
X
SPToolkit
피싱 테스트를 위한 도구
사용하는 소프트웨어: Apache, MySQL, PHP, Postfix, mailutils, github 등
도구: https://github.com/sptoolkit/sptoolkit
라이선스: The GNU General Public License v3.0
Seminar. 오픈 소스를 활용한 정보보안
피싱 테스트를 위해 만들어진 도구로 사용자가 피싱 메일을 클릭한 시간, 사용자의 아이피, 사용자의 운
영체제, 브라우저, 자바, 플래시 플레이어 버전 정보를 수집할 수 있다.
20. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
X
Mobile Security Framework
모바일 악성코드 분석을 위한 오픈 소스
사용하는 소프트웨어: virtualbox, git, java 1.7 SDK 등
도구: https://github.com/ajinabraham/Mobile-Security-Framework-MobSF
라이선스: The GNU General Public License v3.0
Seminar. 오픈 소스를 활용한 정보보안
안드로이드 악성코드를 분석하기 위한 오픈 소스 도구로, 정적 / 동적 분석을 지원한다. 아이폰 악성코
드도 분석 가능한 것으로 알려져있다.
21. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
X
CVE-Search
CVE 통합 관리 운영 오픈 소스
사용하는 소프트웨어: python3, MongoDB, Redis Server 등
도구: https://github.com/cve-search/cve-search
라이선스: Modified BSD license
Seminar. 오픈 소스를 활용한 정보보안
취약점의 고유 번호를 부여하기 위해 Mitre에서 만든 CVE를 사용하며, 다양한 기관과 업체에서 관련된
정보들을 생성하고 관리한다. 이 도구는 여러 곳에서 데이터를 가져와 데이터베이스화 한다.
22. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
X
CVE-Search
The MongoDB database is called cvedb and there are 11 collections:
cves (Common Vulnerabilities and Exposure items) - source NVD NIST
cpe (Common Platform Enumeration items) - source NVD NIST
vendor (Official Vendor Statements on CVE Vulnerabilities) - source NVD NIST
cwe (Common Weakness Enumeration items) - source NVD NIST
capec (Common Attack Pattern Enumeration and Classification) - source NVD NIST
ranking (ranking rules per group) - local cve-search
d2sec (Exploitation reference from D2 Elliot Web Exploitation Framework) - source d2sec.com
vFeed (cross-references to CVE ids (e.g. OVAL, OpenVAS, ...)) - source vFeed
ms - (Microsoft Bulletin (Security Vulnerabilities and Bulletin)) - source Microsoft
exploitdb (Offensive Security - Exploit Database) - source offensive security
info (metadata of each collection like last-modified) - local cve-search
The Redis database has 3 databases:
10: The cpe (Common Platform Enumeration) cache - source MongoDB cvedb collection cpe
11: The notification database - source cve-search
12: The NIST reference databased is a cross-reference database to CVE ids against various vendors ID - source NVD
NIST
Seminar. 오픈 소스를 활용한 정보보안
취약점의 고유 번호를 부여하기 위해 Mitre에서 만든 CVE를 사용하며, 다양한 기관과 업체에서 관련된
정보들을 생성하고 관리한다. 이 도구는 여러 곳에서 데이터를 가져와 데이터베이스화 한다.
23. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
X
CVE-Search
Seminar. 오픈 소스를 활용한 정보보안
취약점의 고유 번호를 부여하기 위해 Mitre에서 만든 CVE를 사용하며, 다양한 기관과 업체에서 관련된
정보들을 생성하고 관리한다. 이 도구는 여러 곳에서 데이터를 가져와 데이터베이스화 한다.
24. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
X
TODO
Seminar. 오픈 소스를 활용한 정보보안
추가로 연구하고 싶은 오픈 소스 도구들도 존재한다.
25. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
X
Reference
Contents reference
이철남, 권순선, 최민석 (2009), 오픈소스 소프트웨어 라이선스 가이드,
https://wiki.kldp.org/wiki.php/OpenSourceLicenseGuide#s-1
Petronio Candido (2015), Licenças de software livre, http://www.slideshare.net/petroniocandido/licenas-de-
software-livre-49281587
Dominique De Vito (2009), The Kaizen method is close to the open source way,
http://www.jroller.com/dmdevito/entry/the_kaizen_method_is_close
Cuckoo Foundation (2016), Cuckoo Sandbox 2.0 RC1, https://cuckoosandbox.org/
Idan Revivo, Ofer Caspi (2015), Cuckoo Droid, https://github.com/idanr1986/cuckoo-droid
utku sen (2015), hidden-tear, https://github.com/utkusen/hidden-tear/
문가용 (2016. 1. 15). 교육용으로 배포했더니 괴물로 둔갑한 소스코드, 보안뉴스,
http://www.boannews.com/media/view.asp?idx=49242
문가용(2016. 1. 19). 무기가 된 교육용 랜섬웨어, 원작자의 손에 파훼돼, 보안뉴스,
http://www.boannews.com/media/view.asp?idx=49296
Samuel Tarling (2013), SPToolKit, https://github.com/sptoolkit/sptoolkit
Ajin Abraham (2015), MobSF, https://github.com/ajinabraham/Mobile-Security-Framework-MobSF
Pieter-Jan Moreels (2015), CVE-Search, https://github.com/cve-search/cve-search
Endgame (2013), Inc, BinaryPig, https://github.com/endgameinc/binarypig
Omri Herscovici (2015), CapTipper, https://github.com/omriher/CapTipper
Docker Inc (2016), docker, https://www.docker.com/
Remnux.org (2016), remnux v6.0, https://remnux.org/
Seminar. 오픈 소스를 활용한 정보보안
26. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
X
Reference
Images reference
Open Source Title: http://itak.iaitam.org/author/barbara-rembiesa/
LGPL: https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License
Apache Logo: http://www.apache.org/
GPL: https://commons.wikimedia.org/wiki/File:GPLv3_Logo.svg
Mozilla Public License: http://www.computerweekly.com/blogs/open-source-insider/2012/01/mozilla-overhauls-
for-version-20-of-public-licence.html
CDDL: http://www.cddl.org/
Open Source Landscape: http://ianfe.blogspot.kr/2014/03/open-source-landscape-v2-including-more.html
Android: http://www.eclipse.org/ecd/
Mozilla: https://en.wikipedia.org/wiki/Mozilla
Apache: https://en.wikipedia.org/wiki/Apache_Software_Foundation
Linux: https://en.wikipedia.org/wiki/Linux
Spring Framework: https://www.youtube.com/user/SpringSourceDev
Jquery: https://github.com/jquery
Opensource: https://opensource.org/
Github: https://github.com/logos
Snort: http://hackyshacky.com/blog/snort-ids/
Suricata: http://suricata-ids.org/participate/
Volatility: https://code.google.com/archive/p/volatility/
Yara: https://plusvic.github.io/yara/
Seminar. 오픈 소스를 활용한 정보보안
27. Copyright ⓒ 2016 KISEC All Rights Reserved 제 13회 해킹캠프 발표자료 "있는거라도 잘쓰자"
X
Reference
Images reference
Radare2: https://commons.wikimedia.org/wiki/File:Radare2.svg
Malzilla: http://m.52z.com/soft/23848.html
Honeynet: http://markcummins.net/projects.php
NMAP: http://exploiterz.blogspot.kr/2013/08/top-5-nmap-essential-commands-that.html
Peach Fuzzer: http://community.peachfuzzer.com/
Hashcat: http://www.blackploit.com/2013/01/manual-de-hashcat-en-espanol-pdf.html
Wpscan: https://github.com/wpscanteam/wpscan
John the Ripper: http://www.cybercrimetech.com/2014/07/how-to-cracking-zip-and-rar-protected.html
OllyDbg: https://en.wikipedia.org/wiki/OllyDbg
Metasploit: https://twitter.com/metasploit
Wireshark: http://hychome.blogspot.kr/2015/10/wireshark-wireshark.html
Sleuthkit: http://forum.sleuthkit.org/
MISP: https://github.com/MISP/MISP
Kali Linux: https://scottlinux.com/2015/09/01/use-kali-linux-through-tor-with-whonix-gateway/
Seminar. 오픈 소스를 활용한 정보보안