Top

리눅스 보안 시스템 가이드 세트

  • 원서명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), 방화벽, 웹 프록시 등의 최신 보안 주제들을 설명하고, 실제 오픈 소스 툴을 사용해 보안 환경을 구축하는 방법도 설명한다. 방화벽을 관리하고, 테스트하고, 로깅하는 방법을 배워서, 자신의 네트웍과 외부 네트웍을 분리해 보자.

저자/역자 소개

[ 저자 소개 ]

마이클 래쉬
드래곤(Dragon) 침입 탐지와 방지 시스템을 개발한 엔테라시스 네트웍스(Enterasys Networks) 사의 보안 전문가다. 공개 소스 프로젝트에 자주 기여하고 있으며, psad, fwknop, fwsnort를 개발했다. 래쉬는 방화벽, 침입 탐지 시스템, 수동적 OS 핑거프린팅, 스노트 규칙 언어의 전문가다. 그는 『스노트 2.1 침입 탐지(Snort2.1 Intrusion Detection, Syngress, 2004)』의 공동 저자며, 『침입 방지와 능동적 응답(Intrusion Prevention and Active Response, Syngress, 2005)』의 저자다. 또 마이클 래쉬는 리눅스 저널, SysAdmin 매거진, login:에 보안 논문을 게재했다.

Patrick T. Lane
인터넷 기술 교육과 커리큘럼 개발의 선두 주자인 ProsoftTraining.com의 컨텐트 설계자이다. 그는 20개 이상의 기술 교육 과정을 작성했고, CIW Foundations와 CIW Internetworking Professional 시리즈를 기획했다. ProsoftTraining.com에 있는 동안, Patrick은 Intel, Novell, Microsoft 전문가들을 위한 Certified Internet Webmaster(CIW) 프로그램과 i-Accelerate 프로그램을 만드는 것에 도움을 줬다.
Patrick은 jCert Initiative Inc.와 ProsoftTraining.com을 비롯한 여러 기관에, mail, news, FTP, Web에 관한 기술을 컨설팅한다. 또한 그는 TCP/IP 인터네트워킹, LAN/WAN 솔루션, 네트웍과 운영 체제 보안, Linux와 Windows NT/2000 플랫폼에 대한 전문가로 네트웍 보안 컨설팅과 저술을 하고 있다. 그는 University of Phoenix/Apollo Group, Novell, Intel, NETg,WAVE technologies, KT Solutions, SmartForce, Futurekids 등에 컨설팅을 수행한 바 있다. Patrick은 CompTIA Network+ Advisory Committee에 참여하고 있고, Syngress Publishing의 E-mail Virus Protection Handbook(ISBN: 1-928994-23-7)의 공동 저자이기도 하다. 그의 책은 8개국에서 출판됐고, 그는 E-Business의 SmartForce Seminar Series와 Internet Protocol version 6의 Internet World PING Series, 그리고 Information Technology Association of America(ITAA)의 중요한 연사이기도 하다.
그는 석사 학위를 갖고 있다.

James Stanger
ProsoftTraining.com에서 리눅스, 보안, 서버 관리 인증 과정을 기획했다. 1997년에 Ph.D.를 받고 난 뒤, 그는 인터넷 서버 감사(audit)와 인터넷 서버 관리/보안에 대한 교육과정, 책, 기사등을 썼다. James는 IBM, Symantec, Evinci(www.evinci.org), Pomeroy(www.pomeroy.com), Securify(www.securify.com), Brigham Young University, California State, San Bernardino 등에 보안 컨설팅을 했다.
그는 방화벽 문제 해결, 침입 탐지, DNS, e-mail, Web 서버 구현의 전문가이다.
James는 Syngress Publishing에서 나온 E-mail Virus Protection Handbook(ISBN: 1-928994-23-7)의 기술 편집을 맡았고, NetG, Thompson/WAVE learning, ComputerPREP의 보안 과정에 대한 교육 설계자로 일했다. 리눅스 커뮤니티에서 왕성한 활동을 하는 James는 Linux Professional Institute(www.lpi.org), SAIR(www.linuxcertification.org), CompTIA Linux+(www.comptia.org) 보드에서 활동하고 있다. Linux Professional Institute(LPI) Advisory Council의 부의장으로서, 그는 LPI와 여러 회사(IBM, Compaq, Intel) 등을 연결하는 역할을 하고 있다.


