해커의 언어, 치명적 파이썬
:해커, 포렌식 분석가, 침투 테스터, 보안 전문가를 위한 쿡북
저자 TJ 오코너
역자 김선국
출간일 2013년 2월 25일 (월)
정가 24,000원
페이지 306
판형 190 x 245
ISBN 978-89-94774-31-2 (93560)
원서정보 Violent Python: A Cookbook for Hackers, Forensic Analysts, Penetration Testers, and Security Engineers
책 소개
해커, 포렌식 분석가, 침투 테스터, 보안 전문가를 위한 쿡북
파이썬으로 시스템을 공격하고, 포렌식 수사를 하고, 네트워크의 트래픽을 분석하고, 무선 기기를 공격하고, SNS에서 정보를 수집하고, 백신 프로그램 우회하는 방법에 대해 배워보자.
《치명적 파이썬: 해커, 포렌식 분석가, 침투 테스터, 보안 전문가를 위한 쿡북》은 해킹 기법 이론을 어떻게 실질적으로 구현할 수 있는지 보여준다. 이 책은 다른 공격 툴에 의존하는 대신에 파이썬 프로그래밍 언어로 어떻게 직접 자신만의 무기를 만들 수 있는지 보여준다. 이 책에 있는 예제들은 다수의 네트워크 서비스 동시에 공격하고, 애플리케이션과 문서에 남아있는 디지털 사용 흔적을 분석하고, 무선 기기의 트래픽을 캡쳐 및 공격하고, SNS 사이트에서 정보를 수집하고, 백신을 우회 가능한 악성 프로그램을 파이썬 스크립트로 직접 작성할 수 있도록 도와준다. 이 책에서는 다음과 같은 내용을 배울 수 있다:
- pexpect, ftplib, nmap-python 등으로 대규모 네트워크 공격 제어
- Nmap와 메타스플로잇을 포함하여 이미 개발된 툴을 스크립트에 통합
- 애플리케이션의 sqlite3 데이터베이스, 윈도우 레지스트리 등에서 포렌식적으로 유용한 데이터를 가져와서 조사하는 포렌식 조사 툴 개발
- 문서와 이미지에 있는 메타데이터를 자동으로 가져오는 툴 제작
- Scapy와 dpkt 라이브러리로 네트워크 패킷 스니핑, 캡쳐, 생성 및 스푸핑
- 무선 프레임 캡처 및 분석, 그리고 블루투스 기기 스캐닝 및 공격
- 정규표현, mechanize, urllib, httplib, browser 라이브러리 등으로 SNS 정보수집
- 백신 시스템을 우회하기 위해 파이썬 스크립트를 윈도우 실행파일로 컴파일
부록 웹 사이트
부록 웹 사이트에 가면 이 책에 있는 모든 코드가 있다. 책을 읽으면서 필요한 코드, 사용 흔적, 네트워크 캡쳐를 http://www.elsevierdirect.com/companion.jsp?ISBN=9781597499576에서 다운로드 할 수 있다.
독자 대상
초중급
* 이 책에서 소개하는 기법들을 적용하기 전에 먼저 법에 저촉되는 사항이 없는지 반드시 확인해야 하며, 비제이퍼블릭은 향후 이로 인해 발생한 문제에 대한 법적 책임을 지지 않습니다.
저자소개
TJ 오코너 (O’Connor)
미 국방부의 정보보안 전문가이자 미 육군의 낙하산 부대 요원이다. 오코노는 미 사관학교에서 조교수로 근무하면서 디지털 포렌식, 컴퓨터 공격, 정보 보증에 대한 수업을 진행하고 있다. 그는 미 국가안보국에서 매년 주체하고 있는 사이버 방어 대회에서 우승한 팀을 두 번이나 공동으로 가르쳤으며, 미 국방대학원의 제1회 사이버 대회에서 우승했다. 또한 미 대학 사이버 방어전에서 동북부 지역 팀을 포함하여 여러 번 레드 팀에서 활동했다.
오코너는 노스 캐롤라이나 주립대에서 컴퓨터 공학 석사학위를, SANS 기술원에서 정보보안 석사학위를 취득했다. 그리고 미 사관학교에서 컴퓨터 공학 학사학위를 취득했다. 또한 USENIX 워크숍, ACM 컨퍼런스, 보안 컨퍼런스, SANS 리딩 룸, 인터넷 스톰 센터, 아미 매거진, 미 국군 저널 등에 연구논문을 기재했다. 그는 GIAC 보안 전문가(GSE)와 공세적 보안 공인 전문가(OSCE)를 포함하여, 여러 개의 사이버 보안 전문가 인증을 획득했다. 오코너는 SANS Red and Blue Team Cyber Guardians의 일원이기도 하다.
역자소개
김선국
하와이대 컴퓨터 정보 공학과에서 학사를 마치고, 해군 통역장교를 거쳐 현재 AhnLab 기술컨설팅팀에서 주요 사회기반시설에 대한 취약점 분석 업무를 담당하고 있다. 주로 군사, 국제법, 경제, 컴퓨터, 정보 보안 등에 대한 자료들을 번역해왔으며, 역서로는 《이제 시작이야! 해킹과 침투 테스트》, 《해킹과 침투 테스트를 위한 코딩》, 《이제 시작이야! 디지털 포렌식》 등이 있다.
목차
CHAPTER 1 소개
소개: 파이썬과 침투 테스트
개발 환경 구성하기
외부 라이브러리 설치
파이썬의 두 가지 모드
파이썬 언어
변수
문자열
리스트
딕셔너리
네트워크
선택문
예외 처리
함수
반복문
파일 I/O
Sys 모듈
OS 모듈
첫 번째 파이썬 프로그램
첫 번째 파이썬 프로그램을 위한 준비: 뻐꾸기의 알
첫 번째 스크립트 – 유닉스 패스워드 크래커
두 번째 프로그램: 선을 위해 악을 사용하기
두 번째 작품 - 압축파일 패스워드 크래커
요약
CHAPTER 2 침투 테스트
소개: 모리스 웜 — 오늘날에도 유효할까?
포트 스캐너 만들기
TCP 풀 커넥트 스캔
애플리케이션 배너 가져오기
쓰레드 사용하기
Nmap 포트 스캐너 통합하기
파이썬으로 SSH 봇넷 구축하기
Pexpect로 SSH 연결하기
Pxssh로 SSH 패스워드 공격하기
취약한 개인 키를 통한 SSH 공격하기
SSH 봇넷 구축하기
FTP와 웹을 이용한 대규모 공격
파이썬으로 익명 FTP 스캐너 만들기
Ftplib로 FTP 사용자 인증정보 공격하기
FTP 서버에 있는 웹 페이지 검색하기
웹 페이지에 악성코드 삽입하기
모든 공격 통합하기
컨피커, 노력하면 된다
메타스플로잇으로 윈도우 SMB 서비스 공격하기
메타스플로잇과 파이썬 연동하기
원격 프로세스 실행 공격하기
컨피커 최종 코드 통합하기
제로 데이 개념의 공격 코드 개발하기
스택 기반의 버퍼 오버플로우 공격
공격의 핵심 요소 추가하기
악성코드 전송하기
공격코드 모두 통합하기
요약
CHAPTER 3 포렌식 수사
소개: BTK 살인 사건의 핵심적 열쇠가 된 포렌식 수사
어제 밤에 당신이 있었던 곳은? — 레지스트리의 무선 AP 분석
WinReg로 윈도우 레지스트리 읽기
MAC 주소로 AP의 물리적 위치 파악하기
파이썬으로 휴지통에서 삭제된 아이템 복구하기
OS 모듈로 삭제된 아이템 찾기
파이썬으로 SID를 사용자 계정으로 매핑하기
메타데이터
PyPDF로 PDF 메타데이터 분석하기
Exif 메타데이터 이해하기
BeautifulSoup으로 이미지 다운로드하기
파이썬 이미지 라이브러리로 이미지의 Exif 메타데이터 읽어오기
파이썬으로 애플리케이션 사용흔적 수사하기
스카이프 Sqlite3 데이터베이스 이해하기
파이썬과 Sqlite3으로 스카이프 데이터베이스 쿼리 자동화하기
파이썬으로 파이어폭스 Sqlite3 데이터베이스 구문분석하기
파이썬으로 iTunes 백업 조사하기
요약
CHAPTER 4 네트워크 트래픽 분석
소개: 오퍼레이션 오로라와 당연한 것을 놓친 이유
IP 트래픽의 목적지는? - 파이썬 방식
PyGeoIP로 IP 주소를 물리적 위치로 표시하기
Dpkt로 패킷 분석하기
파이썬으로 구글 지도 만들기
어나니머스가 정말 익명인 것일까? LOIC 트래픽 분석
Dpkt로 LOIC 다운로드 확인하기
IRC 명령어를 Hive에 파싱하기
진행 중인 DDoS 공격 식별하기
무어가 미 국방부의 딜레마를 해결했던 방법
TTL 필드 이해하기
Scapy로 TTL 필드 처리하기
스톰의 패스트 플럭스와 컨피커의 도메인 플럭스
DNS에 숨겨있는 정보
Scapy로 DNS 트래픽 처리하기
Scapy로 패스트 플럭스 트래픽 탐지하기
Scapy로 도메인 플럭스 트래픽 탐지하기
케빈 미트닉과 TCP 일련 번호 예측 공격
TCP 일련번호 예측 공격 만들기
Scapy로 SYN 플러딩 공격하기
TCP 일련번호 계산하기
TCP 연결 스푸핑하기
SCAPY로 IDS 공격하기
요약
CHAPTER 5 무선 기기 해킹
소개: 무선 보안과 아이스맨
무선 공격 환경 구축하기
Scapy로 테스트하기
파이썬 블루투스 패키지 설치하기
WALL OF SHEEP — 무선 비밀 수동적으로 리스닝하기
파이썬 정규표현으로 신용카드 정보 스니핑하기
호텔 투숙객 스니핑하기
무선 구글 키로거 만들기
FTP 인증정보 스니핑하기
노트북 컴퓨터를 사용한 곳은? 파이썬 방식
802.11 프로브 요청 리스닝하기
숨겨진 802.11 네트워크 찾기
숨겨진 802.11 네트워크 식별하기
파이썬으로 UAV 제어하기
트래픽 캡쳐와 프로토콜 분석하기
Scapy로 802.11 프레임 생성하기
공격 최종 단계. UAV 비상 착륙하기
FIRESHEEP 탐지하기
Wordpress 세션 쿠키 이해하기
Wordpress 쿠키 재사용 탐지하기
블루투스와 파이썬으로 스토킹하기
무선 트래픽으로 블루투스 주소 찾기
블루투스 RFCOMM 채널 스캔하기
Bluetooth Service Discovery Protocol 사용하기
파이썬 ObexFTP로 프린터 제어하기
파이썬으로 전화기 블루버그하기
요약
CHAPTER 6 정보수집
소개: 오늘날의 사회공학기법
공격 전의 정보수집
MECHANIZE 라이브러리로 인터넷 검색하기
익명유지 – 프록시, User-Agent, 쿠키 추가하기
파이썬 클래스에서 AnonBrowser 최종화하기
ANONBROWSER로 웹 페이지 정보수집하기
Beautiful Soup으로 HREF 링크 처리하기
Beautiful Soup으로 이미지 미러링하기
연구, 조사, 발견
파이썬에서 구글 API 사용하기
파이썬으로 트윗 처리하기
트윗에서 데이터 가져오기
정규표현으로 트위터의 관심 사항 추출하기
익명의 이메일
대규모 사회공학기법 공격
Smtplib로 공격대상에 이메일 전송하기
Smtplib로 피싱 이메일 전송하기
요약
CHAPTER 7 백신 프로그램 우회
소개: 불을 지펴라!
백신 프로그램 우회하기
우회 검증하기
요약
이 책의 구성
이 책을 집필하면서 파이썬의 어두운 부분에 대한 예를 많이 포함했다. 이 책에서는 침투 테스트, 웹 분석, 포렌식 분석, 무선 기기 공격에 대한 파이썬 예제를 다루고 있다. 이러한 예를 통해 독자들이 직접 파이썬 스크립트를 작성할 동기를 얻었으면 하는 바램이다.
제1장: 소개
만약 파이썬으로 프로그래밍을 해본 적이 없다면 제1장을 읽어야 한다. 제1장에서는 언어, 변수, 데이터 타입, 함수, 반복문, 조건문, 모듈에 대한 배경 지식을 습득할 수 있고, 몇 개의 간단한 프로그램을 작성하기도 한다. 파이썬 언어에 이미 익숙하다면 건너뛰어도 좋다. 제1장을 제외하고는, 나머지 6개 장은 비교적 독립적이다. 따라서 편한 순서대로 읽어도 상관없으며, 원하는 부분을 먼저 읽어도 좋다.
제2장: 침투 테스트
제2장에서는 침투 테스트에서 파이썬을 활용하는 방법에 대해 소개한다. 제2장에 있는 예로는 포트 스캐너 만들기, SSH 봇넷 구축하기, FTP를 통한 대규모 공격, 컨피커 웜 재현 그리고 공격코드 만들기 등이 있다.
제3장: 포렌식 수사
제3장은 파이썬을 디지털 포렌식 수사에 활용한다. 사용자의 물리적 위치 확인, 삭제된 아이템 복원, 윈도우 레지스트리의 사용흔적 찾기, 문서 및 이미지에 있는 메타데이터 읽어오기, 애플리케이션 및 모바일 기기 사용흔적 등에 대한 예가 있다.
제4장: 네트워크 트래픽 분석
제4장에서는 파이썬으로 네트워크 트래픽을 분석한다. 제4장에 있는 스크립트로는 캡쳐한 패킷에 있는 IP 주소로 물리적 위치 확인하기, DDoS 툴 조사하기, 디코이 스캔 탐지하기, 봇넷 트래픽 분석하기, 침입탐지시스템 공격하기 등이 있다.
제5장: 무선 기기 해킹
제5장에서는 무선 네트워크와 블루투스 장비를 공격한다. 이 장에 있는 예로는 무선 트래픽을 스니핑하고 처리하는 방법, 무선 키로거 만들기, 숨겨진 무선 네트워크 식별하기, 원격으로 UAV 지시 내리기, 사용중인 무선 악성 툴 탐지하기, 블루투스 라디오 스토킹하기, 블루투스 취약점 공격하기 등이 있다.
제6장: 정보수집
제6장은 파이썬으로 웹에서 정보를 수집하는 방법을 살펴본다. 이 장에 있는 예로는 파이썬으로 익명 브라우징, 개발자 API로 작업하기, 유명한 SNS 사이트 정보수집 그리고 피싱 이메일 배포 등이 있다.
제7장: 백신 프로그램 우회
마지막 장인 제7장에서는 백신 프로그램을 우회하는 악성 프로그램을 만든다. 추가적으로, 온라인 바이러스 스캐너에 악성 프로그램을 업로드하는 스크립트도 만든다.
출판사 리뷰
파이썬은 해커의 언어다. 복잡성은 줄고, 효율성은 증가된, 그리고 무한한 외부 라이브러리와 사용하기 편한 구문 등이 파이썬의 강점이다. 이러한 이유로 파이썬은 직접 공격 툴을 제작하는 데 훌륭한 개발 플랫폼이 된다. 만약 MAC OS X이나 리눅스를 사용하고 있다면 이미 시스템에 파이썬이 설치되어 있을 가능성이 높다. 이미 다양한 공격 툴이 개발되어 있지만, 파이썬을 배우면 이러한 툴을 사용할 수 없는 경우에도 도움이 될 수 있다.
사람마다 배우는 방법은 모두 다르다. 이 책은 파이썬에 대해서 배우고 싶어하는 초보자부터 자신의 능력을 침투 테스트에 적용하고 싶어하는 고급 프로그래머까지 모두에게 도움이 될 것이다.
하루 한 시간, HTML5 모바일 앱 프로그래밍 (0) | 2013.02.22 |
---|---|
오브젝티브-C 2판: iOS와 맥 OS X 개발을 위한 (2) | 2013.02.05 |
실전 SQL Server MVP 61: 그 두 번째 이야기 (0) | 2013.01.04 |
댓글 영역