파이썬 오픈소스 도구를 활용한 악성코드 분석
도서+교보Only(교보배송)을 함께 15,000원 이상 구매 시 무료배송
15,000원 미만 시 2,500원 배송비 부과
20,000원 미만 시 2,500원 배송비 부과
15,000원 미만 시 2,500원 배송비 부과
1Box 기준 : 도서 10권
해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.
패키지
북카드
키워드 Pick
키워드 Pick 안내
관심 키워드를 주제로 다른 연관 도서를 다양하게 찾아 볼 수 있는 서비스로, 클릭 시 관심 키워드를 주제로 한 다양한 책으로 이동할 수 있습니다.
키워드는 최근 많이 찾는 순으로 정렬됩니다.
책 소개
이 책이 속한 분야
작가정보
저자 조정원은 KB투자증권에서 보안 업무를 담당하고 있으며 ‘보안 프로젝트(www.boanproject.com)’ 운영자로 활동 중이다. 에이쓰리시큐리티에서 5년 동안 모의 해킹 컨설턴트로 활동했으며 모의 해킹 프로젝트 매니저, 웹 애플리케이션, 소스 코드 진단 등 다양한 영역에서 취약점 진단을 수행했다. 이후 KTH 보안 팀에서 모바일 서비스, 클라우드 서비스 보안, 침해사고 대응 업무를 맡았다. 주요 저서로는 『워드프레스 플러그인 취약점 분석과 모의해킹』(한빛미디어, 2015), 『IT 엔지니어로 사는 법 1』(비팬북스, 2015), 『안드로이드 모바일 악성코드와 모의 해킹 진단』(에이콘출판사, 2014), 『모의해킹이란 무엇인가』(위키북스, 2014), 『칼리 리눅스와 백트랙을 활용한 모의해킹』(에이콘출판사, 2014), 『디지털 포렌식의 세계』(인포더북스, 2014), 『크래커 잡는 명탐정 해커』(성안당, 2010) 등이 있으며, 보안 프로젝트 멤버들과 함께 다양한 영역에서 활동하고 있다.
저자(글) 최우석
저자 최우석은 (주)한국정보보호교육센터(KISEC, Korea Information Security Education Center) f-NGS 연구소에서 보안과 관련된 다양한 연구를 담당하고 있다. 연구된 내용을 바탕으로 강의도 병행 중이며, 틈틈이 분석 보고서를 작성해 배포하고 있다. 주 연구 분야는 악성코드 분석과 유포, 오픈소스 활용, 웹 해킹, 컴퓨터과학이며, 언젠가 기술과 인문학을 섞고 싶어 한다. 이전 회사인 (주)트라이큐브랩에서 2년 동안 악성코드 유포를 분석하고 다양한 방법들을 연구했으며, 악성코드 관련 오픈소스 도구를 구축해 테스트하고 수집한 아이디어를 활용하는 방법도 연구했다. 대외 활동으로 보안 프로젝트의 악성코드 및 취약점 파트에서 연구를 진행했고, 주요 저서로는 『칼리 리눅스와 백트랙을 활용한 모의 해킹』(에이콘출판사, 2014)이 있다. 하카와티 랩(www.hakawati.co.kr) 블로그 운영자로도 활동 중이다.
저자(글) 이도경
저자 이도경은 삼성SDS에서 4년간 웹 취약점 진단 업무를 수행했고, 현재 NSHC 레드얼럿(RedAlert) 팀에서 악성코드 분석 연구원으로 재직하며 교육콘텐츠 개발 업무도 병행하고 있다. 보안 프로젝트에서 악성코드 분석 프로젝트를 진행 중이며, 오픈소스 분석 및 개발에도 관심이 많아 관련 연구를 병행하고 있다.
저자(글) 정지훈
저자 정지훈은 컴퓨터정보통신공학을 전공하고 있으며, 울산대학교 정보보안 동아리 ‘UOU_Unknown’의 회장을 지낸 후 현재까지 동아리에서 활동 중이다. 보안 프로젝트에서는 악성코드 분석 프로젝트를 시작으로 악성코드 분석과 관련된 오픈소스 도구 분석 및 개발 프로젝트를 진행해왔다. 최근에는 여러 오픈소스 도구들을 활용해 편리하고 효율적인 악성코드 분석을 수행하는 자동화 시스템 개발 방안을 연구하고 있다.
작가의 말
내 첫 직업은 모의 해킹 컨설턴트였다. 모의 해킹 컨설턴트로 활동하면서 악성코드를 접하는 일은 많지 않았다. 1년에 한두 번 정도 고객사에서 침해사고 대응 업무를 수행하다가 악성코드가 발견되면 추가적으로 분석하는 정도였다. 모의 해킹 컨설턴트로 5년 동안 활동하고, 이제 관리실무자로 5년차를 맞이하고 있다. 관리실무에서는 회사 자산을 보호하기 위해 취약점 진단뿐만 아니라 침해사고 대응 업무, 보안 솔루션 운영까지 도맡고 있다. 이 과정에서 외부로부터 대외 서비스를 통해 침투하는 것을 차단하는 것도 중요하지만, 사용자 단말이 악성 사이트에 접근해 악성코드에 감염되는 것을 모니터링하는 과정도 중요하다는 사실을 깨달았다. 백신이 설치되어 있다고 하더라도 악성코드 감염이 모두 차단되는 것은 아니기 때문에, 보안 솔루션에서 발생되는 이벤트들에 집중하고 효율적으로 대응할 수 있는 방법이 필요했다.
관리실무를 시작하면서 디지털 포렌식, 악성코드 대응을 주제로 ‘보안 프로젝트’에서 장기 과제를 진행했다. 실무를 진행하면서 필요한 사항들을 멤버들과 공유했고, 오픈소스 도구를 활용해 전문 분석가 입장과 실무자 입장에서 다른 고민들을 했다. 이렇게 진행했던 프로젝트가 책 한 권의 결과물로 나왔다. 악성코드 전문 분석가 입장에서 분석된 많은 샘플 사례들보다는 오픈소스 도구를 이용해서 악성코드의 행위를 판단할 수 있는 환경 구축에 초점을 맞췄다. 이 책이 악성코드 분석의 끝은 아니다. 이제 시작일 뿐이고, 빅데이터 관리, 개인 단말 중요 프로세스의 실시간 모니터링과 효율적인 차단 방법에 대해 현재 연구 중이다. 이것에 대한 성과는 또 다른 결과물로 볼 수 있을 것이라 생각한다. - 조정원
악성코드 분석은 흔히 알려진 정적 분석, 동적 분석의 형태로 진행된다. 기본적이면서도 잊어서는 안 될 가장 기본 형태이며, 이 형태에서 응용될 때 그 난이도는 기하급수적으로 높아지게 된다. 그래서 좀 더 효율적인 방법이나 기술을 찾을 수 있지 않을까?
게다가 공격자는 산업화되었고, IT가 발전하는 만큼 자동화해 너무나 많은 악성코드가 디자인되며 생성되고 있다. 이젠 악성코드를 전문적으로 분석하는 기업이 아닌 이상 정적/동적 분석으로 대응할 수 없기에 일반 개인과 기업은 악성코드 분석에 대해 너무나 열악할 수밖에 없다. 그래서 이 책은 흔히 알고 있는 악성코드 분석 방법을 오픈소스 도구에 의존해 확인할 수 있고, 더 나아가 자동화된 시스템으로 자동화 분석하도록 도와줄 수 있다.
‘라이프 해킹’이라는 용어가 있다. 이 용어는 생활 속에서 미처 깨닫지 못하거나 불편함에 길들여졌던 문제를 효율적으로 쉽게 고쳐나가 생활할 수 있는 아이디어나 기술을 의미한다. 여기서 나의 고민은 수많은 악성코드와 그 변종들을 기존의 방식으로 처리할 시간이 없기에 이를 최대한 자동화해 분석한 데이터를 받아 가공하고 싶다는 데 있었다. 또한 이러한 도구를 개발할 실력도 시간도 없었다. 이러한 문제를 오픈소스 도구의 힘을 빌려 좀 더 편하게 분석할 수 있는 해답을 이 책은 가지고 있다.
내가 이 책에서 담당한 파트에서는 쿠쿠 샌드박스(Cuckoo Sandbox)를 다룬다. 나는 0.3 버전부터 꾸준히 구축해 사용하고 있으며, 현재는 새로운 버전이 나올 때마다 구축하고 테스트해서 결과 보고서를 작성한 후 교육에 활용하고 있다. 또한 악성코드 관련 이슈가 발생했을 때 적극 활용해 분석 보고서를 만들고 있다. 비록 첫 구축이 오래 걸리고 이해하기에도 긴 시간이 소요되는 많은 기술들을 사용하고 있지만, 구축 후 웹으로 접속해 편리하게 얻을 수 있는 간편화된 시스템에 매료되었다. 그리고 올리디버거(OllyDbg)나 아이다(IDA)와 같은 도구를 잘 다루지 못하는 내게는 악성코드 분석을 위한 최고의 시스템이다. - 최우석
악성코드 분석이라고 하면 흔히 ‘리버싱(Reverse Engineering)(코드 분석)’을 먼저 떠올리는 경우가 많다. 하지만 악성코드 분석은 상황과 환경에 따라 그리고 분석가의 기량에 따라 분석하는 방법이 천차만별이며, 빠른 시간 내에 대응하길 원하는 경우라면 리버싱 하나에 의존해서는 효과적인 결과물을 얻기가 어렵다.
당연한 얘기지만 그 예로, 도구를 활용하지 않고 코드를 분석하는 경우와 비교해보면 효율적인 도구와 리버싱을 병행해 분석할 때 그 시간을 절반 이상으로 줄일 수 있다. 이처럼 도구 활용은 리버싱 기술과 떼려야 뗄 수 없는 관계다.
이 책은 이러한 점들을 사전에 인지함으로써 도구 활용에 중점을 두고 서술하고 있으며, 특히 오픈소스를 활용한 도구들을 다룬다는 점에서 매력적이다. 오픈소스의 가장 큰 장점은 소스 코드가 공개되어 있어 대부분 무료로 사용할 수 있을 뿐 아니라 그 소스 코드를 활용해 최적의 환경으로 커스터마이징할 수 있다는 데 있다.
목차
- 1장 오픈소스 개요와 파이썬 환경
__1.1 오픈소스의 이해
__1.2 파이썬의 개요
__1.3 파이썬 환경 구성 및 배포 방법
____1.3.1 윈도우 환경 구성
____1.3.2 이클립스에 pydev 환경 구성하기
____1.3.3 pyinstaller를 이용한 프로그램 배포
__1.4 깃허브 사이트에서 오픈소스 도구 다운로드하기
__1.5 파이썬 모듈 설치 방법
__1.6 정리
2장 peframe을 통해 알아보는 실행 파일 구조
__2.1 PE 파일 포맷 이해
____2.1.1 DOS Header 구조체
____2.1.2 DOS Stub 프로그램
____2.1.3 IMAGE_NT_HEADER 구조체
__2.2 peframe 살펴보기
____2.2.1 IMPORT 모듈
____2.2.2 사전 작업 부분
____2.2.3 main 함수 부분 분석
____2.2.4 peframe을 구성하는 함수들
__2.3 악성코드 특성 인자에 대한 이해
____2.3.1 안티바이러스 결과
____2.3.2 해시 값
____2.3.3 패커
____2.3.4 섹션명과 엔트로피
____2.3.5 API
____2.3.6 문자열
____2.3.7 PE 메타데이터
__2.4 정리
3장 악성코드 분석 서비스 이해
__3.1 분석 환경에 대한 이해
____3.1.1 자동 분석 서비스 종류
____3.1.2 악성코드 분석 라이브 CD 소개
____3.1.3 악성코드 수집은 어디서 하는가
__3.2 온라인 분석 서비스 이해
____3.2.1 바이러스토탈 서비스에 대한 소개
____3.2.2 바이러스토탈 서비스 API 활용 예제
____3.2.3 URLquery를 이용한 악성코드 감염 사이트 확인
____3.2.4 hybrid-analysis를 이용한 악성코드 분석
__3.3 정리
4장 쿠쿠 샌드박스 활용법
__4.1 쿠쿠 샌드박스란?
__4.2 쿠쿠 샌드박스의 특징
__4.3 쿠쿠 샌드박스 설치
____4.3.1 우분투 14.04 LTS 설치
____4.3.2 게스트 확장 설치
____4.3.3 저장소 설정
____4.3.4 보조 패키지 및 라이브러리 설치
____4.3.5 필수 패키지 및 라이브러리 설치
____4.3.6 tcpdump 설정
__4.4 샌드박스 설정
____4.4.1 샌드박스 설치
____4.4.2 게스트 확장 설치
____4.4.3 파이썬, 파이썬-PIL 설치
____4.4.4 방화벽 및 자동 업데이트 비활성화
____4.4.5 네트워크 설정
____4.4.6 추가 환경 설정
____4.4.7 Agent.py 설치
____4.4.8 가상 머신 상태 설정
____4.4.9 샌드박스 추가 생성
__4.5 쿠쿠 샌드박스 설정
____4.5.1 cuckoo.conf 설정
____4.5.2 processing.conf 설정
____4.5.3 reporting.conf 설정
____4.5.4 virtualbox.conf 설정
____4.5.5 auxiliary.conf 설정
____4.5.6 memory.conf 설정
__4.6 쿠쿠 샌드박스 엔진 운영
____4.6.1 Community.py
____4.6.2 최신 웹 인터페이스 사용
____4.6.3 분석 파일 업로드
____4.6.4 디버깅 모드 활용
____4.6.5 고전 웹 인터페이스 사용
__4.7 쿠쿠 샌드박스 리포트
____4.7.1 JSONdump 리포트
____4.7.2 HTML 리포트
____4.7.3 MMDef 리포트
____4.7.4 MAEC 리포트
__4.8 Api.py 분석
__4.9 쿠쿠 샌드박스 유틸리티
__4.10 분석 결과
____4.10.1 Quick Overview
____4.10.2 Static Analysis
____4.10.3 Behavioral Analysis
____4.10.4 Network Analysis
____4.10.5 Dropped Files
__4.11 볼라틸리티를 이용한 메모리 분석 결과
__4.12 관리자 기능
__4.13 비교 기능
__4.14 정리
5장 악성코드 상세 분석 단계
__5.1 쿠쿠 샌드박스 결과 확인
__5.2 상세 분석 대상 악성코드 개요
__5.3 상세 분석 내용
__5.4 정리
6장 기타 분석 도구 활용
__6.1 바이퍼를 이용한 바이너리 파일 분석 및 관리
____6.1.1 바이퍼 설치 과정
____6.1.2 바이퍼 사용 방법
____6.1.3 바이퍼 명령어 설명
____6.1.4 모듈
__6.2 ClamAV를 이용한 악성코드 1차 분류
__6.3 pyew를 이용한 악성코드 관리 및 분석
____6.3.1 도움말 확인하기
____6.3.2 임포트 테이블 검사 기능
____6.3.3 바이러스토탈 서비스 검사 기능
____6.3.4 URL 정보 확인 기능
____6.3.5 PDF 파일 포맷 진단 기능
__6.4 pescanner를 활용한 악성코드 여부 확인
__6.5 PEStudio를 이용한 의심되는 파일 분석
__6.6 네트워크 패킷 분석
____6.6.1 captipper를 이용한 네트워크 패킷 분석
____6.6.2 pcap-analyzer를 이용한 네트워크 패킷 분석
____6.6.3 net-creds를 이용한 중요 정보 획득
__6.7 오픈소스를 이용한 분석 예제
__6.8 도커 컨테이너 활용
____6.8.1 도커란 무엇인가
____6.8.2 도커 허브에 대해
____6.8.3 Remnux 도커 이미지 활용
__6.9 정리
7장 메모리 분석을 활용한 침해사고 대응
__7.1 볼라틸리티 개요 및 환경 구성
__7.2 볼라틸리티를 활용한 악성코드 분석
__7.3 오픈소스 도구: TotalRecall
__7.4 Redline을 이용한 메모리 분석
__7.5 볼라틸리티 플러그인 활용 및 추천
__7.6 Rekall을 활용한 메모리 포렌식 분석
__7.7 VolDiff를 활용한 메모리 분석 결과 비교
__7.8 DAMM을 활용한 메모리 분석 결과 비교
__7.9 악성코드 사례로 살펴보는 메모리 분석
__7.10 공격 시나리오를 통해 알아보는 메모리 덤프 활용
__7.11 정리
출판사 서평
★ 이 책의 특징 ★
■ 악성코드 분석에 필요한 온라인/오프라인 서비스 완벽가이드 제시
■ 파이썬 오픈소스 도구를 통한 악성코드 특징 분석
■ 정적/동석 분석 심화분석 사례를 통한 악성코드 분석 가이드
■ 악성코드 침해사고 대응에 필요한 파이썬 오픈소스 도구 활용 제시
■ 메모리 분석 기법을 활용한 침해사고 대응 기법 제시
★ 이 책의 대상 독자 ★
이 책은 악성코드 분석 업무에 흥미를 느끼는 입문자와 관련 실무자를 대상으로 쓰여졌다. 다음과 같은 독자들에게 이 책을 추천한다.
■ 파이썬 오픈소스 도구를 이해하고 활용하고 싶은 독자
■ 다양한 디바이스에서의 악성코드 분석을 이해하고 싶은 독자
■ IT 보안실무자 입장에서 악성코드 분석 환경을 구축하고 싶은 독자
■ 악성코드로 인한 침해사고 대응 프로세스를 이해하고 싶은 독자
★ 이 책의 구성 ★
1장에서는 오픈소스 도구와 파이썬 개발 환경을 이해하는 데 중점을 둔다. 이 책은 파이썬 오픈소스 도구 중심으로 다루기 때문에 이를 분석하고 개발하기 위한 환경을 먼저 잘 이해해둬야 한다. 깃허브(Github)와 이클립스, 그리고 플러그인 등으로 파이썬 프로그래밍 환경을 구성한다.
2장에서는 윈도우 실행 파일인 PE 포맷을 설명한다. 개인 사용자들이 제일 많이 사용하는 윈도우 운영체제의 파일 실행 포맷인 PE 파일을 이해해야 악성코드 분석에 이용할 수 있는 악성코드 특징들을 파악해본다. peframe 파이썬 오픈소스 도구를 분석하면서 PE 파일을 이해하는 시간을 갖는다.
3장에서는 악성코드 분석 관련 온라인 서비스를 살펴본다. 악성코드를 분석할 때 빠른 대응을 위해 다양한 온라인 서비스를 활용할 수 있다. 파일 분석, 도메인 주소 분석, 평판 시스템 등의 다양한 결과를 통해 내부적으로 위협을 줄 수 있는 사이트들을 검색하고 빠르게 판단하는 데 온라인 서비스가 도움을 줄 수 있다. 대표적으로 사용되는 바이러스토탈 서비스와 이 서비스의 API를 활용한 도구들을 집중적으로 다룬다.
4장에서는 악성코드 오프라인 분석 서비스에 대해 살펴본다. 3장에서 다룬 온라인 서비스에서 기반으로 하고 있는 샌드박스 구축이 주요 내용이다. 내부적으로 분석 환경을 구성하면 오프라인에서도 동일한 기능의 환경을 구성할 수 있다. 대표적으로 쿠쿠 샌드박스를 이용한 환경 구성 방법과 실제 악성코드 샘플을 가지고 도구를 다루는 과정을 상세히 설명한다.
5장에서는 악성코드 상세 분석 단계를 이해하는 데 중점을 둔다. 4장에서 자동 분석 서비스를 통해 다뤘던 샘플을 수동으로 정적/동적 분석하는 과정을 단계별로 설명한다. 자동 분석에서도 어느 정도 악성코드 여부를 판단할 수 있지만, 상세 분석을 통해 명확하게 판단한 뒤에 악성코드 확진을 차단하는 것이 목적이 되어야 한다.
6장에서는 기타 악성코드 분석 도구의 활용 방법에 대해 설명한다. 악성코드 진단 과정에서 추가로 활용할 수 있는 파이썬 기반의 도구를 다룬다. 악성코드를 수집하고 분석한 뒤에 어떻게 관리해서 데이터베이스화할 수 있는지 오픈소스를 토대로 살펴본다. 파일 분석, 네트워크 패킷 분석, PDF 파일 분석 등 다양한 환경에서 분석할 수 있는 도구도 간단히 소개한다.
7장에서는 메모리 포렌식 분석 활용을 다룬다. 메모리 포렌식 기법을 활용하면 악성코드의 휘발성 정보 및 연관성을 신속하게 분석할 수 있다. 침해사고 대응을 할 때 의심되는 악성코드를 빠르게 찾아내서 추가적인 위험이 발생하지 않도록 조치하는 것이 중요하다. 메모리 포렌식 오픈소스 도구로 활용할 수 있는 볼라틸리티(Volatility) 도구와 이를 활용한 다양한 오픈소스 도구의 활용법을 설명한다.
기본정보
ISBN | 9788960777651 | ||
---|---|---|---|
발행(출시)일자 | 2015년 09월 30일 | ||
쪽수 | 672쪽 | ||
크기 |
188 * 250
* 35
mm
/ 1307 g
|
||
총권수 | 1권 | ||
시리즈명 |
에이콘 해킹과 보안 시리즈
|
Klover
e교환권은 적립 일로부터 180일 동안 사용 가능합니다.
리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 리뷰 종류별로 구매한 아이디당 한 상품에 최초 1회 작성 건들에 대해서만 제공됩니다.
판매가 1,000원 미만 도서의 경우 리워드 지급 대상에서 제외됩니다.
일부 타인의 권리를 침해하거나 불편을 끼치는 것을 방지하기 위해 아래에 해당하는 Klover 리뷰는 별도의 통보 없이 삭제될 수 있습니다.
- 도서나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 리뷰
- 도서와 무관한 내용의 리뷰
- 인신공격이나 욕설, 비속어, 혐오발언이 개재된 리뷰
- 의성어나 의태어 등 내용의 의미가 없는 리뷰
리뷰는 1인이 중복으로 작성하실 수는 있지만, 평점계산은 가장 최근에 남긴 1건의 리뷰만 반영됩니다.
구매 후 리뷰 작성 시, e교환권 200원 적립
문장수집
e교환권은 적립 일로부터 180일 동안 사용 가능합니다. 리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 한 상품에 최초 1회만 제공됩니다.
주문취소/반품/절판/품절 시 리워드 대상에서 제외됩니다.
구매 후 리뷰 작성 시, e교환권 100원 적립