[ 역자 소개 ]

민병호
서울대학교 컴퓨터공학부를 졸업하고 동 대학원에서 석사 학위를 취득했다. 컴퓨터 보안을 잘 하려면 네트워크, 컴퓨터 구조와 시스템, 프로그래밍 언어, 데이터베이스, 인공지능 등 다양한 컴퓨터 분야를 섭렵해야 한다고 믿고 보안 전문가가 되기 위해 연구/개발에 힘쓰고 있다. 역서로 에이콘출판사에서 펴낸 『TCP/IP 완벽 가이드』, 『새로 보는 프로그래밍 언어』, 『크라임웨어』가 있다.

강유
대학 시절 컴퓨터 보안의 아름다움에 깊이 빠져 서울대학교 보안 동아리 ‘가디언’의 창립 멤버로 참여했고 초대 회장을 지냈다. 다양한 보안 소프트웨어와 멀티미디어 소프트웨어 개발에 참여했으며 웹 모의 해킹과 보안 체계 구축을 비롯한 여러 컨설팅을 수행한 경험이 있다. 그가 저술하고 번역한 보안 서적들은 국내의 많은 보안 전문가들을 키우고 관련 산업을 발전시키는 데 크게 기여했다. 보안 영역에서 주 관심 분야는 웹 애플리케이션 보안, 침투 테스트(PT), 네트워크 보안 시스템 설계와 구축이다. 대표적인 역서로 『실전해킹 절대내공』, 『구글 해킹』, 『조엘이 엄선한 소프트웨어 블로그 베스트 29선』 등이 있으며 저서로 『강유의 해킹 & 보안 노하우』가 있다.

목차

목차
  • 『리눅스 방화벽』
  • 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 공격
    • 네트워크 계층 응답
      • 네트워크 계층 필터링 응답
      • 네트워크 계층 임계치 응답
      • 계층 간 응답의 결합
  • 03장 전송 계층 공격과 방어
    • iptables를 이용한 전송 계층 헤더의 기록
      • TCP 헤더의 기록
      • UDP 헤더의 기록
    • 전송 계층 공격 정의
    • 전송 계층 악용
      • 포트 스캔
      • 포트 스윕
      • TCP 순서 번호 예측 공격
      • SYN 플러딩
    • 전송 계층 응답
      • TCP 응답
      • UDP 응답
      • 방화벽 규칙과 라우터 ACL
  • 04장 애플리케이션 계층 공격과 방어
    • iptables를 이용한 애플리케이션 계층 문자열 매칭
      • 문자열 매칭 확장의 동작
      • 비출력 애플리케이션 계층 데이터의 매칭
    • 애플리케이션 계층 공격 정의
    • 애플리케이션 계층 악용
      • 스노트 서명
      • 버퍼 오버플로우 공격
      • SQL 인젝션 공격
      • 그레이 매터 해킹(Gray Matter Hacking)
    • 암호화와 애플리케이션 인코딩
    • 애플리케이션 계층 응답
  • 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 보고
    • 정리
  • 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 패킷 필터링
      • 미지원 스노트 규칙 옵션
    • 정리
  • 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를 사용한 메타스플로잇 갱신 저지
    • 정리
  • 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

도서 오류 신고

도서 오류 신고

에이콘출판사에 관심을 가져 주셔서 고맙습니다. 도서의 오탈자 정보를 알려주시면 다음 개정판 인쇄 시 반영하겠습니다.

오탈자 정보는 다음과 같이 입력해 주시면 됩니다.

(예시) p.100 아래에서 3행 : '몇일'동안 -> 며칠동안