PART Ⅰ 정보 보안 기초 CHAPTER 1 정보 보안이란 무엇인가? 정보 보안의 정의 ... 32 보안의 간략한 역사 ... 33 물리적 보안 ... 33 통신 보안 ... 34 방출 보안 ... 36 컴퓨터 보안 ... 36 네트워크 보안 ... 38 정보 보안 ... 38 왜 보안은 프로세스이고, 제품이 아닌가 ... 40 안티 바이러스 소프트웨어 ... 40 접근 통제 ... 40 방화벽 ... 41 스마트 카드 ... 41 생물 측정 ... 41 침입 탐지 ... 42 정책 관리 ... 42 취약성 정밀조사 ... 42 암호화 ... 42 물리적 보안 메커니즘 ... 43 CHAPTER 2 공격의 형태 접근 공격 ... 46 스누핑 ... 47 도청 ... 48 가로채기 ... 48 어떻게 접근 공격이 수행되나 ... 49 수정 공격 ... 52 변경 ... 52 삽입 ... 53 삭제 ... 53 어떻게 수정 공격이 이루어지나 ... 53 서비스 거부 공격 ... 54 정보에 대한 접근 거부 ... 54 어플리케이션에 대한 접근 거부 ... 54 시스템에 대한 접근 거부 ... 55 통신에 대한 접근 거부 ... 55 어떻게 서비스 거부 공격이 이루어지나 ... 55 부인 공격 ... 57 위장 ... 57 사건 거부 ... 57 어떻게 부인 공격이 이루어지는가? ... 57 CHAPTER 3 정보 보안 서비스 비밀성 ... 60 파일의 비밀성 ... 60 전송중인 정보의 비밀성 ... 62 트래픽 흐름 비밀성 ... 62 보호될 수 있는 공격 ... 63 무결성 ... 64 파일의 무결성 ... 64 정보 전송의 무결성 ... 65 보호될 수 있는 공격 ... 65 가용성 ... 65 백업 ... 66 장애 복구 ... 66 재난 복구 ... 66 예방될 수 있는 공격 ... 66 책임추적성 ... 67 식별과 인증 ... 67 감사 ... 69 보호될 수 있는 공격 ... 69 PART Ⅱ 기초 작업 CHAPTER 4 정보 보안에서의 법률적인 문제 미국 형사상의 법률 ... 74 컴퓨터 사기와 기만(18 US Code 1030) ... 74 신용카드 사기(18 US Code 1029) ... 75 저작권(18 US Code 2319) ... 75 가로채기(18 US Code 2511) ... 76 전자적인 정보에 접근(18 US Code 2701) ... 76 다른 범죄의 법규 ... 77 주 법률 ... 77 다른 나라에서 법률의 예 ... 81 호주 ... 82 네덜란드 ... 82 영국 ... 82 기소 ... 83 증거 수집 ... 83 법률 집행기관과의 접촉 ... 84 민사상의 문제 ... 85 고용인 문제 ... 85 다운스트림 책임 ... 86 프라이버시 문제 ... 87 고객 정보 ... 87 보건 정보 ... 88 CHAPTER 5 정책 정책은 중요하다 ... 92 보안은 어떻게 정의되어야 하는가 ... 92 모든 사람을 같은 페이지에 두는 것 ... 93 정책의 유형 ... 93 정보 정책 ... 93 보안 정책 ... 96 접근 통제 ... 96 감사 ... 97 컴퓨터 사용 정책 ... 100 인터넷 사용 정책 ... 102 메일 정책 ... 102 사용자 관리 절차 ... 103 시스템 관리 절차 ... 104 사건 대응 절차 ... 106 설정 관리 절차 ... 109 설계 방법론 ... 109 재난 복구 계획 ... 110 적절한 정책을 생성하는 것 ... 112 무엇이 중요한가를 정의하는 것 ... 113 받아들일만한 행도을 정의하는 것 ... 113 투자자를 확인하는 것 ... 113 적절한 개요를 정의하는 것 ... 114 정책 개발 ... 114 정책의 배치 ... 114 주식의 매입으로 이익을 얻는 것 ... 115 교육 ... 115 실행 ... 115 정책을 효과적으로 사용하는 것 ... 116 새로운 시스템과 프로젝트 ... 116 현재의 시스템과 프로젝트 ... 116 감사 ... 116 정책 검토 ... 117 CHAPTER 6 위험 관리 위험이란 무엇인가? ... 120 취약성 ... 121 위협 ... 121 위협 + 취약성 = 위험 ... 127 조직에 대한 위험을 확인하는 것 ... 127 취약성을 확인하는 것 ... 128 실제 위협을 확인하는 것 ... 128 대책을 검토하는 것 ... 129 위험을 확인하는 것 ... 130 위험을 측정하는 것 ... 131 돈 ... 131 시간 ... 132 자원 ... 133 평판 ... 133 손실된 업무 ... 134 위험을 측정하는 것에 대한 방법론 ... 134 CHAPTER 7 정보 보안 프로세스 평가 ... 139 네트워크 ... 142 물리적인 보안 ... 143 정책과 절차 ... 145 사전 대책 ... 146 인식 ... 147 사람 ... 148 작업부하 ... 148 사고방식 ... 149 고수 ... 149 비즈니스 ... 150 평가 결과 ... 150 정책 ... 151 개발한 정책의 순서를 선택하는 것 ... 151 현재의 정책을 갱신하는 것 ... 152 실행 ... 153 보안 리포팅 시스템 ... 153 인증 시스템 ... 155 인터넷 보안 ... 155 침입 탐지 시스템 ... 156 암호화 ... 157 물리적인 보안 ... 158 직원 ... 158 인식 훈련 ... 159 고용인 ... 159 관리자 ... 160 개발자 ... 160 경영진 ... 160 보안 직원 ... 161 감사 ... 161 정책 고수 감사 ... 162 정기적이고 새로운 프로젝트 평가 ... 162 침투 시험 ... 163 CHAPTER 8 정보 보안 최상의 사례 관리의 보안 ... 166 정책과 절차 ... 166 자원 ... 168 책임 ... 169 교육 ... 170 비상 계획 ... 173 보안 프로젝트 계획 ... 175 기술적인 보안 ... 176 네트워크 연결 ... 176 바이러스 보호 ... 178 인증 ... 178 감사 ... 179 암호화 ... 180 백업과 복구 ... 181 물리적 보안 ... 182 PART Ⅲ 실제적인 솔루션 CHAPTER 9 인터넷 아키텍처 제공하는 서비스 ... 188 메일 ... 188 웹 ... 188 인터넷에 대한 내부의 접근 ... 189 내부의 시스템에 대한 외부의 접근 ... 190 통제 서비스 ... 190 제공되지 않는 서비스 ... 192 통신 아키텍처 ... 193 단일 - 라인 접근 ... 194 단일 ISP에 대한 다중 - 라인 접근 ... 195 다중의 ISP에 대한 다중 - 라인 접근 ... 198 비무장 지대 ... 200 DMZ 정의 ... 200 DMZ에 놓일 시스템 ... 201 적절한 DMZ 아키텍처 ... 204 방화벽 ... 207 방화벽의 형태 ... 208 방화벽 설정 ... 212 방화벽 규정 셋 설계 ... 215 네트워크 주소 변환 ... 215 네트워크 주소 변환은 무엇인가? ... 216 사설 클래스 주소 ... 216 정적 NAT ... 217 동적 NAT ... 218 파트너 네트워크 ... 219 파트너 네트워크의 사용 ... 220 셋업 ... 221 주소 지정 문제 ... 222 CHAPTER 10 가상 사설망 가상 사설망 정의 ... 224 사용자 VPN ... 226 사용자 VPN의 이득 ... 227 사용자 VPN의 문제 ... 228 사용자 VPN의 관리 ... 230 사이트 VPN ... 230 사이트 VPN의 이점 ... 231 사이트 VPN의 문제 ... 231 사이트 VPN의 관리 ... 232 표준 VPN 기술 ... 233 VPN 서버 ... 234 암호화 알고리즘 ... 236 인증 시스템 ... 237 CHAPTER 11 전자상거래 보안 요구 전자상거래 서비스 ... 240 전자상거래 서비스와 일반 DMZ 서비스의 차이점 ... 241 전자상거래 서비스의 예 ... 242 비밀 정보의 제공 ... 243 정보의 배포 ... 244 가용성 ... 244 비즈니스 - 대 - 소비자 문제 ... 244 비즈니스 - 대 - 비즈니스 문제 ... 245 세계 시간 ... 246 고객의 편안함 ... 246 가동 휴지 시간의 비용 ... 247 가용성 문제의 해결 ... 248 클라이언트 - 측 보안 ... 248 통신 보안 ... 249 클라이언트 시스템에 정보를 저장하는 것 ... 250 거부 ... 251 서버 - 측 보안 ... 252 서버에 저장된 정보 ... 252 공격으로부터 서버를 보호하는 것 ... 252 어플리케이션 보안 ... 258 적절한 어플리케이션 설계 ... 258 적절한 프로그래밍 기술 ... 260 세상에 코드를 보이는 것 ... 260 설정 관리 ... 261 데이터베이스 서버 보안 ... 262 데이터베이스 위치 ... 262 전자상거래 서버와의 통신 ... 263 내부의 접근 보호 ... 264 전자상거래 아키텍처 ... 265 서버 위치와 연결 ... 265 가용성 ... 266 취약성 조사 ... 267 감사 정보와 문제 탐지 ... 267 CHAPTER 12 암호화 암호화 개념 ... 270 암호화 용어 ... 271 암호화에 대한 공격 ... 272 비공개 키 암호화 ... 273 비공개 키 암호화는 무엇인가? ... 273 대체 암호 ... 274 일회용 난수표 ... 275 데이터 암호화 표준 ... 276 트리플(Triples) DES ... 279 패스워드 암호화 ... 280 진보적인 암호화 표준 : Rijndael ... 281 다른 비공개 키 알고리즘 ... 282 공개 키 암호화 ... 283 공개 키 암호화는 무엇인가? ... 283 Diffie-Hellman 키 교환 ... 284 RSA ... 286 RSA 키 생성 ... 287 처리된 RSA 예 ... 287 다른 공개 키 알고리즘 ... 288 디지털 서명 ... 289 디지털 서명이란 무엇인가? ... 289 안전한 해쉬 함수 ... 291 키 관리 ... 291 키 생성 ... 292 키 배포 ... 293 키 인증 ... 294 키 보호 ... 295 키 폐지 ... 296 신뢰 ... 296 계층 ... 297 CA 설정 ... 298 웹 ... 299 CHAPTER 13 해커 테크닉 해커의 동기 ... 304 도전 ... 305 탐욕 ... 305 악의적 의도 ... 306 역사적인 해킹의 기술 ... 307 공개 공유 ... 307 잘못된 패스워드 ... 309 무분별한 프로그래밍 ... 310 사회적 공학 ... 311 버퍼 오퍼플로우 ... 312 서비스 거부 ... 314 표적이 되지 않는 해커의 방법 ... 319 대상 ... 320 수색 ... 320 공격 방법 ... 322 손상된 시스템의 사용 ... 323 표적이 되는 해커의 방법 ... 329 대상 ... 329 수색 ... 329 공격 방법 ... 333 손상된 시스템의 사용 ... 335 CHAPTER 14 침입 탐지 침입 탐지 시스템의 종류 ... 339 호스트 기반 IDS ... 340 네트워크 기반 IDS ... 341 한가지 유형의 IDS가 더 좋은가? ... 343 IDS 설정하기 ... 343 IDS의 목표 정하기 ... 343 감시할 대상 선택하기 ... 345 대응 방법 선택하기 ... 348 Threshold 설정하기 ... 352 시스템 구현 ... 354 IDS 관리 ... 354 IDS가 무엇을 알려줄 수 있는지를 이해하기 ... 355 IDS가 무엇을 알려주고 있는지를 이해하기 ... 355 의심스러운 이벤트 조사 ... 359 PART Ⅳ 특정 플랫폼에서의 구현 CHAPTER 15 Unix의 보안 문제 시스템 구축 ... 366 시동 파일 ... 366 허용할 서비스 ... 367 시스템 환경설정 파일 ... 373 패치 ... 379 사용자 관리 ... 379 시스템에 사용자 추가하기 ... 379 시스템에서 사용자 제거하기 ... 382 시스템 관리 ... 382 시스템 감사 ... 382 로그(Log)파일 ... 383 숨겨진 파일 ... 384 SUID와 SGID 파일 ... 384 World-Writable 파일 ... 385 의심스러운 징후 찾기 ... 385 Netstat ... 386 CHAPTER 16 Windows NT의 보안 문제 시스템 설정 ... 392 레지스트리 설정 ... 392 시스템 환경 설정 ... 392 사용자 관리 ... 401 시스템에 사용자 추가하기 ... 401 파일 허가 설정 ... 402 시스템에서 사용자 삭제하기 ... 402 시스템 관리 ... 402 시스템 감사 ... 403 로그 파일 ... 404 의심스러운 표시 관찰하기 ... 404 CHAPTER 17 Windows 2000의 보안 문제 시스템의 설정 ... 408 로컬 보안 정책 설정 ... 408 시스템 구성 ... 412 사용자 관리 ... 419 시스템에 사용자 추가하기 ... 419 파일 허가 설정 ... 422 시스템에서 사용자 제거 ... 422 시스템 관리 ... 422 Secedit 명령어 ... 423 분석 ... 423 시스템 감사 ... 426 로그 파일 ... 428 의심스러운 표시 찾기 ... 428 PART Ⅴ 부록 APPENDIX A 프로세스 프로젝트 계획 평가 단계 ... 435 계획 ... 436 정보 수집 ... 437 분석 ... 437 발표 ... 437 중요한 보완 단계 ... 438 평가 ... 439 정책 ... 439 실행 ... 439 훈련 ... 439 감사 ... 440 업데이트 단계 ... 440 평가 ... 440 정책 ... 441 실행 ... 441 훈련 ... 441 감사 ... 442 작업 진행 단계 ... 442 평가 ... 442 정책 ... 442 실행 ... 442 훈련 ... 443 감사 ... 443 APPENDIX B Unix vs Windows : 어떤 것이 더 안전한가? 시간의 변화 ... 446 바이러스, 트로이안 목마, 그리 웜 ... 448 운영 체제의 취약점 vs 응용 프로그램의 취약성 ... 449 대화형 vs 비대화형 ... 450 소스 코드 또는 비소스 코드 ... 451 전문 기술 ... 452 결론 ... 452 APPENDIX C 보안에 대해서 더 배울수 있는 자료들 APPENDIX D 사고 대응 절차 테스트 시나리오 시나리오 1 - 웹 페이지 해킹 ... 458 초기 징후 ... 458 사건의 진상 ... 458 팀의 발견 ... 459 시나리오 종료 ... 459 변형 ... 459 추천하는 사용법 ... 460 시나리오 2 - 원인 불명의 높은 트래픽 양 ... 460 초기 징후 ... 460 사건의 진상 ... 460 팀의 발견 ... 461 시나리오 종료 ... 461 추천하는 사용법 ... 461 시나리오 3 - 정체 불명의 사람에 의해 변경된 파일 ... 462 초기 징후 ... 462 사건의 진상 ... 462 팀의 발견 ... 462 시나리오 종료 ... 462 추천하는 사용법 ... 462 시나리오 4 - 시스템에서 발견된 권한이 없는 서비스 ... 463 초기 징후 ... 463 사건의 진상 ... 463 팀의 발견 ... 463 시나리오 종료 ... 463 변형 ... 464 추천하는 사용법 ... 464 시나리오 5 - 시스템 로그 파일 분실 ... 464 초기 징후 ... 464 사건의 진상 ... 465 팀의 발견 ... 465 시나리오 종료 ... 465 추천하는 사용법 ... 465 시나리오 6 - 느려진 네트워크 ... 466 초기 징후 ... 466 사건의 진상 ... 466 팀의 발견 ... 466 시나리오 종료 ... 466 추천하는 사용법 ... 467 시나리오 7 - 내부 라우터 공격 ... 467 초기 징후 ... 467 사건의 진상 ... 467 팀의 발견 ... 467 시나리오 종료 ... 467 추천하는 사용법 ... 468 시나리오 8 - 바이러스 공격 ... 468 초기 징후 ... 468 사건의 진상 ... 468 팀의 발견 ... 468 시나리오 종료 ... 468 추천하는 사용법 ... 469 시나리오 9 - IDS가 공격을 보고함 ... 469 초기 징후 ... 469 사건의 진상 ... 469 팀의 발견 ... 469 시나리오 종료 ... 469 변형 ... 469 추천하는 사용법 ... 469 시나리오 10 - 금품 강요 ... 470 초기 징후 ... 470 사건의 진상 ... 470 팀의 발견 ... 470 시나리오 종료 ... 470 변형 ... 470 추천하는 사용법 ... 471 찾아보기 ... 473