책 이미지
책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > OS/Networking > 네트워크 보안/해킹
· ISBN : 9788960770539
· 쪽수 : 998쪽
책 소개
목차
『실전해킹 절대내공』
1장 정탐
목표
접근법
정탐 방법론
정보 수집
풋프린팅
검증
핵심 기술
정보 수집
검색 엔진
WHOIS
RWHOIS
도메인 네임 레지스트리와 레지스트라
웹사이트 복사 툴
풋프린팅
DNS
SMTP
검증
가상 호스팅
IP 서브넷팅
대륙별 인터넷 레지스트리
오픈소스 툴
정보 수집 툴
웹 자원
*nix 명령행 툴
오픈소스 윈도우 툴
WinBiLE
풋프린팅 툴
웹 자료
*nix 콘솔 툴
오픈소스 윈도우 툴
검증 툴
웹 자료
*nix 콘솔 툴
사례 연구: 실제 툴 사용
인터넷에 연결된 네트워크에 대한 정보 수집, 풋프린팅, 검증
풋프린팅
검증
2장 열거와 스캐닝
목표
접근 방법
스캐닝
열거
핵심 기술
스캐닝은 어떻게 동작하는가
포트 스캐닝
열거 과정의 배후에서 일어나는 일
서비스 식별
RPC 열거
핑거프린팅
눈에 띄는 스캔, 스텔스 스캔, 그 중간
타이밍
대역폭 문제
비정상적 패킷 생성
오픈소스 툴
스캐닝
Fyodor의 nmap
netenum: ping 스윕
unicornscan: 포트 스캔
scanrand: 포트 스캔
열거
nmap: 배너 수집
윈도우 열거: smbgetserverinfo/smbdumpusers
사례 연구: 실제 툴 사용
외부 공격
내부 공격
스텔스 방법
눈에 띄는 방법 - IDS 테스트
추가 정보
3장 데이터베이스 테스트
목표
예상 독자
개요
접근 방법
데이터베이스 테스트 환경
데이터베이스 침투 테스트 절차
핵심 기술
기본 용어
데이터베이스 설치
기본 사용자와 새 사용자
역할과 권한
기술적 세부 사항
오픈소스 툴
정보 수집
풋프린팅, 스캐닝, 열거 툴
포트를 이용해 데이터베이스 서버 찾기
열거 툴
인증이 필요없는 열거
취약점 평가와 공격 툴
네서스 검사
네서스 데이터베이스 취약점 해석
OScanner와 OAT
SQLAT
WHAX 툴
사례 연구: 실제 툴 사용
MS SQL 평가
오라클 평가
추가 정보
데이터베이스 찾기
열거 툴
4장 웹 서버 & 웹 애플리케이션 테스트
목표
개요
웹 서버 취약점 - 짧은 역사
웹 애플리케이션 - 새로운 도전
다루는 내용
접근 방법
접근 방법: 웹 서버 테스트
접근 방법: CGI와 기본 페이지 테스트
접근 방법: 웹 애플리케이션 테스트
핵심 기술
웹 서버 공격 기본
공격 개요
CGI와 기본 페이지 공격
웹 애플리케이션 평가
정보 수집 공격
파일 시스템과 디렉토리 순회 공격
명령 실행 공격
데이터베이스 요청 삽입 공격
크로스 사이트 스크립팅
인증과 인가
인자 전달 공격
오픈소스 툴
정보 수집 툴
스캐닝 툴
평가 툴
인증
Proxy
공격 툴
사례 연구: 실제 툴 사용
웹 서버 평가
CGI와 기본 페이지 공격
웹 애플리케이션 평가
5장 Auditor를 이용한 무선 침투 테스트
목표
개요
접근 방법
WLAN 취약점 이해
WLAN 취약점의 진화
핵심 기술
WLAN 발견
적합한 안테나 선택
WLAN 암호화
WEP
WPA/WPA 2
EAP
VPN
공격
WEP 공격
WPA 공격
LEAP 공격
VPN 공격
오픈소스 툴
풋프린팅 툴
정보 수집 툴
유즈넷 뉴스그룹
구글
스캐닝 툴
Wellenreiter
Kismet
열거 툴
취약점 평가 툴
공격 툴
MAC 주소 스푸핑
Void11을 통한 인증 해제
Aircrack 슈트를 이용한 WEP 크랙
CoWPAtty를 이용한 WPA 크랙
사례 연구
사례 연구: WEP 크랙
사례 연구: WPA-PSK 크랙
추가 정보
추가 GPSMap 맵 서버
6장 네트워크 장비
목표
접근 방법
핵심 기술
오픈소스 툴
풋프린팅 툴
traceroute
DNS
nmap
ICMP
IKE-scan
스캐닝 툴
nmap
ASS
Cisco Torch
Snmpfuzz.pl
열거 툴
SNMP
Finger
취약점 평가 툴
네서스
공격 툴
ADMsnmp
Hydra
TFTP-Bruteforce
Cisco Global Exploiter
IRPAS
Ettercap
사례 연구: 실제 툴 적용
무차별 공격으로 라우터 설정 파일 획득
추가 정보
범용/기본 벤더 비밀번호
cge.pl 수정
참고 자료
소프트웨어
7장 오픈소스 보안 툴 작성
개요
보안 툴을 직접 작성할 필요가 있을까?
프로그래밍 절차
1단계: 질문을 제대로 이해하기
2단계: 문제를 작고 관리 가능한 작은 문제로 분리
3단계: 의사코드 작성
4단계: 실제 코드 구현
언어
프로그래밍 언어
로고
베이직
델파이
C/C++
펄
C#
파이썬
자바
웹 애플리케이션 언어
PHP
ASP/ASP.NET
IDE
이클립스
KDevelop
마이크로소프트 비주얼 스튜디오 .NET
Monodevelop
빠른 언어 습득을 위한 미니 가이드
개요
펄 미니 가이드
기본 프로그램 구조, 데이터 구조, 조건문, 루프
기본적인 파일 입출력과 서브루틴
소켓 통신과 MySQL 사용
웹 서비스 사용과 CGI 작성
C# 미니 가이드
기본 프로그램 구조, 데이터 구조, 조건문, 루프
기본 파일 입출력과 데이터베이스
소켓에 쓰기
결론
유용한 기능과 코드 모음
C# 코드
펄 코드
7장에서 소개한 자료에 대한 링크 / 추가 자료
8장 네서스
소개
네서스가 무엇인가?
기본 구성 요소
클라이언트, 서버
네서스 클라이언트
플러그인
지식 베이스
네서스 실행
Auditor에서 네서스 실행하기
포인트 & 클릭: Auditor에서의 네서스 실행
네서스 시작 스크립트의 분석
시작 스크립트 없이 네서스 실행
윈도우에서의 네서스 실행
네서스 유지 관리
플러그인 업데이트
Auditor의 플러그인 업데이트: 방법 1
Auditor의 플러그인 업데이트: 방법 2
네서스 프로그램의 업데이트
네서스 이용
플러그인
환경 설정 탭
스캔 옵션
스캔 대상 선택
요약
신속한 설명
관련 사이트 주소
FAQ
9장 네서스 코딩
소개
NASL의 역사
NASL의 목적
간단함 & 편리함
모듈성 & 효율성
안전성
NASL의 한계
NASL 스크립트 구문
주석문
변수
연산자
제어 구조
NASL 스크립트 작성
개인적인 용도의 NASL 스크립트 작성
네트워크 함수
HTTP 함수
패킷 처리 함수
문자열 처리 함수
암호화 함수
NASL 커맨드 라인 인터프리터
네서스 프레임워크 프로그래밍
설명 함수
사례 연구: 일반적인 NASL 스크립트
NASL 포팅
로직 분석
로직 식별
의사 코드
NASL로 포팅하기
C/C++에서 NASL로 포팅하기
NASL로부터 포팅하기
스크립트의 여러 사례
마이크로소프트 IIS HTR ISAPI 확장 버퍼 오버플로우 보안 취약점
사례 연구: IIS .HTR ISAPI 필터 CVE-2002-0071
마이크로소프트 IIS/Site Server codebrws.asp 임의 파일 접근
사례 연구: Codebrws.asp 보안 취약점 CVE-1999-0739
마이크로소프트 SQL 서버 무작위 대입
사례 연구: 마이크로소프트 SQL 서버 무작위 대입(Bruteforce)
ActivePerl perIIIS.dll 버퍼 오버플로우 보안 취약점
사례 연구: ActivePerl perIIS.dll 버퍼 오버플로우
마이크로소프트 FrontPage/IIS 크로스 사이트 스크립트 shtml.dll
보안 취약점
사례 연구: Microsoft FrontPage XSS
요약
신속한 설명
관련 사이트 주소
FAQ
10장 NASL 확장과 테스트
소개
인클루드 파일을 이용한 NASL 확장
인클루드 파일
네서스 지식 베이스를 이용한 테스트 성능 확장
프로세스 실행과 결과 분석을 통한 테스트 성능 확장
TRUSTED 함수로 무엇을 할 수 있는가?
TRUSTED 테스트 만들기
요약
11장 네서스 환경의 확장 기능
소개
smb_nt.inc 인클루드 파일이 제공하는 윈도우용 테스트 함수
smb_hotfixes.inc 인클루드 파일이 제공하는 윈도우용 테스트 함수
로컬 테스팅 인클루드 파일이 제공하는 유닉스용 테스트 함수
요약
12장 메타스플로이트 확장 Ⅰ
소개
MSF 사용하기
msfweb 인터페이스
msfconsole 인터페이스
msfconsole의 실행
일반적인 msfconsole 명령
MSF 환경
msfconsole을 이용한 공격
msfcli 인터페이스
MSF 업데이트
요약
신속한 설명
관련 사이트 주소
FAQ
13장 메타스플로이트 확장 Ⅱ
소개
메타플로이트를 이용한 공격 모듈 개발
공격 벡터의 결정
오프셋 계산
제어 벡터 선택
리턴 주소 찾기
리턴 주소의 이용
제외 문자 판단하기
페이로드의 허용 길이 계산
Nop Sled
페이로드와 인코더의 선택
공격 모듈을 프레임워크에 통합시키기
프레임워크의 이해
공격 모듈 분석
함수 오버라이딩
요약
신속한 설명
관련 사이트 주소
FAQ
『해킹』
0x100 시 작
0x200 프로그래밍
0x210 프로그래밍이란 무엇인가?
0x220 프로그램 공격
0x230 일반 공격 기법
0x240 다중-사용자 파일 권한
0x250 메모리
0x251 메모리 선언
0x252 널(Null) 바이트 종료
0x253 프로그램 메모리 세그먼트
0x260 버퍼 오버플로우
0x270 스택 오버플로우
0x271 공격 코드 없이 공격
0x272 환경 변수 이용
0x280 힙 / bss 오버플로우
0x281 기본 힙 오버플로우
0x282 함수 포인터 덮어쓰기
0x290 포맷 스트링
0x291 포맷 스트링과 printf()
0x292 포맷 스트링 취약점
0x293 임의의 메모리 주소에서 읽기
0x294 임의의 메모리 주소에 쓰기
0x295 직접 인자에 접근
0x296 소멸자(dtor)를 이용한 우회법
0x297 전역 오프셋 테이블(Global Offset Table) 덮어쓰기
0x2a0 셸코드 작성법
0x2a1 자주 쓰이는 어셈블리 명령
0x2a2 리눅스 시스템 콜
0x2a3 Hello, World!
0x2a4 셸 실행 코드
0x2a5 단일 세그먼트에서 처리
0x2a6 널(Null) 바이트 제거
0x2a7 스택을 이용하여 더 작은 셸코드 만들기
0x2a8 출력가능한 ASCII 명령
0x2a9 다형성 셸코드
0x2aa ASCII 출력 가능한 다형성 셸코드
0x2ab Dissembler
0x2b0 나 libc로 돌아갈래
0x2b1 system()으로 리턴
0x2b2 libc 함수 연결
0x2b3 래퍼(wrapper) 프로그램 이용
0x2b4 libc를 통해 널 바이트 쓰기
0x2b5 하나의 호출로 여러 워드에 쓰기
0x300네트워킹
0x310 네트워킹이란 무엇인가?
0x311 OSI 모델
0x320 흥미로운 계층들
0x321 네트워크 계층
0x322 전송(Transport) 계층
0x323 데이터-링크 계층
0x330 네트워크 스니핑
0x331 능동 스니핑
0x340 TCP/IP 하이재킹
0x341 RST 하이재킹
0x350 서비스 거부 / Denial of Service
0x351 죽음의 핑 / Ping of Death
0x352 티어드랍 / Teardrop
0x353 핑 홍수 / Ping Flooding
0x354 증폭 공격 / Amplification Attacks
0x355 분산 DoS 홍수
0x356 SYN 홍수 / SYN Flooding
0x360 포트 스캐닝
0x361 스텔스 SYN 스캔
0x362 FIN, X-mas, Null 스캔
0x363 가짜 스캔 패킷 이용
0x364 유휴(Idle) 스캐닝
0x365 사전(事前) 방어 (Shroud)
0x400 암호학
0x410 정보 이론 / Information Theory
0x411 절대적 보안
0x412 원 타임 패드 / One-Time Pads
0x413 양자 키(Quantum Key) 분배
0x414 계산 불능 보안
0x420 알고리즘 실행 시간
0x421 점근 표기법 / Asymptotic Notation
0x430 대칭 암호 방식
0x431 Lov Grover의 양자 검색 알고리즘
0x440 비대칭 암호화
0x441 RSA
0x442 Peter Shor의 양자 인수분해 알고리즘
0x450 혼성 암호 / Hybrid Ciphers
0x451 Man-in-the-Middle 공격
0x452 SSH 프로토콜 호스트 핑거프린트 버전 이용
0x453 퍼지 핑거프린트
0x460 비밀번호 크래킹
0x461 사전 공격 / Dictionary Attacks
0x462 전수 조사 공격 / Brute-Force Attacks
0x463 해시 룩업(lookup) 테이블
0x464 비밀번호 확률 행렬
0x470 무선 802.11b 암호화
0x471 Wired Equivalent Privacy / WEP
0x472 RC4 스트림 암호 방식
0x480 WEP 공격
0x481 오프라인 전수 조사 공격
0x482 키스트림 재사용
0x483 IV-기반 복호화 사전 테이블
0x484 IP 리다이렉션
0x485 Fluhrer, Mantin, Shamir (FMS) 공격
0x500 마치며