리눅스 보안 시스템 가이드 세트
- 원서명Linux Firewalls: Attack Detection and Response with iptables, psad, and fwsnort, Hack Proofing Linux : A Guide to Open Source Security
- 지은이마이클 래쉬, James Stanger, Patrick T. Lane
- 옮긴이민병호, 강유
- ISBN : 9788960770560
- 49,000원
- 2010년 01월 15일 펴냄 (절판)
- 페이퍼백 | 1,084쪽 | 188*250mm
- 시리즈 : 해킹과 보안
판매처
- 현재 이 도서는 구매할 수 없습니다.
책 소개
[ 세트 구성: 전2권 ]
1) 『리눅스 방화벽: 오픈소스를 활용한 철통 같은 보안』
2) 『리눅스 해킹 퇴치 비법』
『리눅스 방화벽』 소개
해커 침입을 적시에 탐지하고 완벽히 차단하기 위해, iptables, psad, fwsnort를 이용한 철통 같은 방화벽 구축과 보안에 필요한 모든 내용을 상세하고 흥미롭게 다룬 리눅스 시스템 관리자의 필독서!
시스템 관리자는 자신이 관리하는 네트워크에 매일 노출되는 새로운 보안 취약점을 미리 대비해야 한다. 방화벽과 침입 탐지 시스템(IDS)은 접근을 사전에 막고 공격으로 보이는 네트워크 트래픽을 감시할 수 있게 해주는 중요한 도구다.
『리눅스 방화벽: 오픈소스를 활용한 철통 같은 보안』에서는 리눅스 커널에 내장되는 iptables 방화벽과 넷필터 프레임워크의 기술적인 면을 상세히 다루며, 상용 도구에 필적하는 강력한 필터링, 네트워크 주소 변환(NAT), 상태 추적, 애플리케이션 계층 검사 기능을 어떻게 제공하는지 알려준다. psad와 fwsnort를 함께 사용해서 iptables를 IDS로 배치하는 방법과 fwknop를 통해 iptables 위에 강력한 수동적 인증 계층을 생성하는 방법도 알려준다.
『리눅스 해킹 퇴치 비법』 소개
오픈 소스 보안 툴을 정복하기 위한 완전 가이드. 오픈 소스 툴을 사용해서, 호스트 보안, 네트웍 보안, 경계선 보안을 구현하는 방법을 설명한다. 호스트 보안, 안티바이러스, 스캐닝, 침입 탐지 시스템(IDS), 스니퍼, One Time Password, Kerberos, SSH, 가상 사설망(VPN), 방화벽, 웹 프록시 등의 최신 보안 주제들을 설명하고, 실제 오픈 소스 툴을 사용해 보안 환경을 구축하는 방법도 설명한다. 방화벽을 관리하고, 테스트하고, 로깅하는 방법을 배워서, 자신의 네트웍과 외부 네트웍을 분리해 보자.
1) 『리눅스 방화벽: 오픈소스를 활용한 철통 같은 보안』
2) 『리눅스 해킹 퇴치 비법』
『리눅스 방화벽』 소개
해커 침입을 적시에 탐지하고 완벽히 차단하기 위해, iptables, psad, fwsnort를 이용한 철통 같은 방화벽 구축과 보안에 필요한 모든 내용을 상세하고 흥미롭게 다룬 리눅스 시스템 관리자의 필독서!
시스템 관리자는 자신이 관리하는 네트워크에 매일 노출되는 새로운 보안 취약점을 미리 대비해야 한다. 방화벽과 침입 탐지 시스템(IDS)은 접근을 사전에 막고 공격으로 보이는 네트워크 트래픽을 감시할 수 있게 해주는 중요한 도구다.
『리눅스 방화벽: 오픈소스를 활용한 철통 같은 보안』에서는 리눅스 커널에 내장되는 iptables 방화벽과 넷필터 프레임워크의 기술적인 면을 상세히 다루며, 상용 도구에 필적하는 강력한 필터링, 네트워크 주소 변환(NAT), 상태 추적, 애플리케이션 계층 검사 기능을 어떻게 제공하는지 알려준다. psad와 fwsnort를 함께 사용해서 iptables를 IDS로 배치하는 방법과 fwknop를 통해 iptables 위에 강력한 수동적 인증 계층을 생성하는 방법도 알려준다.
『리눅스 해킹 퇴치 비법』 소개
오픈 소스 보안 툴을 정복하기 위한 완전 가이드. 오픈 소스 툴을 사용해서, 호스트 보안, 네트웍 보안, 경계선 보안을 구현하는 방법을 설명한다. 호스트 보안, 안티바이러스, 스캐닝, 침입 탐지 시스템(IDS), 스니퍼, One Time Password, Kerberos, SSH, 가상 사설망(VPN), 방화벽, 웹 프록시 등의 최신 보안 주제들을 설명하고, 실제 오픈 소스 툴을 사용해 보안 환경을 구축하는 방법도 설명한다. 방화벽을 관리하고, 테스트하고, 로깅하는 방법을 배워서, 자신의 네트웍과 외부 네트웍을 분리해 보자.
목차
목차
- 『리눅스 방화벽』
- 01장 iptables가 제공하는 보호
- iptables
- iptables를 이용한 패킷 필터링
- 테이블
- 체인
- 매치
- 타겟
- iptables의 설치
- 커널 설정
- 필수적인 넷필터 컴파일 옵션
- 커널 설정의 완료
- 로딩 가능 커널 모듈 대 고유 컴파일과 보안
- 보안과 최소 컴파일
- 커널 컴파일과 설치
- iptables 사용자 바이너리의 설치
- 기본 iptables 정책
- 정책 요구사항
- iptables.sh 스크립트 프리앰플(Preamble)
- INPUT 체인
- OUTPUT 체인
- FORWARD 체인
- 네트워크 주소 변환(NAT, Network Address Translation)
- 정책 활성화
- iptables-save와 iptables-restore
- 정책 시험: TCP
- 정책 시험: UDP
- 정책 시험: ICMP
- 정리
- 02장 네트워크 계층 공격과 방어
- iptables를 이용한 네트워크 계층 헤더의 기록
- IP 헤더의 기록
- 네트워크 계층 공격 정의
- 네트워크 계층 악용
- Nmap ICMP Ping
- IP 스푸핑
- IP 단편화
- 작은 TTL 값
- 스머프 공격
- DDoS 공격
- 리눅스 커널 IGMP 공격
- 네트워크 계층 응답
- 네트워크 계층 필터링 응답
- 네트워크 계층 임계치 응답
- 계층 간 응답의 결합
- iptables를 이용한 네트워크 계층 헤더의 기록
- 03장 전송 계층 공격과 방어
- iptables를 이용한 전송 계층 헤더의 기록
- TCP 헤더의 기록
- UDP 헤더의 기록
- 전송 계층 공격 정의
- 전송 계층 악용
- 포트 스캔
- 포트 스윕
- TCP 순서 번호 예측 공격
- SYN 플러딩
- 전송 계층 응답
- TCP 응답
- UDP 응답
- 방화벽 규칙과 라우터 ACL
- iptables를 이용한 전송 계층 헤더의 기록
- 04장 애플리케이션 계층 공격과 방어
- iptables를 이용한 애플리케이션 계층 문자열 매칭
- 문자열 매칭 확장의 동작
- 비출력 애플리케이션 계층 데이터의 매칭
- 애플리케이션 계층 공격 정의
- 애플리케이션 계층 악용
- 스노트 서명
- 버퍼 오버플로우 공격
- SQL 인젝션 공격
- 그레이 매터 해킹(Gray Matter Hacking)
- 암호화와 애플리케이션 인코딩
- 애플리케이션 계층 응답
- iptables를 이용한 애플리케이션 계층 문자열 매칭
- 05장 psad 소개
- 역사
- 방화벽 로그를 분석하는 이유
- psad의 기능
- psad 설치
- psad 관리
- psad의 시작과 종료
- 데몬 프로세스의 유일성
- iptables 정책 설정
- syslog 설정
- whois 클라이언트
- psad 설정
- /etc/psad/psad.conf
- /etc/psad/auto_dl
- /etc/psad/signatures
- /etc/psad/snortruledl
- /etc/psad/ip_options
- /etc/psad/pf.os
- 정리
- 06장 psad 동작: 수상한 트래픽 탐지
- psad를 이용한 포트 스캔 탐지
- TCP connect() 스캔
- TCP SYN이나 반개방 스캔
- TCP FIN 스캔, XMAS 스캔, NULL 스캔
- UDP 스캔
- psad를 이용한 경고와 보고
- psad 메일 경고
- psad syslog 보고
- 정리
- psad를 이용한 포트 스캔 탐지
- 07장 psad 고급 주제: 서명 매칭에서 OS 핑거프린팅까지
- 스노트 규칙을 사용한 공격 탐지
- ipEye 포트 스캐너 탐지
- LAND 공격 탐지
- TCP 포트 0 공격 탐지
- TTL 0 트래픽 탐지
- 나프타 서비스 거부 공격 탐지
- 소스 라우팅 시도 탐지
- 윈도우 메신저 팝업 스팸 탐지
- psad 서명 갱신
- OS 핑거프린팅
- Nmap을 이용한 능동적 OS 핑거프린팅
- p0f를 이용한 수동적 OS 핑거프린팅
- DShield 보고
- DShield 보고 형식
- DShield 보고서 예제
- psad 상태 출력 보기
- 포렌식 모드
- 상세/디버그 모드
- 정리
- 스노트 규칙을 사용한 공격 탐지
- 08장 psad를 이용한 능동적 응답
- 침입 방지와 능동적 응답
- 능동적 응답의 트레이드오프
- 공격의 종류
- 긍정 오류
- psad를 이용해 공격에 응답하기
- 기능
- 설정 변수
- 능동적 응답의 예
- 능동적 응답 설정
- SYN 스캔 응답
- UDP 스캔 응답
- Nmap 버전 스캔
- FIN 스캔 응답
- 스캔의 악의적인 스푸핑
- 써드파티 도구와 psad 능동적 응답의 통합
- 명령 행 인터페이스
- 스와치와의 통합
- 기타 스크립트와의 통합
- 정리
- 09장 스노트 규칙을 iptables 규칙으로 변환
- fwsnort를 사용해야 하는 이유
- 철저한 방어
- 목표 기반 침입 탐지와 네트워크 계층 비단편화
- 적은 자원 사용
- 인라인 응답
- 서명 변환 예제
- Nmap 명령 시도 서명
- 블리딩 스노트 “방코스 트로이목마” 서명
- PGPNet 연결 시도 서명
- fwsnort의 스노트 규칙 해석
- 스노트 규칙 헤더 변환
- 스노트 규칙 옵션 변환: iptables 패킷 로깅
- 스노트 옵션과 iptables 패킷 필터링
- 미지원 스노트 규칙 옵션
- 정리
- fwsnort를 사용해야 하는 이유
- 10장 fwsnort 배치
- fwsnort 설치
- fwsnort 실행
- fwsnort 설정 파일
- fwsnort.sh의 구조
- fwsnort의 명령 행 옵션
- fwsnort의 실제 동작
- Trin00 DDoS 도구의 탐지
- 리눅스 쉘코드 트래픽의 탐지
- 두마도르(Dumador) 트로이목마의 탐지와 대응
- DNS 캐시 오염 공격의 탐지와 대응
- 허용 목록과 차단 목록 설정
- 정리
- 11장 psad와 fwsnort의 결합
- fwsnort 탐지와 psad 동작의 결합
- WEB-PHP Setup.php access 공격
- 다시 보는 능동적 응답
- psad와 fwsnort
- fwsnort가 탐지한 공격으로 psad 응답을 제한
- fwsnort와 psad 응답의 결합
- DROP과 REJECT 타겟
- 메타스플로잇 갱신 무력화
- 메타스플로잇 갱신 기능
- 서명 개발
- fwsnort와 psad를 사용한 메타스플로잇 갱신 저지
- 정리
- fwsnort 탐지와 psad 동작의 결합
- 12장 포트 노킹과 단일 패킷 권한 부여
- 공격 수단 축소
- 제로 데이 공격 문제
- 제로 데이 공격 발견
- 서명 기반 탐지의 영향
- 철저한 방어
- 포트 노킹
- Nmap과 목표 식별 단계 무력화하기
- 공유 포트 노킹 나열
- 암호화된 포트 노킹 나열
- 포트 노킹의 구조적 한계
- 단일 패킷 권한 부여
- 포트 노킹 한계점 해결
- SPA의 구조적 한계
- 불분명함을 이용한 보안
- 정리
- 13장 fwknop 소개
- fwknop 설치
- fwknop 설정
- /etc/fwknop/fwknop.conf
- /etc/fwknop/access.conf
- 예제 /etc/fwknop/access.conf 파일
- fwknop SPA 패킷 형식
- fwknop 배치
- 대칭 암호화를 이용한 SPA
- 비대칭 암호화를 이용한 SPA
- 재전송 공격 탐지와 차단
- SPA 패킷 출발지 주소 스푸핑
- fwknop OpenSSH 통합 패치
- Tor를 이용한 SPA
- 정리
- 14장 iptables 로그 시각화
- 비일상적인 활동 탐지
- Gnuplot
- Gnuplot 그래프 지시어
- psad와 Gnuplot의 결합
- AfterGlow
- iptables 공격 시각화
- 포트 스캔
- 포트 스윕
- 슬래머 웜
- 나치 웜
- 침투된 시스템으로부터의 아웃바운드 연결
- 정리
- 부록 A 공격 스푸핑
- 연결추적
- exploit.rules 트래픽의 스푸핑
- 스푸핑된 UDP 공격
- 연결추적
- 부록 B 완전한 fwsnort 스크립트의 예
- 『리눅스 해킹 퇴치 비법』
- Chapter 1 오픈 소스 보안 소개
- 소개
- GNU General Public License 사용하기
- Soft Skills: 오픈 소스 잘 다루기
- RPM과 Tarball 중 어느 것을 사용해야 하나?
- 오픈 소스 소프트웨어 가져오기
- 간략한 암호화 소개
- 공개키 및 신뢰 관계
- 공개키 검증은 건너 뛰기
- GPG를 사용해서 Tarball 패키지의 서명 검증하기
- 감사 절차
- Chapter 2 운영 체제 견고히 하기
- 소개
- 운영 체제 업데이트하기
- 관리 문제 처리하기
- 필요없는 서비스와 포트를 수동으로 제거하기
- 포트 잠그기
- Bastille을 사용한 시스템 보안 강화
- Bastille 설정 취소(Undo)하기
- 로그 파일 관리하기
- 로그 기능 향상시키기
- Chapter 3 시스템 스캐닝과 검사(probing)
- 소개
- AntiVir 프로그램을 이용한 바이러스 검사
- Zombie Zapper를 사용해서 DDoS 공격 소프트웨어 색출
- Gnome Service Scan 포트 스캐너를 사용한 시스템 포트 스캔
- Nmap 사용하기
- Cheops를 사용한 네트웍 모니터링
- Nessus를 사용해서 데몬의 보안 검사
- Chapter 4 침입 탐지 시스템(IDS) 구현하기
- 소개
- IDS의 기법과 유형 이해하기
- Tripwire를 설치, 운영 체제의 파일 변화 감지
- Snort Add-On 사용하기
- Chapter 5 스니퍼를 사용해서 네트웍 문제 해결하기
- 소개
- 패킷 분석과 TCP 핸드셰이크 (Handshake) 이해하기
- Tcpdump를 사용해서 필터 생성하기
- Ethereal을 사용해서 네트웍 패킷 캡쳐하기
- EtherApe를 사용해서 호스트간의 네트웍 트래픽 보기
- Chapter 6 네트웍 인증과 암호화
- 소개
- 네트웍 인증을 이해
- 인증과 암호화 솔루션 만들기
- One-Time Passwords (OTP와 OPIE) 구현하기
- Kerberos Version 5 구현하기
- kadmin 이용한 Kerberos 클라이언트 비밀번호 만들기
- kadmin을 이용한 Kerberos 클라이언트 신뢰 관계 설정
- Kerberos 호스트 데몬에 로그온
- Chapter 7 암호화를 통해 스니핑 공격 방어
- 소개
- 네트웍 암호화 이해하기
- 암호화되지 않은 네트웍 트래픽 캡쳐, 분석
- OpenSSH를 이용하여 두 호스트간의 트래픽 암호화
- OpenSSH 설치하기
- SSH 설정하기
- 일반 네트웍에서 안전한 데이터 채널을 구현해 주는 SSH 구현하기
- 암호화된 네트웍 트래픽 캡쳐 • 분석
- Chapter 8 가상 사설망(Virtual Private Network) 만들기
- 소개
- VPN을 사용한 안전한 터널링 구현
- IP Security Architecture 설명
- FreeS/WAN을 이용하여 VPN 만들기
- Chapter 9 Ipchains와 Iptables를 이용하여 방화벽 구축하기
- 소개
- 방화벽은 왜 필요한가
- IP 포워딩과 마스커레이딩 사용하기
- 네트웍 패킷을 필터링하는 방화벽 설정
- 리눅스 방화벽에서 Tables와 Chains 이해하기
- 방화벽에서 패킷 로그 남기기
- 방화벽 설정하기
- 대역폭 사용량 계산하기
- 방화벽 스크립트와 그래픽 방화벽 유틸리티 사용하기
- Chapter 10 Squid 웹 프록시 캐시 서버 사용하기
- 소개
- 프록시 서버의 장점
- 패킷 필터와 프록시 서버 구분하기
- Squid 웹 프록시 서버 구현하기
- 프록시 클라이언트 설정하기
- Chapter 11 방화벽 관리하기
- 소개
- 방화벽 테스트하기
- Telnet, Ipchains, Netcat, SendIP를 사용하여 방화벽 검사하기
- 방화벽 로깅(Logging), 블로킹(Blocking), 경고(Alert) 옵션 이해하기
- Fwlogwatch
- Fwlogwatch 자동화하기
- Fwlogwatch에서 CGI 스크립트 사용하기
- 기타 방화벽 로깅 툴 다운받기
- Appendix A Bastille Log