62
NETWORK SECURITY ESSENTIALS 네트워크 보안 에센셜 William�Stallings� 저 |� 이재광∙전태일 공역 FOURTH EDITION

NETWORK SECURITY ESSENTIALS„¤트워크보안에센셜_미리... · 정보기술의지식의전반에대한핵심을다루고있는IASE Security Mechanisms 의내용과또다른정보기술의핵심이되는NET4

  • Upload
    others

  • View
    34

  • Download
    0

Embed Size (px)

Citation preview

NETWORKSECURITYESSENTIALS

네트워크보안에센셜William�Stallings�저 |�이재광∙전태일 공역

FOURTH EDITION

NETWORK SECURITY

ESSENTIALS:

APPLICATIONS AND STANDARDS

FOURTH EDITION

William Stallings

Authorized Translation from the English language edition, entitled NETWORK SECURITY ESSENTIALS: APPLICATIONS AND STANDARDS, 4th Edition by STALLINGS, WILLIAM, published by Pearson Education, Inc, Copyright © 2011

All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording or by any information storage retrieval system, without permission from Pearson Education, Inc.

KOREAN language edition published by PEARSON EDUCATION KOREA and LIFE ANDPOWER PRESS, Copyright © 2013

저자 서문

“주인님, 제 생각에는 넥타이가 좀 꽉 매어진 것 같습니다. 완벽한 나비효과를 생각하신다면 말이

죠. 제가…”

“지브스, 이런 상황에 넥타이가 아무려면 어떤가? 리틀 씨 가정의 행복이 심각한 지경에 이르

다는 걸 알고나 그렇게 말하는 것인가? ”

“넥타이가 문제가 되지 않을 때는 없습니다. 주인님!”

—《좋아, 지브스!(Very Good, Jeeves!)》P. G. 우드하우스(Wodehouse)

세계가 전자적으로 연결되어 있고, 바이러스와 해커가 판을 치고, 전자 도청과 전

자 사기가 횡행하는 이 시 에 보안 문제는 끊임없이 우리의 관심을 끌고 있다. 최

근에 이슈가 되고 있는 중요한 두 가지 관심 상을 묶어서 이 책을 엮었다. 첫 번

째는 네트워크를 통한 광범위한 상호 연결과 컴퓨터 시스템의 폭발적인 공급확

로 인해 기관이나 개인은 점점 더 저장된 정보에 매달리게 되었고 시스템을 통한

정보교환에 의존하게 되었다. 따라서 데이터나 자원들이 노출되지 않도록 보호를

해야 하고, 데이터와 메시지에 한 인증이 보장되어야 하고, 네트워크를 이용한

공격으로부터 시스템을 방어해야 한다는 사실을 깨닫게 되었다. 두 번째로 암호

기법과 네트워크 보안 기술이 축적되는 성과를 이루게 되었고, 이 기술축적을 토

로 네트워크 보안을 강화하는 데 실질적이고 필요하면 언제든 사용할 수 있는

응용기술들이 발전하게 되었다.

이 책의 목적은 네트워크 보안 응용기술과 표준에 한 실제적인 조사결과를 독자

들에게 제공하는 것이다. 인터넷이나 기업 네트워크에서 광범위하게 사용되는 응

용기술을 강조하고, 여러 방면에 적용되는 표준, 특히 인터넷 표준에 역점을 두어

설명하고자 한다.

학습 목표

5

PR

EFA

CE

교육에 종사하는 사람이나 전문가들을 상으로 이 책을 집필하 다. 이 책을 교

과서로 사용할 경우는 컴퓨터 과학, 컴퓨터 공학, 전기 공학을 전공하는 학생들을

상으로 네트워크 보안에 한 한 학기 학부교재로 적합하도록 엮었다. 이 책은

정보기술의 지식의 전반에 한 핵심을 다루고 있는 IASE Security Mechanisms

의 내용과 또 다른 정보기술의 핵심이 되는 NET4 Security의 내용을 포괄하고 있

다. 이런 책들에서 다루고 있는 내용은 Draft ACM/IEEE 컴퓨터 협회 컴퓨팅 교

과과정회의 2005에서 주제로 다루고 있는 내용과 동일한 것이다. 또한 이 책은 다

른 사람의 도움 없이 자습을 하는 학생들이 교재로 사용해서 기초적인 지식을 습

득하는 참고도서로도 사용할 수 있다.

이 책은 네 부분으로 나누어져 있다.

제1부 암호 기법: 암호(encryption), 해시함수(hash functions), 디지털 서명

(digital signatures)과 키교환(key exchange)을 망라하는 네트워크 보안

응용기술의 기초가 되는 암호 알고리즘과 프로토콜에 한 간단한 설명을

한다.

제2부 네트워크 보안 응용기술: Kerberos, X.509v3 인증서, PGP, S/MIME, IP

Security, SSL/TLS, SET와 SNMPv3를 포함하는 중요한 네트워크 보안

도구들과 응용기술들에 해 설명한다.

제3부 시스템 보안: 침입자나 바이러스의 위협과 책, 침입차단시스템과 신뢰 시스

템의 이용문제를 포함한 시스템 수준에서 보안문제를 다룬다.

추가된 자료는 다음과 같다.

제4부 네트워크 관리보안, 법과 윤리: 침입자나 바이러스의 위협과 책, 침입차단시

스템과 신뢰 시스템의 이용문제를 포함한 시스템 수준에서 보안문제를 다룬

다. 12장 네트워크 관리 보안과 13장 법과 도덕적 관점이다.(홈페이지에서

자료 제공)

추가로 용어 해설, 자주 사용되는 약어표와 참고도서 목록을 곁들 다. 각 장에는

교재 구성

이 책을 읽어야 할 사람

6

PR

EFA

CE

N e t w o r k S e c u r i t y E s s e n t i a l s

과제물용 문제, 복습문제, 핵심 용어, 추가로 읽어야 할 문서들과 방문해볼 만한

웹 사이트를 실어놓았다.

각 부의 시작부분에는 그 장에서 다룰 주제를 요약해서 기술해 놓았다.

개정판에서는 온라인상의 다음과 같은 분야에서 제공하는 다량의 지원 자료를 찾

아볼 수 있게 하 다.

●온라인 장: 원래 교재에는 포함되지 않았지만 이 번역본에는 온라인 자료로 추가

한 2개의 장을 포함시켜서 교재를 번역하 다. 여기에 해당되는 12장과 13장에

서는 SNMP 보안과 법적 윤리적 문제에 해 다루고 있다.

●온라인 부록: 책에서 언급은 하 지만 책에 자세한 내용을 담기에는 무리가 있는

다양하고 흥미 있는 주제에 해서 온라인상으로 자료를 제공하고 있다. 7개의

온라인 부록에서 학생들이 흥미를 가질 만한 주제를 제공한다. 차례를 참고하기

바란다.

●과제와 풀이: 교재 내용에 해 학생들의 이해를 돕기 위해 추가적인 과제를 풀이

와 함께 제공하고 있다. 이 과제를 풀어보면 학생들이 교재 내용을 더 잘 이해할

수 있게 될 것이다.

●지원 문서: 교재에서는 참고자료로 유용한 문건들을 제시하고 있으며 온라인상

으로도 제공하고 있다.

●주요 논문: 전문성 있는 저널에서 비교적 찾기 어려운 논문 24편을 발췌하여 추

가적으로 제공하고 있다.

강의하는 사람을 지원하기 위해서 다음과 같은 자료를 제공하고 있다.

●해답: 각 장의 끝부분에 있는 복습문제와 연습문제에 한 해답

●프로젝트 매뉴얼: 아래에 나열된 모든 프로젝트에 한 학생들에게 제안을 권장

하는 프로젝트 과제

●파워포인트 슬라이드: 강의에 적합하도록 제작된 모든 장별 슬라이드

●PDF 파일: 이 책에 포함된 모든 그림과 도표

강사를 위한 자료

학생을 위한 온라인 자료

7

PR

EFA

CE

●문제은행: 장별로 분류된 문제

이들 자료는 모두 IRC(Instructor Resource Center)를 통해서 제공하고 있다. 내

용을 살펴보려면 pearsonhighered.com/internationalstallings를 참조하기 바

란다. IRC에 접속하려면 지역 Prentice Hall 공급자들 목록을 제공하는

www.pearsonhighered.com/international을 참조하거나 지역 Pearson 사무실

에 연락하기 바란다.

이 책을 이용하는 강사와 학생들이 사용할 수 있도록 웹 페이지를 제공한다. 이 웹

페이지에서는 관련된 사이트에 한 링크, 책에서 사용한 그림과 표 자료를

PDF(Adobe Acrobat)파일 형태, 책 인터넷 메일목록을 위한 가입정보를 제공한

다. 웹 페이지 주소는 WilliamStallings.com/NetSec/NetSec4e.html이다.

인터넷 메일 목록은 이 책을 교재로 사용하는 강사들끼리 혹은 저자와 상호 정

보교환, 제안, 질문을 하기 위하여 만든 것이다. 오타나 다른 형태의 오류가 발견

되면 오류정정표를 즉시 WilliamStalling.com에 올려놓을 것이다. 추가로 컴퓨터

과학을 공부하는 학생들이나 전문가들을 위해서 유용한 링크, 정보, 문서들을 컴

퓨터 과학 학생자원 사이트인 WilliamStallings.com/StudentSupport.html 에

서 제공한다.

암호 기법이나 보안에 관한 강의를 하는 데 있어서 많은 강사들은 학생들이 교재

의 개념들을 완벽히 이해하려면 프로젝트에 실제로 참여하여 수행을 하는 것이 중

요하다고 여긴다. 그런 면에서 이 교재는 아주 훌륭한 수준으로 강의 중에 프로젝

트 내용을 수행하도록 지원하고 있다. 강사 매뉴얼에는 어떻게 프로젝트를 과제로

내주고 어떻게 구성해야 하는지에 한 것뿐만 아니라 교재와 연관된 광범위한

역의 주제들을 섭렵하는 프로젝트 내용들이 포함되어 있다.

●연구 프로젝트: 연구 과제로서 학생들로 하여금 인터넷상의 특정 주제에 해서

연구하고 보고서를 작성하도록 한다.

●해킹 프로젝트: 침입 탐지와 예방과 관련된 주제를 설명하기 위해 설계된 프로젝

트이다.

네트워크 보안 강의용 프로젝트

강사와 학생을 위한 인터넷 서비스

8

PR

EFA

CE

N e t w o r k S e c u r i t y E s s e n t i a l s

●프로그래밍 프로젝트: 프로그래밍 프로젝트는 어떤 형태의 플랫폼이건 적당한 언

어를 이용하여 구현할 수 있는 다양한 주제를 제공하고 있다.

●랩실 연습문제: 이 책에서 나오는 개념과 관련하여 프로그래밍과 실험에 한 프

로젝트들이다.

●실제적 보안 평가: 현재 기반구조를 조사하기 위한 실습과 기존 조직에 한 평가

실습들이다.

●리포트 제출용 과제: 장별 리포트 제출용 과제로 제안될 만한 내용들이다.

●읽기/보고서 과제: 학생들에게 각 장에서 제공된 논문 목록을 읽고 간단한 보고서

를 작성하여 제출하게 할 수 있다.

자세한 사항은 부록 B를 참조하라.

이 개정판에서는 이전에 출판되었던 어떤 것보다도 더 종합적이고 체계적으로 내

용을 구성하 다. 3판이 출판된 지 4년이 지나면서 이 분야는 지속적으로 개선되

었으며 혁신되었다. 이 새판에서는 전 분야에 한 내용을 빠짐없이 다루면서도

최신의 변경된 내용들을 다루려고 노력하 다. 새 개정판을 내기 위해서 3판을 가

지고 수업을 해왔던 많은 교수들과 함께 전반적이고 자세한 검토를 했다. 또한 이

분야에 종사하고 있는 다수의 전문가들을 통해서 장별로 점검을 하 다. 그 결과

많은 부분에서 모호한 설명을 보다 명확하게 수정을 했고 사용된 그림들도 수정을

하 다. 이 외에도 연습문제에 현장에서 검증된 문제들을 상당히 많이 수록하

다.

교육학적인 면이나 사용자 편의를 위해서 개선뿐만 아니라 이 책 전반적인 부분

에서 많은 내용이 바뀌었다. 그 내용 중에서 중요한 것만 살펴보면 다음과 같다.

●의사랜덤넘버 생성과 의사랜덤함수(개정): 이 중요한 주제를 다루는 데 있어서 좀

더 확장하 고, 2장에 내용을 추가했으며 이 주제에 해서 부록에서 보완하

다.

●암호적 해시함수와 메시지 인증코드(개정): 해시함수와 MAC에 해 수정하 고 좀

더 명확하고 구조적으로 내용을 정리하 다.

●키 분배와 원격 사용자 인증(개정): 3판에서 이 주제가 산만하게 3개의 장에 걸쳐

4판에서 새로워진 내용

9

PR

EFA

CE

서 전개되었는데, 4판에서는 내용을 개정하여 하나의 장으로 모았다. 따라서 통

일되고 구조적으로도 명확해졌다.

●통합 신원(신설): 새로운 섹션에서는 수천 혹은 수백만 사용자에게 서비스를 제공

하는 많은 엔터프라이즈와 다양한 응용에서 일반적으로 사용하는 신원 관리 구

조를 다룬다.

●HTTPS(신설): 새로운 섹션에서는 웹 브라우저와 웹 서버 사이의 안전한 통신을

제공하기 위한 프로토콜에 해 다룬다.

●Secure Shell(신설): 암호 기술에서 가장 보편적인 응용인 SSH를 새로운 섹션

에서 다룬다.

●DomainKeys Identified Mail(신설): DKIM을 새로운 섹션에서 다룬다. 이것은

이메일이 스팸메일에 저항할 수 있도록 하는 표준 도구이다.

●무선네트워크보안(신설): 새로운 장을 신설해서 네트워크 보안에서 중요하게 부각

되는 무선네트워크 분야를 다루었다. 이 장에서는 모바일 웹 브라우저와 웹 서

버 사이의 보안 통신을 보장하는 무선랜과 무선 응용프로토콜(WAP)의 보안표

준인 IEEE 802.11(WiFi)를 다룬다.

●IPsec(개정): IPsec을 다룬 장에서는 내용을 거의 새롭게 변경하 다. 여기서는

IPsecv3와 IKEv2를 다루고 있다. 추가적으로 내용을 좀 더 심도 있고 체계적으

로 다루기 위해 내용을 좀 더 자세하게 다루었다.

●법적 윤리적 문제(신설): 마지막 장에서는 네트워크 보안과 관련된 법적 윤리적 문

제를 다루고 있다.

●온라인 부록(신설): 다양한 주제에 해 흥미를 갖는 학생들을 위해 좀 더 심도 있

고 광범위한 자료를 여섯 개의 온라인 부록에 제공하 다.

●과제와 풀이: 온라인으로 학생들을 위해 추가적인 과제와 풀이를 제공하고 있다.

●문제은행: 문제은행을 통해서 강사에게 복습을 위한 문제를 제공한다. 이 문제를

이용해서 퀴즈를 낼 수 있고 학생들이 교재 내용을 더 잘 이해할 수 있도록 도울

수 있다.

●침입차단시스템(개정): 침입차단시스템에 한 내용을 충분히 확장해서 설명하

다.

추가된 버전에서는 새로운 내용을 전부 다루면서도 너무 양이 많아지지 않게 조

정하는 게 어려웠다. 부분적으로 필요 없는 내용이나 시간이 지나 유효하지 않은

내용을 제거하고 설명을 축약하면서 이런 문제를 해결하 다. 또한 이 개정판에서

10

PR

EFA

CE

N e t w o r k S e c u r i t y E s s e n t i a l s

는 덜 일반적인 내용을 다루고 있던 장이나 부록을 온라인상의 PDF 파일로 제공

하는 방식을 취하 다. 이렇게 하여 책의 내용이 늘지 않고 책값을 현실에 맞도록

조정할 수 있었다.

이 책은 Cryptography and Network Security, Fourth Edition(CNS5e)의 내용

을 많이 수용해서 만들었다. CNS5e는 알고리즘 해독에 한 세세한 것과 난이도

가 있는 수학적 내용을 거의 400페이지가 넘는 범위에서 암호 기법을 심도 있게

다루고 있다. Network Security Essentials: Applications and Standards 4판

(NSE4e)에서는 제2장과 제3장에서 이 주제를 간단히 살펴보는 것으로 신한다.

NSE4e는 CNS5e에서 다룬 나머지 내용들을 모두 다룬다. NSE4e는 또한 CNS5e

에서는 다루지 않았던 SNMP 보안에 해서도 다룬다. 따라서 NSE4e의 목표는

암호 이론이나 원리에 한 심도 있는 연구에 한 욕구나 필요성을 강조하는 것

이 아니라 주로 네트워크 보안의 응용기술에 관심이 있는 전문 독자가 필요로 하

는 교재 역할이나 학 교재로서의 역할이다.

Pearson에서는 학습을 돕기 위해 전 세계에 걸쳐서 다양한 교재를 제공하고 있

다. 미국을 제외한 국가에서는 이 교재와 연관된 모든 교재와 서비스가 판권 문제

나 허가문제 등으로 사용할 수 없을지도 모른다. 질문이 있으면 www.pearson

highered.com/international에 접속해서 지역 사무소 정보를 얻어 확인해보거나

Pearson 행업자를 찾아 방문해보기 바란다.

이 책은 사람들이 관 하게 자신의 시간과 전문성을 제공해주었기 때문에 완성할

수 있었다. 이 책의 상당한 분량의 원고를 검토해주신 분들에게 감사드린다.

Marius Zimand(Towson State University), Shambhu Upadhyaya(University

of Buffalo), Nan Zhang(George Washington University), Dongwan

Shin(New Mexico Tech), Michael Kain(Drexel University), William

Bard(University of Texas), David Arnold(Baylor University), Edward

Allen(Wake Forest University), Michael Goodrich(UC-Irvine), Xunhua

Wang(James Madison University), Xianyang Li(Illinois Institute of

Technology), and Paul Jenkins(Brigham Young University).

감사의 말

Cryptography and Network Security와의 관계

11

PR

EFA

CE

또한 여러 사람들이 여러 개의 장에 걸쳐서 기술적인 검토를 자세하게 해주었

다. Martin Bealby, Martin Hlavac(Department of Algebra, Charles

University in Prague, Czech Republic), Martin Rublik(BSP Consulting and

University of Economics in Bratislava), Rafael Lara(President of

Venezuela’s Association for Information Security and Cryptography

Research), Amitabh Saxena, and Michael Spratte(Hewlett-Packard

Company). 특히 이 책의 여러 장에 걸쳐서 조언해준 Nikhil Bhargava(IIT

Delhi)에게 특별히 감사드린다.

Nikhil Bhargava(IIT Delhi)는 온라인 과제 개발과 풀이를 제작하는 데 큰 도

움을 주었다. Dakota State University의 Sreekanth Malladi 교수는 해킹 연습

문제를 작성하는 데 도움을 주었다. Purdue의 Sanjay Rao와 Ruben Torres는

IRC에 제공한 랩실 연습문제를 개발하는 데 도움을 주었다.

이 외에도 여러 분들이 강사에게 제공하는 프로젝트 과제를 만드는 데 도움을

주었다. Henning Schulzrinne(Columbia University), Cetin Kaya

Koc(Oregon State University), and David Balenson(Trusted Information

Systems and George Washington University). Kim McLaughlin는 문제은행

을 개발하는 데 도움을 주었다.

끝으로 이 책을 출판하는 데 책임 있고 항상 최선을 다해서 일을 해준 많은 분들

에게 고맙게 생각한다. 특히 Prentice Hall의 편집장 Tracy Dunkelberger와 부

편집장 Melinda Hagerty와 Allison Michael에게 감사를 표하고 싶다. 또한 원고

를 검토해준 Warde Publishers의 Jake에게도 감사를 전한다.

이런 도움이 있어서 책을 만들 수 있었기 때문에 저자의 몫은 아주 적다고 할 수

있다. 하지만 이처럼 도움을 준 모든 분들을 저자가 직접 거명하게 된 것을 매우

자랑스럽게 생각한다.

William Stallings는 컴퓨터 보안, 컴퓨터 네트워크와 컴퓨터 아키텍처의 기술적

개발에 해 아주 잘 이해할 수 있도록 해주는 데 상당한 공헌을 하 다. 그는 17

개 제목으로 책을 저술하 고 개정판까지 포함한다면 다양한 분야에서 42권의 책

을 저술하 다. 그의 저술을 살펴보면 ACM이나 IEEE 출판물에서 다수를 찾아볼

수 있는데, 여기에 포함된 것으로는 Proceedings of the IEEE와 ACM

저자 소개

12

PR

EFA

CE

N e t w o r k S e c u r i t y E s s e n t i a l s

Computing Reviews가 있다.

William Stallings는 베스트셀러 저자이고 매년 최고의 컴퓨터과학과 공학 교

과서 분야의 저자에게 수여하는 저자협회(Text and Academic Authors

Association) 상을 열한 번이나 수상하 다.

그는 이 분야에서 30년 넘게 기술 공헌자, 기술적 관리자, 여러 개의 신기술 회

사의 임원으로서의 역할을 해오고 있다. 마이크로컴퓨터에서 형컴퓨터까지 아

우르는 다양한 컴퓨터와 운 체제상에서 TCP/IP-기반이나 OSI-기반 프로토콜

집합을 설계하고 구현해왔다. 컨설턴트로서도 국가 기관, 컴퓨터와 소프트웨어 판

매상, 그리고 네트워킹 소프트웨어와 제품을 설계하고, 선택하고 이용하는 주요

사용자에게 조언을 해왔다.

그는 WilliamStallins.com/StudentSupport.html 사이트에서 Computer

Science Student Resource Site를 만들어서 운 해왔다. 이 사이트에서는 컴퓨

터과학 분야 학생 또는 전문가가 관심을 가질 만한 다양한 주제에 한 문서와 링

크를 제공하고 있다. 그는 암호 분야에 기여하고 있는 학술적 저널인 Cryptologia

의 편집위원으로 활동하고 있다.

Stallings 박사는 M.I.T의 컴퓨터과학과에서 박사학위를 수여하 고 Nortre

Dame에서 전자공학분야의 학사학위를 수여하 다.

13

PR

EFA

CE

역자 서문

컴퓨터 보안개념은 컴퓨터 발전과 더불어 꾸준히 변화해왔다. 요즈음 컴퓨터 환경

의 변화로는 데스크톱 컴퓨터 사용자 수가 감소하면서 모바일 플랫폼 사용자 수가

증가하고 있다는 것과 클라우드 컴퓨팅 환경의 도입을 들 수 있다. 이에 따라 무선

네트워크에 한 보안문제가 심각한 문제로 두되고 있다. 게다가 스마트워킹 환

경이 확 되면서 사용자들은 자신의 장비를 업무 역까지 확 해서 사용하는

BYOD 환경을 선호하고 있다. 따라서 전통적인 보안개념을 확 해서 해석해야만

하고 네트워크 관리자는 이러한 환경 변화에 적절히 처하여야 하며 개인들도 보

안의식을 높여가며 자신들의 정보를 보호해야 한다.

초기 컴퓨터에서는 보안이라는 부분을 고려하지 않았다. 뿐만 아니라 수년 전까

지 개발되었던 많은 운 체제들만 보아도 보안을 심각하게 고려하지 않고 소홀하

게 다루어 왔다. 물론 전문가들은 이런 문제점에 해서 일찍부터 경고를 해왔지

만 일반 사용자들의 보안의식 수준을 올리기에는 역부족이었다. 하지만 일반인도

매스컴을 통해서 해킹, 바이러스, 인터넷 란 같은 용어에 친숙하게 되었고 개인

컴퓨터의 보급, 네트워크의 발달 그리고 인터넷의 파급효과와 더불어 개인이나 기

업 그리고 기관들은 파일 형태로 된 정보보호에 더욱 주의를 기울이게 되었다. 또

한 온라인상으로 거래가 이루어지고 자신의 주변에서 각종 보안사고가 발생하는

것을 보면서 일반 사용자들의 보안에 한 의식수준도 상당히 높아졌고 보안에

한 위협이 매우 심각하다는 것도 인식하게 되었다.

하지만 보안이라는 분야는 아직도 일반인들이 쉽게 이해하기에는 어려운 점이

있다고 생각된다. 따라서 보안 분야에 종사하는 전문가들은 사용자들이 보다 편리

하면서도 안전하게 이용할 수 있는 보안장치들을 개발하고 관리하며 문제점을 연

구하고 새 기술들을 선보이고 있다.

이 교재는 보안에 한 기초적인 개념이나 지식을 습득하려 하거나 실제적인 보

안기술들이 어떻게 응용되는지를 알고자 하는 사람들을 위한 것이다. 네트워크 보

안에 한 다양한 책들이 저술되거나 번역되었는데, 어떤 부류의 책들은 여러 주

제들을 광범위하게 다루기는 하지만 깊이가 없는 경우가 있었고, 또 다른 부류의

14

PR

EFA

CE

N e t w o r k S e c u r i t y E s s e n t i a l s

책들은 네트워크 보안 역 중 특정 주제는 깊이 있게 다루기는 했지만 일부 중요

하게 다루어야 할 곳에서는 허술한 경우가 있었다. 반면에 모든 주제에 해 아주

자세하게 설명하고 내용도 알찬 책들도 찾을 수 있었지만 문제는 양이 너무 방

하다는 것이었다. 그래서 정작 학에서 한 학기 정도 네트워크 보안에 한 교재

로 쓸 만한 양이면서 체계 있는 책을 찾기가 쉽지 않았다. William Stallings는 베

스트셀러 저자이고 매년 최고의 컴퓨터과학과 공학 교과서 분야의 저자에게 수여

하는 저자협회상을 11번이나 수상한 저자이다. 이 책은 해박한 지식과 교과서 집필

에 노하우를 가진 William Stallings가 저술한‘암호와 네트워크 보안

(Cryptography and Network Security)’제4판의 핵심만 발췌하고 최신의 내용

을 추가하여 컴퓨터 분야와 보안 분야의 학생과 교육에 종사하는 사람 혹은 전문

가를 위해 학에서 한 학기용으로 사용할 수 있도록 만든 책이다. 또한 이미 이

책은 우리나라 학뿐만 아니라 전 세계의 학에서 원서 교재로 많이 사용되고

있다.

개정판에서는 새로운 내용들이 많이 들어갔다. 또한 기존의 교재에서는 여러 곳

에 나누어 등장했던 주제를 한곳에 모아 보다 간결하고 명확하게 내용을 전달하도

록 하 다. 또한 최근에 부각되고 있는 무선네트워크 환경에 해서도 새로운 개

념을 설명하 고 보안에 관련된 지식들을 강조하 다. 추가로 책에서 다루기에는

너무 양이 많을 경우에 온라인상에서 제공하려고 링크와 온라인 자료 정보를 제공

하고 있다. 이 책은 원서에서 온라인으로 제공하고 있는 마지막 12, 13장을 번역하

여 생능출판사 홈페이지(www.booksr.co.kr)에서 제공하고 있다.

이 책을 번역하면서 가장 어려웠던 문제는 적합한 용어의 선택이었다. 이미 한국

정보통신기술협회에서 확정하여 정보통신용어사전에 수록하여 사용하는 표준용어

는 그 로 사용하는 것을 원칙으로 하 다. 부분의 컴퓨터 분야가 다 그렇듯이

급변하는 환경 때문에 보안 분야에서도 직역된 용어를 그 로 사용하고 있으며, 표

준화가 되지 않은 상태로 남아 있고, 적합해 보이지는 않지만 널리 사용되는 용어

들을 쉽게 발견할 수 있었다. 이 경우에는 그 로 그 용어를 사용하 다. 한편 어떤

용어는 번역 없이 어를 발음 나는 로 표기하 는데 이런 경우는 적당한 우리말

을 찾을 수 없거나 어를 그 로 쓰는 것이 혼동을 주지 않기 때문이다.

따라서 이 책에서 역자들이 사용한 용어 해석이 특정 독자층의 마음에 들지 않

거나 본래의 뜻을 잘못 해석한 경우도 분명 있을 것이라고 여겨진다. 또한 역자들

은 원문을 가능하면 본래의 뜻을 손상시키지 않는 범위에서 쉬운 말로 풀어쓰면서

내용을 번역하 지만 분명 크고 작은 오역이 있을 것이라고 생각된다. 이런 부분

15

PR

EFA

CE

에 해서는 역자들의 세심함이나 능력이 부족하여 온 결과라고 생각한다.

이 책의 번역과 함께 이 책을 교재로 사용하고자 하는 학 강사들을 위해서 강

의자료를 만들어 제공한다. 강의자료는 강사가 과목에 한 사전 지식만 가지고

있다면 특별히 강의 준비를 하지 않아도 강의를 진행할 수 있도록 전 과정을 ppt

파일로 만들었다. 교재에서 제공하는 모든 그림과 미흡하기는 하지만 역자들이 만

든 그림을 추가하 으며, 빠뜨린 내용 없이 책 전체를 다루었기 때문에 그 양이 적

지 않다. 따라서 수업의 기간과 학생들의 수준 등을 고려하여 필요 없는 부분은 건

너뛰거나 재편집하여 사용할 수 있을 것이라고 여겨진다. 출판사를 통해 강의자료

를 제공할 것이므로 출판사나 역자들에게 문의하여 강의자료를 구하기 바란다.

끝으로 이 개정판이 출판되기까지 여러 가지로 도움을 주신 생능출판사 여러분

께 감사드리고 보기 좋게 책이 나오도록 세심한 편집에 도움을 주신 여러분들께도

고마운 마음을 전한다.

2013년 1월 10일

옮긴이 일동

16

PR

EFA

CE

N e t w o r k S e c u r i t y E s s e n t i a l s

차 례

1.1 컴퓨터 보안 개념 30

컴퓨터 보안 정의 30

사례 33

컴퓨터 보안 위협 35

1.2 OSI 보안 구조 37

1.3 보안 공격 38

소극적 공격 39

적극적 공격 40

1.4 보안 서비스 43

인증 43

접근제어 45

데이터 기 성 45

데이터 무결성 46

부인봉쇄 46

가용성 서비스 46

1.5 보안 메커니즘 47

1.6 네트워크 보안 모델 49

1.7 표준 52

1.8 이 책의 개요 53

1.9 추천 자료 53

1.10 인터넷과 웹 자원 55

1.11 주요 용어, 복습문제와 연습문제 59

17

CO

NTE

NTS

개요CHAPTER

01

2.1 칭 암호 원리 63

암호 65

암호해독 65

Feistel 암호 구조 68

2.2 칭 암호 알고리즘 71

DES 71

3DES 74

AES 75

2.3 랜덤넘버와 의사랜덤넘버 80

랜덤넘버 용도 80

TRNG, PRNG와 PRF 82

알고리즘 설계 84

2.4 스트림 암호와 RC4 85

스트림 암호 구조 86

RC4 알고리즘 88

2.5 암호 블록 운용 모드 92

전자 코드북 모드 92

암호 블록 체인 모드 93

암호 피드백 모드 95

카운터 모드 96

2.6 추천 자료와 웹 사이트 98

2.7 주요 용어, 복습문제와 연습문제 99

3.1 메시지 인증 방법 109

관용 암호를 이용한 인증 109

메시지 암호화 없이 메시지 인증하기 109

3.2 안전 해시함수 114

해시함수 요건 114

해시함수 보안 116

단순 해시함수 116

18

CO

NTE

NTS

N e t w o r k S e c u r i t y E s s e n t i a l s

암호PART

01

칭 암호와 메시지 기 성CHAPTER

02

공개키 암호와 메시지 인증CHAPTER

03

SHA 안전 해시함수 119

3.3 메시지 인증 코드 123

HMAC 123

블록 암호기반 MAC 127

3.4 공개키 암호 원리 130

공개키 암호 구조 131

공개키 암호시스템 응용 133

공개키 암호 요건 134

3.5 공개키 암호 알고리즘 136

RSA 공개키 암호 알고리즘 136

Diffie-Hellman 키교환 139

기타 공개키 암호 알고리즘 145

3.6 디지털 서명 146

3.7 추천 자료와 웹 사이트 147

3.8 주요 용어, 복습문제와 연습문제 148

4.1 칭 암호를 이용한 칭키 분배 158

4.2 KERBEROS 161

Kerberos 버전 4 162

Kerberos 버전 5 175

4.3 비 칭 암호를 이용한 키 분배 180

공개키 인증서 181

공개키를 이용한 비 키 분배 182

4.4 X.509 인증서 183

인증서 184

X.509 버전 3 191

4.5 공개키 기반구조 194

PKIX 관리 기능 195

PKIX 관리 프로토콜 196

4.6 통합신원관리 197

19

CO

NTE

NTS

네트워크 보안 응용PART

02

키 분배와 사용자 인증CHAPTER

04

신원관리 197

신원 통합 199

4.7 추천 자료와 웹 사이트 204

4.8 주요 용어, 복습문제와 연습문제 206

5.1 웹 보안의 필요성 217

웹 보안 위협 218

웹 트래픽 보안 방법 219

5.2 안전 소켓 계층과 전송 계층 보안 220

SSL 구조 220

SSL 레코드 프로토콜 223

암호명세 변경 프로토콜 226

경고 프로토콜 227

핸드셰이크 프로토콜 228

암호 계산 235

5.3 전송 계층 보안 237

버전 번호 237

메시지 인증 코드 238

경고 코드 240

암호도구 241

클라이언트 인증서 유형 241

인증_확인과 종료된 메시지 242

암호 계산 242

패딩 243

5.4 HTTPS 243

연결 개시 244

연결 종료 244

5.5 SSH 245

전송 계층 프로토콜 246

사용자 인증 프로토콜 252

연결 프로토콜 254

5.6 추천 자료와 웹 사이트 259

5.7 주요 용어, 복습문제와 연습문제 260

20

CO

NTE

NTS

N e t w o r k S e c u r i t y E s s e n t i a l s

전송-레벨 보안CHAPTER

05

6.1 IEEE 802.11 무선 LAN 개요 265

Wi-Fi 연합 265

IEEE 802 프로토콜 구조 266

IEEE 802.11 네트워크 요소와 구조 모델 268

IEEE 802.11 서비스 270

6.2 IEEE 802.11i 무선 LAN 보안 273

IEEE 802.11i 서비스 274

IEEE 802.11i 동작 단계 274

탐색 단계 277

인증 단계 280

키 관리 단계 283

안전 데이터 전송 단계 287

IEEE 802.11i 의사랜덤 함수 288

6.3 무선 응용 프로토콜 개요 291

운용 개요 291

무선 마크업 언어 293

WAP 구조 294

무선 응용 환경 296

WAP 프로토콜 구조 297

6.4 무선 전송층 보안 300

WTLS 세션과 연결 301

WTLS 프로토콜 구조 303

암호 알고리즘 310

6.5 WAP 종단- -종단 보안 313

6.6 추천 자료와 웹 사이트 317

6.7 주요 용어, 복습문제와 연습문제 318

7.1 Pretty Good Privacy 325

기호 326

동작 과정 327

암호 키와 키 고리 335

공개키 관리 344

21

CO

NTE

NTS

전자메일 보안CHAPTER

07

무선 네트워크 보안CHAPTER

06

7.2 S/MIME 351

RFC 5322 351

MIME 352

S/MIME 기능 360

S/MIME 메시지 364

S/MIME 인증서 처리 369

강화된 보안 서비스 372

7.3 도메인키 확인 메일 373

인터넷 메일 구조 374

전자메일 위협 376

DKIM 전략 378

DKIM 기능 흐름 380

7.4 추천 자료와 웹 사이트 382

7.5 주요 용어, 복습문제와 연습문제 383

부록 7A 기수-64 변환 386

8.1 IP 보안 개요 391

IPsec의 응용 391

IPsec의 이점 394

라우팅 응용 394

IPsec 문서 395

IPsec 서비스 396

전송 모드와 터널 모드 396

8.2 IP 보안 정책 398

보안 연관 399

보안 연관 데이터베이스 400

보안 정책 데이터베이스 401

IP 트래픽 처리 403

8.3 캡슐화 보안 페이로드 406

ESP 형식 406

암호화 및 인증 알고리즘 408

패딩 408

재전송방지 서비스 409

전송 모드와 터널 모드 410

8.4 보안 연관 묶기 414

인증과 기 성 415

22

CO

NTE

NTS

N e t w o r k S e c u r i t y E s s e n t i a l s

IP 보안CHAPTER

08

보안 연관의 기본 조합 417

8.5 인터넷 키교환 419

키 결정 프로토콜 420

헤더와 페이로드 형식 426

8.6 암호도구 431

8.7 추천 자료와 웹 사이트 433

8.8 주요 용어, 복습문제와 연습문제 434

9.1 침입자 439

침입자 행동 패턴 440

침입 기법 444

9.2 침입탐지 446

감사기록 449

통계적 변형탐지 451

규칙-기반 침입탐지 455

기본-비율 오류 457

분산 침입탐지 457

허니팟 460

침입탐지 교환 형식 461

9.3 패스워드 관리 462

패스워드 보호 462

패스워드 선택 요령 467

9.4 추천 자료와 웹 사이트 475

9.5 주요 용어, 복습문제와 연습문제 476

부록 9A 기본-비율 오류 482

10.1 악성 소프트웨어 유형 489

백 도어 490

23

CO

NTE

NTS

악성 소프트웨어CHAPTER

10

시스템 보안PART

03

침입자CHAPTER

09

논리폭탄 491

트로이 목마 491

모바일 코드 493

다중-위협 악성 소프트웨어 493

10.2 바이러스 494

바이러스 속성 494

바이러스 유형 499

바이러스 키트 501

매크로 바이러스 501

전자메일 바이러스 502

10.3 바이러스 방어책 503

안티바이러스 방법 503

고도 안티바이러스 기술 505

10.4 웜 510

모리스 웜 511

웜 확산 모델 512

최근의 웜 공격 513

웜 기술의 상태 514

이동 전화 웜 515

웜 응책 516

10.5 분산서비스거부 공격 522

DDoS 공격의 개요 523

공격 네트워크 구축 526

DDoS 응책 527

10.6 추천 자료와 웹 사이트 528

10.7 주요 용어, 복습문제와 연습문제 530

11.1 침입차단시스템의 필요성 537

11.2 침입차단시스템 특성 538

11.3 침입차단시스템 유형 540

패킷-필터링 침입차단시스템 540

스테이트풀 패킷 검사 침입차단시스템 546

응용-레벨 게이트웨이 547

회선-레벨 게이트웨이 548

11.4 침입차단시스템 배치 549

24

CO

NTE

NTS

N e t w o r k S e c u r i t y E s s e n t i a l s

침입차단시스템CHAPTER

11

배스천 호스트 550

호스트-기반 침입차단시스템 551

개인 침입차단시스템 551

11.5 침입차단시스템 위치와 구성 553

DMZ 네트워크 553

가상사설네트워크 555

분산 침입차단시스템 556

침입차단시스템 위치와 토폴로지 요약 557

11.6 추천 자료와 웹 사이트 559

11.7 주요 용어, 복습문제와 연습문제 560

부록 A 정수론에 한 관점 568

부록 B 네트워크 보안 학습 프로젝트 575

■찾아보기 581

12.1 SNMP의 기본개념

네트워크 관리 구조

네트워크 관리 프로토콜 구조

프록시

SNMPv2

12.2 SNMPv1 공동체 서비스

공동체와 공동체 이름

인증 서비스

접근 정책

프록시 서비스

25

CO

NTE

NTS

네트워크 관리 보안, 법과 윤리PART

04

네트워크 관리 보안CHAPTER

12

※ CHAPTER 12~13은 홈페이지에서 제공

부록APPENDIX

12.3 SNMPv3

SNMP 구조

메시지 처리와 사용자 보안 모델

뷰-기반 접근 제어

12.4 추천 자료와 웹 사이트

12.5 주요 용어, 복습문제와 연습문제

13.1 사이버범죄와 컴퓨터범죄

컴퓨터범죄 유형

법 집행기관의 어려움

법 집행기관과의 협업

13.2 지적 재산권

지적 재산권 유형

네트워크 및 컴퓨터 보안과 관련된 지적 재산권

디지털 레니엄 저작권법

디지털 권리 관리

13.3 프라이버시

프라이버시 법과 규제

조직의 반응

프라이버시와 데이터 감시

13.4 윤리적 문제

윤리와 IS 전문성

컴퓨터 및 정보시스템과 연관된 윤리적 문제

행동 수칙

13.5 추천 자료와 웹 사이트

13.6 주요 용어, 복습문제와 연습문제

26

CO

NTE

NTS

N e t w o r k S e c u r i t y E s s e n t i a l s

법과 도덕적 관점CHAPTER

13

01개요

1.1 컴퓨터 보안 개념

1.2 OSI 보안 구조

1.3 보안 공격

1.4 보안 서비스

1.5 보안 메커니즘

1.6 네트워크 보안 모델

1.7 표준

1.8 이 책의 개요

1.9 추천 자료

1.10 인터넷과 웹 자원

1.11 주요 용어, 복습문제와 연습문제

Net

wor

k S

ecur

ity E

ssen

tials

CHAPTER

방어 이론에 있어 기본적인 요소로 간주되는 공간, 시간 그리고 힘의 조합은 방어 문제를 아주 복

잡하게 만든다. 따라서 방어 시점을 결정하는 것은 쉬운 일이 아니다.

—《전쟁론(On War)》, 카를 폰 클라우제비츠(Carl Von Clausewitz)

전술을 통해 우리가 배우는 것은 적이 오지 않을 가능성을 생각하기보다는 적을 막을 준비를 해

야 한다는 것이다. 적이 공격해오지 않을지도 모른다고 생각하지 말고 우리가 공격에 한 충분

한 방어 능력을 갖추어야 한다는 사실이 더 중요하다.

—《손자병법(The Art of War)》, 손자(Sun Tzu)

기관 정보 보안의 필요성에 해 말하자면 지난 20년 동안 두 가지의 큰 변화가 있

었다. 데이터 처리 장비가 널리 보급되기 전에는 그 기관의 중요한 정보보안 문제

를 거의 물리적 방법이나 행정적 수단으로 처리했다. 물리적 보안처리의 예를 들

면 서류함에 조합된 번호를 사용하는 자물쇠를 달아놓는 것이고, 행정적인 보안처

리 예로는 적격검사를 한 뒤에 직원을 채용하는 과정이 있다.

컴퓨터가 등장하면서 컴퓨터에 저장된 정보나 파일을 보호할 수 있는 자동화된

도구가 필요하게 되었다. 특히 시분할 시스템과 같이 여러 사람이 공유하는 시스

템의 경우에 정보보호가 중요했고, 공중 전화망이나 데이터 네트워크 혹은 인터넷

을 통해 접근할 수 있는 시스템에서는 정보보호가 더욱 심각한 문제로 부각되었

다. 해커를 막고 데이터 보호를 위해 설계한 도구를 총 망라해서 컴퓨터 보안

(computer security)이라고 한다.

보안에 향을 준 두 번째 주요한 변화는 분산시스템의 도입과 종단 사용자와

컴퓨터 사이 혹은 컴퓨터와 컴퓨터 사이의 데이터 교환용 통신시설과 네트워크 때

문에 생긴 것이다. 그래서 네트워크 보안 책을 세워 전송 중인 데이터를 보호해

28

개요01CHAPTER

Network Security Essentials

CHAPTER 01

야만 한다. 사실 우리가 사용하는 네트워크 보안(network security)이란 용어는 이

단어가 가진 원래의 의미 로 해석되지 않는데, 그 이유는 사실 모든 기업, 공공기

관, 교육기관의 데이터 처리 장비가 하나의 네트워크가 아니라 여러 네트워크 집

단에 연결되어 있기 때문이다. 이런 네트워크 집단을 종종 인터넷1)(internet)이라

고 하고, 이 경우에 보안을인터넷 보안(internet security)이라고 한다.

이 두 가지 형태의 보안개념을 명확히 구분하기는 어렵다. 예를 들면 컴퓨터 바

이러스는 가장 잘 알려진 정보 시스템에 한 공격 형태이다. 바이러스가 담겨 있

는 저장장치를 물리적으로 시스템에 꽂으면 바이러스가 컴퓨터로 침투하게 된다.

하지만 바이러스는 인터넷을 통해 옮겨지기도 한다. 어떤 경우이든 바이러스가 일

단 컴퓨터 시스템에 상주하게 되면 내부에 설치된 컴퓨터 보안도구는 이를 감지하

고 퇴치할 수 있어야 한다.

이 책은 정보전송과 관련된 보안에 문제가 되는 사안이 일어나지 않도록 제지하

고, 예방하고, 감지하고 고쳐나가는 방안에 초점을 둔 인터넷 보안을 학습목표로

하고 있다. 인터넷 보안이란 넓은 의미로서 많은 의미를 내포하고 있다. 이 책에서

다루게 될 내용이 무엇인지 독자가 느낄 수 있도록 다음과 같은 보안 위배사항 사

례를 들어보기로 하자.

1.사용자 A가 사용자 B에게 파일 하나를 보낸다고 하자. 그 파일은 절 로 노

출되어서는 안 되는 중요한 정보(예를 들면, 기관 내 구성원의 봉급내역)라고

하자. 이 파일을 볼 권한이 없는 사용자 C가 통신과정을 지켜보고 있다가 통

신 중에 해당 파일의 복사본을 몰래 가로챌 수 있다.

2.네트워크 관리자인 D가 자신이 관리하고 있는 네트워크 내의 컴퓨터 E에 메

시지를 전달한다고 한다. 이 메시지는 권한 파일을 갱신하라고 E에게 내리는

명령이다. 명령 내용은 새 사용자의 신원을 권한 파일에 포함시켜 그들이 컴

퓨터 E에 접근할 수 있도록 하라는 명령이다. 사용자 F가 이 메시지를 가로

채서 다른 사용자를 추가하거나 일부 사용자를 빼버린 다음 그 수정된 메시

지를 컴퓨터 E에게 전달했다고 하자. 컴퓨터 E는 이 메시지가 D로부터 온 것

으로 믿고 그 메시지 명령에 따라 권한 파일을 갱신한다.

29

개요

1) 소문자“i”로 시작하는 internet은 상호 연결된 네트워크의 한 집단을 지칭하는데, 기관 인터넷

(corporate internet)은 그 한 예가 될 수 있다. 문자“I”로 시작하는 Internet은 internet을 구축하

기 위하여 한 기관이 사용하는 설비 중의 하나를 말한다.

3.메시지를 가로채는 신에, 사용자 F는 자신이 원하는 사용자 신원이 포함된

메시지를 따로 작성하여 마치 이 메시지가 관리자 D로부터 전송된 것처럼 꾸

며서 컴퓨터 E로 전송한다. 컴퓨터 E는 이 메시지가 관리자 D로부터 온 것으

로 여기고 권한 파일을 갱신한다.

4.한 직원이 예고 없이 해고되었다고 하자. 인사 관리자는 해고된 직원의 계정

을 무효화하기 위해 메시지를 서버로 보낸다. 계정말소를 위해서, 서버는 확

인절차상 해고된 직원 파일에 계정말소 메시지를 게시하여 해당자가 서버에

접속하지 못하도록 한다. 그런데 해고된 직원이 이 메시지를 가로채어 서버

로 전송되지 못하게 막은 다음 마지막으로 서버에 접속하여 중요한 정보를

빼낸 후에 그 메시지를 서버로 보낸다. 이 메시지는 서버로 전송될 것이고 정

상적으로 계정말소 절차가 수행될 것이다. 그러나 해고된 직원이 시간차를

두고 자료를 빼내갔다는 사실은 상당 기간 동안 발각되지 않을 수도 있다.

5.한 고객이 여러 가지 주식거래 위탁에 관한 메시지를 주식 중개인에게 보냈

다. 후에 고객이 의뢰한 투자가 고객 자신에게 손해를 끼치게 되었을 때, 해

당 고객은 그런 메시지를 중개인에게 보낸 적이 없다고 발뺌한다.

비록 위에 언급한 경우가 보안에 위배되는 모든 걸 다 열거하고 있지는 않지만

이런 사례를 통해서 적어도 네트워크 보안 범위가 어디까지 미치는지 감을 잡을

수 있을 것이다. 따라서 네트워크 보안에서는 매우 많은 사항을 고려해야 한다.

이 장에서는 이 책의 전반에 걸쳐 다룰 주제를 개략적으로 소개한다. 우선 네트

워크 보안서비스와 메커니즘에 해서 일반적인 토론을 하고 이들을 겨냥한 공격

유형에 해서 알아보기로 한다. 그 뒤에 일반적이고 개략적인 모델을 만들고 그

모델 안에서 보안 서비스와 메커니즘이 어떻게 작동하는지 알아보기로 한다.

컴퓨터 보안 정의

《NIST 컴퓨터 보안 핸드북(NIST Computer Security Handbook[NIST95])》에

30

네트워크 보안 에센셜Network Security

Essentials

1.1 컴퓨터 보안 개념

의하면 컴퓨터 보안은 다음과 같이 정의된다.

이 정의에 의하면 컴퓨터 보안에 있어서 가장 핵심이 되는 3가지 주요 목표가

제시되었다.

●기 성(Confidentiality): 두 가지 의미를 가진다.

●① 데이터2) 기 성(Data confidentiality): 개인 정보나 기 정보를 부정한 사용

자가 이용하거나 그들에게 노출되지 않도록 하는 것.

●② 프라이버시(Privacy): 개인이 자신과 관련된 어떤 정보가 수집되고 저장되는

지, 누구에게 그 정보가 공개되는지, 누가 공개하는지 등을 통제하거나 향

을 미칠 수 있도록 하는 것.

●무결성(Integrity): 두 가지 의미를 가진다.

●① 데이터 무결성(Data integrity): 규정에 따라서 또는 허가된 상태에서만 정보

나 프로그램을 변경할 수 있도록 하는 것.

●② 시스템 무결성(System integrity): 시스템이 의도했던 기능을 손상되지 않은

채 그 로 수행하거나 고의이든 우연이든 간에 부정하게 시스템이 조작되지

않은 상태로 수행하도록 하는 것.

●가용성(Availability): 시스템이 지체 없이 동작하도록 하고, 합법적 사용자에게

서비스를 거절하지 않도록 하는 것.

이 세 가지 개념을 소위 말해서 CIA 트라이어드(triad)로 설명할 수 있다(그림 1.1

참조). 이 세 가지 개념은 데이터 및 정보보호와 컴퓨터 서비스에 관한 기본 보안목

적을 구체적으로 설명하고 있다. 예를 들면, NIST가 발행하는 정보처리 관계 출판

물(NIST Standards for Security Categorization of Federal Information and

컴퓨터 보안

정보시스템 자원(하드웨어, 소프트웨어, 펌웨어, 정보/데이터, 통신)의 무결성, 가용성, 기 성을 보

전하고자 하는 목표 달성을 위해 자동화된 정보시스템에 제공된 보호.

31

01CHAPTER개요

2) RFC 2828에서는 정보를‘다양한 형태의 데이터로 표현(코드화)될 수 있는 사실이나 아이디어’라고 정

의하고 데이터는‘일반적으로 의미 있는 기호열로 표현되는 특정 물리적 표현 정보로 특히 컴퓨터로 처

리하거나 생성할 수 있는 정보 표현’이라고 정의하 다. 보안에 관련된 문건에서는 전형적으로 이런 차

이점에 해 명확하게 구분하지 않는다. 또한 이 책에서도 정확하게 구분하지 않을 것이다.

Information Systems(FIPS 199))에서는 기 성, 무결성, 가용성을 정보와 정보

시스템에 한 3 보안 목적으로 삼고 있다. FIPS 199에서는 각 역별 보안상실

에 한 정의와 요구사항이라는 관점에서 이 3가지 목적의 유용한 특성에 해 말

해준다.

●기 성: 정보 접근과 공개에 해 합법적 제한조건을 지키는 것이다. 개인 프라

이버시와 소유권에 한 정보를 보호하는 수단이 포함된다. 기 성을 상실하게

되면 정보가 부정하게 공개된다.

●무결성: 부적절한 정보 수정이나 정보 파괴를 막는 것이다. 정보 부인방지와 합

법성을 확실히 하는 것이 포함된다. 무결성을 상실하게 되면 정보가 무단으로 수

정되거나 파괴된다.

●가용성: 정보사용에 있어서 시간성과 신뢰성 있는 접근을 의미한다. 가용성을 상

실하게 되면 정보나 정보시스템을 사용하거나 접근이 불가능하다.

비록 CIA 트라이어드를 사용해서 보안목적을 잘 정의했지만, 보안목적을 완성

되게 표현하려면 보안 실무 필드에서 필요한 개념을 추가해야만 한다. 그중에서

가장 많이 언급되는 개념으로는 다음 두 가지가 있다.

●인증(Authentication): 진짜라는 성질을 확인할 수 있고 신뢰할 수 있다는 것이

다. 전송, 메시지, 메시지 출처 유효성에 한 확신이다. 사용자라고 하는 사람

이 정말 그 사용자인지와 시스템에 도착한 자료가 정말로 신뢰할 수 있는 출처에

서부터 온 것인지를 확인할 수 있는 것을 의미한다.

32

네트워크 보안 에센셜Network Security

Essentials

[그림 1.1]

보안 요구 트라이어드

가용성

무결성기

데이터및

서비스

●책임(Accountability): 보안 목적에는 한 개체의 행동을 유일하게 추적해서 찾아

낼 수 있어야만 한다는 사항이 들어 있어야 한다. 여기에는 부인봉쇄, 억제, 결함

분리, 침입 탐지 및 예방, 사후 복구와 법적인 조치 등이 포함된다. 진정으로 안

전한 시스템을 만든다는 게 불가능하기 때문에, 보안 침해에 한 책임이 있는

곳까지 추적할 수 있어야만 한다. 시스템은 반드시 이들의 활동상황을 기록하고,

나중에 포렌식 분석을 하여 보안 침해를 추적할 수 있거나 전송과 관련된 분쟁을

해결할 수 있도록 해야 한다.

사례

앞에 열거한 요구사항에 해 설명하기 위해 몇 가지 응용 예를 들어보기로 하자3).

이들 예에서 보안 침해(기 성, 무결성, 가용성 훼손)가 발생된 조직이나 개인에게

미칠 향을 세 가지 수준에서 알아보자. FIPS 199에서 이들의 수준을 정의하 다.

●저급 위험: 조직의 운 , 조직의 자산, 또는 개인에게 미칠 제한된 부정적 효과가

나타날 것으로 여겨진다. 제한된 부정적 효과란 예를 들면 기 성, 무결성, 가용

성이 훼손되면 (i) 조직이 원래 수행하는 주요 기능을 그 로 유지할 수는 있지만

어느 정도, 어느 기간 동안 성능이 떨어진다. 그러나 기능의 유효성이 눈에 띄게

줄어든다. (ii) 조직의 자산에 소규모 손상을 입힌다. (iii) 개인에게도 소규모 침

해가 발생한다.

●중급 위험: 조직의 운 , 조직의 자산 또는 개인에게 심각한 부정적 효과를 준다.

심각한 부정적 효과란 상실될 경우 (i) 조직이 원래 수행하는 주요 기능에 있어서

어느 정도 특정 기간 동안 성능이 심각하게 저하된다. (ii) 조직의 자산에 심각한

손상을 준다. (iii) 심각한 재정적 손실을 초래한다. 또는 (iv) 생명에 위협이 되는

부상을 입거나 생명을 잃을 정도는 아니지만 개인에게 심각한 손상을 끼친다.

●고급 위험: 조직의 운 , 조직의 자산 또는 개인에게 극심하고 재난수준의 부정

적 효과를 준다. 극심하고 재난수준의 부정적 효과란 상실될 경우 (i) 조직이 원

래 수행하는 주요 기능 중에서 한두 가지 기능을 상실하여 어느 정도, 특정 기간

동안 성능이 극심하게 저하된다. (ii) 조직의 자산에 치명적인 손상을 준다. (iii)

엄청난 재정적 손실을 초래한다. 또는 (iv) 생명에 위협이 되는 부상을 입거나 생

33

01CHAPTER개요

3) 이 사례는 퍼듀 학에서 출판한《Information Technology Security and Privacy Office》의 보안정

책문서에서 발췌하 다.

명을 잃는 극심하고 재난수준의 개인적 손상을 끼친다.

기 성

학생성적정보는 학생에게 있어서 기 성을 가진 매우 중요한 정보이다. 미국에서

이런 정보에 한 공개문제는 FERPA(Family Educational Rights and Privacy

Act)법에 의해 규제된다. 성적정보는 해당 학생, 부모 또는 성적을 업무로 관리하

는 사람만 열람할 수 있어야 한다. 학생 등록정보는 중간정도의 기 성이 필요한

정보로 분류된다. 물론 등록정보도 FERPA법에 의해 보호되기는 하지만 일상에서

이런 정보는 자주 열람되며, 성적정보보다는 덜 공격목표가 되며, 설사 노출된다

고 해도 그렇게 큰 손상을 주지 않는다. 학생 명부나 교원 명부 또는 학과 명단 같

은 디렉터리 정보는 기 성의 정도가 낮거나 기 성으로 보호하지 않아도 되는 정

보로 취급할 수 있다. 디렉터리 정보는 일반적으로 공개가 목적이거나 학교 웹사

이트에 공개한다.

무결성

병원 데이터베이스에 저장된 환자의 알레르기 정보를 가지고 무결성의 수준에

해 설명해보기로 하자. 의사가 사용할 의료정보는 반드시 정확해야 하고 현 시점

의 정보여야만 한다. 정보를 열람하고 업데이트할 수 있는 권한을 가진 어떤 사람

(예를 들면 간호사)이 병원에 해를 끼치기 위해 정보를 고의적으로 수정한다고 생

각해보자. 이 데이터베이스는 신속하게 신뢰할 수 있는 수준으로 복구되어야 하고

이런 오류를 추적해서 자료를 변경할 수 있는 책임을 가진 사람을 찾아낼 수 있어

야 한다. 환자의 알레르기 정보는 고 수준의 무결성이 보호되어야 하는 자산의 한

예이다. 부정확한 정보는 환자에게 심각한 손상을 주거나 죽게 할 수도 있기 때문

에 병원 측이 전적으로 법적책임을 지게 될 것이다.

중급 수준의 무결성이 필요한 자산의 예로는 특정 주제에 해 토론하기 위해

등록한 사용자에게 포럼을 제공하는 웹사이트이다. 등록된 사용자나 해커는 웹사

이트 내용을 위조하거나 외관을 훼손할 수 있다. 만약 포럼이 사용자의 재미를 위

해 이용되거나, 광고수입과 전혀 무관하거나, 연구같이 중요한 내용을 다루지 않

는다면 손실이라고 해야 별로 심각하지 않다. 웹 관리자가 데이터를 좀 복구하고,

재정적으로 약간의 손실을 보거나 시간을 들여야 하는 정도일 것이다.

저급 수준의 무결성이 필요한 곳으로는 익명으로 진행되는 여론조사 같은 데이

34

네트워크 보안 에센셜Network Security

Essentials

다. 뉴스 제공사 같은 웹사이트에서는 간단한 보안조치만 하고 사용자를 상으로

여론조사를 한다. 그러나 이런 여론조사가 부정확하고 비과학적이라는 것을 잘 알

고 있다.

가용성

구성요소나 서비스가 중요하면 중요할수록, 가용성 수준은 더 높아야 한다. 중요

한 시스템, 응용 프로그램, 장치 등에 한 인증서비스를 제공하는 시스템을 생각

해보자. 서비스를 방해하면 고객이 컴퓨팅 자원에 접근하지 못하고 직원이 중요한

업무를 수행하기 위해 자원에 접근하는 것을 막는다. 서비스를 못하게 되면 재정

적으로 커다란 손해를 입게 되고 직원의 생산성이 떨어지고 고객이 줄어들게 된다.

중급 수준의 가용성이 필요한 자산의 예를 들면 학의 공개된 웹사이트 같은

곳이다. 웹사이트는 재학생이나 예비 학생이나 기부자에게 정보를 제공하고 있

다. 이런 사이트가 학 정보 시스템에서 볼 때는 그렇게 중요한 곳은 아니다. 하

지만 사이트가 원활하게 돌아가지 않으면 사용자는 당황할 수밖에 없다.

온라인 전화번호부에서 번호를 찾는 응용프로그램은 낮은 수준의 가용성이 요

구되는 분야이다. 비록 응용프로그램이 일시적으로 분실된다고 해도 크게 문제가

되지는 않는다. 왜냐하면 오프라인상의 전화번호부나 114 등을 통한 다른 방법으

로 전화번호를 알 수 있기 때문이다.

컴퓨터 보안 위협

컴퓨터와 네트워크 보안은 재미있으면서도 매우 복잡한 문제이다. 그 이유는 다음

과 같은 상황을 보면 알 수 있다.

1.보안은 초보자가 생각하는 것처럼 그렇게 단순하지는 않다. 보안에 필요한 것

이 무엇인지는 바로 알 수 있다. 사실, 보안 서비스의 주요 필수사항은 한 마

디로 표현하면 기 성(confidentiality), 인증(authentication), 부인봉쇄

(nonrepudiation), 무결성(integrity)이다. 그러나 이런 필수 조건을 충족시키

는 메커니즘은 매우 복잡하고, 그 메커니즘을 이해하려면 치 한 논리가 필요

하다.

2.특정 보안 메커니즘이나 알고리즘을 개발하려면 그 보안구조를 깨려는 모든

형태의 공격 가능성을 고려해야 한다. 왜냐하면 많은 경우에 노련한 공격자

35

01CHAPTER개요

는 문제를 완전히 다른 시각에서 바라보기 때문이다. 그들은 보안 메커니즘

의 약점을 예상치 못한 곳에서 찾아내고 공격에 성공하기 위한 방안을 고안

해낸다.

3.2번의 관점에서 보았듯이 특정 서비스 제공절차가 눈에 쉽게 들어오지 않는

경우가 많다. 한 가지 상황만 보면 어떤 특정 보안 사항이 필요하다고 여겨지

지만 전체적인 면을 고려할 때 그런 정교한 보안 방안이 정말 필요한 것인지

아닌지 구별해낸다는 건 쉬운 일이 아니다. 다양한 방어 책을 종합적으로

고려할 때 비로소 사용된 방어 책이 의미가 있게 된다.

4.다양한 보안 메커니즘이 설계되어 있는데 이들을 어디에 사용할지를 결정해

야 한다. 물리적 위치(예를 들면 네트워크상의 어느 위치에 보안 메커니즘이

필요한가)와 논리적 판단(예를 들면 TCP/IP(Transmission Control

Protocol/Internet Protocol)와 같은 모델의 어느 계층 혹은 어느 계층에다

메커니즘을 설치해야만 하는지를)의 두 가지 측면을 고려해서 보안 메커니즘

을 구성해야 한다.

5.보안 메커니즘은 일반적으로 한 가지 이상의 알고리즘이나 프로토콜로 구성

된다. 보통 이런 메커니즘을 사용하는 개체는 비 정보(예를 들면 암호화 키)

를 이용해야만 하는데, 이것 때문에 키 생성, 분배, 비 정보의 보호 같은 문

제가 생기게 된다. 또한 통신 프로토콜에 의존할 수밖에 없고 이 프로토콜의

동작이 매우 복잡하기 때문에 보안 메커니즘을 발전시킨다는 것은 복잡한 문

제가 될 수밖에 없다. 예를 들면, 보안 메커니즘이 잘 작동하도록 송신자로부

터 수신자까지 전달되는 메시지에 송신시간제한을 두어야만 하는데, 어떤 특

정 프로토콜이나 네트워크는 메시지 전송 도중에 변수를 삽입하거나 예상치

못한 지체를 유발하기 때문에 이 같은 시간제한 기술이 무용지물이 될 수도

있다.

6.컴퓨터와 네트워크 보안은 근본적으로 허점을 찾으려는 공격자와 이들을 막

으려는 설계자나 관리자 사이의 기술적 싸움이다. 공격자는 약점을 한 가지

만 찾으면 되기 때문에 유리한 입장인 반면에 설계자는 완벽한 보안조치를

하려면 모든 약점을 알아야 하고 제거해야만 한다는 불리한 입장이다.

7.사용자나 시스템 관리자 중 일부는 보안사고가 발생하고 나서야‘보안에 투

자를 해야 되겠구나.’라고 느낀다.

8.보안에서중요한것은정기적으로심지어는항상모니터링해야하는것인데, 요

즈음같은단기적이고업무가과다한환경에서는그렇게하기가매우어렵다.

36

네트워크 보안 에센셜Network Security

Essentials

9.아직까지도 많은 사람이 보안이라는 개념을 설계 단계부터 집어넣는 것이 아

니라, 시스템이 완성된 다음에 추가하는 사항으로 인식하고 있다.

10.많은 사용자(심지어 보안 관리자도) 보안조치를 강하게 하면 정보 시스템이

나 정보이용에 있어서 사용자 편리성이나 효율성을 떨어뜨린다고 생각한다.

앞에서 언급한 어려운 문제점은 다양한 보안 위협과 이 책에 있는 보안 메커니

즘을 연구하면서 다양한 경로를 통해 만나게 될 것이다.

한 기관의 보안 필요성을 효과적으로 평가하고 다양한 보안 장비와 보안 정책의

가치를 평가하고 선택하기 위해서, 보안 관리자는 보안에 관한 필요한 항목을 체

계적으로 정의하고 이런 필요 사항을 충족시키기 위해 구체적인 접근방법이 필요

하다. 이런 작업은 사실 중앙 집중식 데이터처리 환경하에서도 쉽지 않은 일인데

하물며 근거리 통신망이나 광역 통신망 환경에서는 당연히 더욱 복잡한 문제가 될

것이다.

ITU-T4) 권고안 X.800, OSI 보안 구조(Security Architecture for OSI)에서는

체계적 접근방법을 정의하고 있다. OSI 보안 구조는 관리자가 효과적으로 보안 문

제를 조직화할 수 있는 유용한 방법을 제공한다. 더구나 이 보안구조가 국제적으

로 표준화되어 있기 때문에 컴퓨터나 통신장비 생산업체는 권고된 서비스와 메커

니즘의 구조화된 정의에 따라서 제품과 서비스에 보안규정을 적용하여 발전시

킨다.

배우는 입장에서 보면 이런 체계화된 OSI 보안 구조 덕분에 이 책에서 다루게

될 추상적이기는 하지만 유익하고 개략적인 여러 개념을 쉽게 파악할 수 있다.

OSI 보안 구조 핵심은 보안 공격, 보안 메커니즘 그리고 보안 서비스인데 이들을

다음과 같이 간략하게 정의할 수 있다.

37

01CHAPTER개요

1.2 OSI 보안 구조

4) The International Telecommunication Union(ITU), Telecommunication Standardization

Sector(ITU-T)는 UN에서 지원하는 기관으로서 권고안(Recommendations)이라고 불리는 전기통신과

개방 시스템 상호연결(OSI)과 관련된 표준을 제정한다.

●보안 공격(Security attack): 기관이 소유한 정보의 안전성을 침해하는 제반 행위.

●보안 메커니즘(Security mechanism): 보안 공격을 탐지, 예방하거나 공격으로

인한 침해를 복구하는 절차(또는 이런 절차를 처리하는 장치).

●보안 서비스(Security service): 조직의 정보 전송과 데이터 처리 시스템의 보안

을 강화하기 위한 처리 서비스 또는 통신 서비스. 이 서비스는 보안공격에 응

하기 위한 것이며, 하나 또는 그 이상의 보안 메커니즘을 사용하여 서비스를 제

공한다.

문헌상에서 위협(threat)과 공격(attack)이란 두 용어는 비슷한 개념으로 자주

사용되는데 표 1.1에서는 RFC 2828의 인터넷 보안 용어해설을 인용하여 이들을 정

의하 다.

보안 공격(security attack)을 X.800과 RFC 2828에 따라 분류하면 소극적 공격

(passive attack)과 적극적 공격(active attack)으로 나눌 수 있다. 소극적 공격이

란 시스템으로부터 정보를 획득하거나 사용하려는 시도를 말하고, 시스템 자원에

는 향을 끼치지 않는 공격 형태를 의미한다. 적극적 공격이란 시스템 자원을 변

경하거나 시스템 작동에 향을 끼치는 공격 형태를 말한다.

38

네트워크 보안 에센셜Network Security

Essentials

<표 1.1>

위협과 공격(RFC2828)

위협

보안에 침해와 위해를 가할 수 있는 환경, 능력, 행동, 사건(event)과 같은 것이다. 즉, 위협이란

보안 취약점을 이용하려는 잠재적인 위험을 말한다.

공격

지적인 위협을 수반하는 시스템 보안에 한 침범을 말한다. 여기서 지적인 위협이란 보안 서비스

를 교묘히 피하거나 시스템 보안 정책을 위반하는 정교한 시도(특히 방법과 기술 측면에서)를 말

한다.

1.3 보안 공격

소극적 공격

소극적 공격이란 전송 정보에 한 도청이나 감시를 의미한다. 소극적 공격자의

목표는 전송 중인 정보를 취득하는 것이다. 여기에는 두 가지 유형의 공격이 있는

데 이들은 메시지내용 갈취(release of message contents)와 트래픽 분석(traffic

analysis)이다.

메시지내용 갈취의 개념은 쉽게 이해할 수 있다(그림 1.2(a) 참조). 전화 화나

전자우편 메시지나 파일 전송을 이용하여 민감하거나 비 스런 정보를 전달하는

39

01CHAPTER개요

Bob

Darth

Alice

Bob

Darth

Alice

Bob이�Alice에게�보내는�메시지를Darth가�몰래�본다.

인터넷�및�기타�통신망

인터넷�및�기타�통신망

(b)�트래픽�분석

(a)�메시지내용�갈취

Bob이�Alice에게�보내는�메시지의�유형을�Darth가�몰래�본다.

[그림 1.2]

소극적 공격

경우가 있는데 공격자가 이렇게 전달되는 내용을 몰래 취득하거나 보는 것을 갈취

라고 말하고 이런 공격을 막고자 한다.

두 번째 소극적 공격인 트래픽 분석은 좀 더 구체적인 방법이다(그림 1.2(b) 참

조). 가령 메시지 내용이나 트래픽 정보를 숨기는(masking)5) 기술을 적용하기 때

문에 공격자가 설사 그 메시지를 획득하더라도 그 메시지로부터 정보를 취득하지

못하게 할 수 있다고 가정해보자. 이때 정보의 내용을 숨기는 일반적인 방법은 암

호화이다. 하지만 암호 기법을 적소에 적용했다 하더라도 공격자가 메시지의 유형

을 관찰하는 것은 별로 어렵지 않다. 공격자는 통신자의 접속위치와 신원을 파악

하거나 교환되는 메시지의 빈도와 메시지 길이 등을 관찰할 수 있다. 이런 정보를

적절히 이용하면 통신자의 통신 특성을 추측할 수 있다.

소극적 공격에서는 공격자가 실제로 데이터를 변경하지 않기 때문에 공격을 당

했는지 탐지하기가 매우 어렵다. 전형적으로 메시지 트래픽은 분명히 정상적인 방

법으로 보내고 받지만, 송신자나 수신자는 제3자가 메시지를 읽거나 트래픽 패턴

을 관찰하는지를 알 수 없다. 하지만 이런 공격이 성공하지 못하도록 미연에 방지

할 수는 있다. 따라서 소극적 공격에 해서는 탐지보다는 예방에 더 신경을 써야

한다.

적극적 공격

적극적 공격은 데이터 스트림을 수정하거나 가짜 데이터 스트림을 만드는 행위를

포함해서 다음 네 가지로 분류할 수 있다. 이 네 가지는 신분위장(masquerade), 재

전송(replay), 메시지 수정(modification of messages), 서비스 거부(denial of

service)이다.

신분위장은 한 개체가 다른 개체의 행세를 하는 것이다(그림 1.3(a) 참조). 이 공

격은 다른 형태의 적극적 공격과 병행해서 수행된다. 예를 들면, 다른 개체의 합법

적인 인증 과정에 사용되는 메시지를 갈취한 다음 메시지 재전송을 시도하는 것이

여기에 해당된다. 따라서 제한된 범위의 특권을 가지고 있는 인증된 실체가 보다

많은 특권을 갖고 있는 실체인 척 가장하여 추가적인 특권을 누릴 수 있다.

재전송은 소극적 공격의 한 가지로 획득한 데이터 단위를 보관하고 있다가 시간

이 경과한 후에 재전송을 함으로써 인가되지 않은 사항에 접근하는 효과를 노리는

40

네트워크 보안 에센셜Network Security

Essentials

5) 있는 그 로의 데이터를 숨기는 것이 아니라 적당한 기술이나 메커니즘을 이용하여 변형시키는 것을 말

한다.—역자 주

행위를 말한다(그림 1.3(b) 참조).

메시지 수정이란 단순히 적법한 메시지의 일부를 불법으로 수정하거나 메시지

전송을 지연시키거나 순서를 뒤바꾸어서 인가되지 않은 효과를 노리는 행위를 말

한다(그림 1.3(c) 참조). 예를 들면, “존 스미스에게 비 문서 파일 accounts를 읽

을 권한을 부여함”이라는 원래 메시지를“프레드 브라운에게 비 문서 파일

accounts를 읽을 권한을 부여함”으로 불법적으로 내용을 수정하는 행위이다.

서비스 거부는 통신설비가 정상적으로 운용되거나 관리되지 못하도록 방해하는

행위를 말한다(그림 1.3(d) 참조). 이 공격은 특정 목표물을 상으로 할 수 있는데,

41

01CHAPTER개요

Bob

Darth

Alice

AliceBob

Darth

실제�Darth가�보낸�메시지이지만Bob이�보낸�것처럼�보이게�한다.

인터넷�및기타�통신망

인터넷�및기타�통신망

(a)�신분위장

(b)�재전송

Bob이�Alice에게�보낸�메시지를갈취한�뒤�Alice에게�재전송한다.

[그림 1.3]

적극적 공격

예를 들면 특정 목적지(예를 들면 보안 감사 서비스)로 전송되는 모든 메시지를 어

느 개체가 가지 못하게 억류하는 경우가 이런 공격에 속한다. 다른 유형의 서비스

거부공격으로는 네트워크 전체를 상으로 하는 방해 행위로서 네트워크를 마비

시키거나 성능을 저하시키기 위해 량의 메시지를 유발하여 과부하를 일으키는

방법이 있다.

적극적 공격은 소극적 공격과는 상반된 특성을 가진다. 소극적 공격의 경우 탐

지가 어려운 반면 예방하는 수단을 강구하는 것은 가능하다. 이와는 다르게 적극

42

네트워크 보안 에센셜Network Security

Essentials

Bob

Darth

Alice

Bob

Darth

Server

Darth가�Bob이�Alice에게�보낸�메시지를�수정한다.

인터넷�및�기타�통신망

인터넷�및�기타�통신망

(d)�서비스�거부

(c)�메시지�수정

Darth가�서버의서비스를�방해한다.

[그림 1.3]

적극적 공격

적 공격을 완벽하게 차단한다는 것은 불가능하다. 그 이유는 모든 통신 설비와 통

신 경로를 항상 물리적으로 보호해야 하기 때문이다. 따라서 적극적 공격에 한

방어목표는 탐지하고 공격으로 인한 재전송이나 피해를 복구하는 것이 될 수밖에

없다. 공격을 탐지하는 것만으로도 공격자로 하여금 공격을 단념시키는 효과가 있

기 때문에 예방에도 기여한다.

X.800에서 보안 서비스(security service)란 시스템의 적절한 보안이나 데이터 전

송의 보안을 보장하는 통신 개방 시스템의 프로토콜 계층에 의해서 제공되는 서비

스라고 정의된다. 보다 명확한 정의는 이에 한 정의를 하고 있는 RFC 2828을

참조하면 될 것이다. 여기서의 정의는 시스템 자원 보호를 위해 시스템이 제공하

는 처리 서비스나 통신 서비스라고 되어 있다. 보안 서비스는 보안 정책(security

policy)을 구현하고, 반면에 보안 메커니즘(security mechanism)에 의해서 구현

된다.

X.800은 이 서비스를 5가지 서비스로 분류하고 14가지 구체적 서비스(표 1.2

참조)로 나눠놓았다. 각각의 분류를 차례로 살펴보기로 하자.6)

인증

인증 서비스(authentication service)는 통신이 검증되었다는 것을 확인해주는 것

과 관련되어 있다. 경고나 경계 신호 같은 단일 메시지의 경우 인증 서비스의 기능

은 수신자로 하여금 메시지가 송신 주체라고 주장하는 송신자로부터 왔다는 확신

을 갖게 해주는 서비스이다. 터미널을 이용해 호스트에 연결할 때처럼 지속되는

메시지 상호교환이 이루어지는 경우에 두 가지 상황을 고려할 수 있다. 첫째, 초기

연결 시도에서 인증 서비스는 양측이 모두 적법한 개체임을 확신시켜준다. 즉, 양

43

01CHAPTER개요

1.4 보안 서비스

6) 보안에 관련된 문서에서 등장하는 많은 용어는 모든 사람의 합의나 동의에 의해 사용되는 것은 아니다.

예를 들면, 용어 무결성(integrity)이 어떤 때는 정보보안의 모든 면을 아우르는 용어로 사용되며 인증

(authentication)이 경우에 따라서 신원 증명으로 쓰이기도 하고 이 장에서 나오는 무결성 다음에 나열

되는 다양한 기능으로 간주되기도 한다.

44

네트워크 보안 에센셜Network Security

Essentials

인증(AUTHENTICATION)

통신 개체가 주장하는 것처럼 정말로 그 당사자

인지를 확인해주는 것.

등 개체 인증(Peer Entity Authentication)

연결하고 있는 개체의 신분에 한 확신을 주기

위해서 논리적 연결에서 사용하는 인증.

데이터-출처 인증(Data-Origin Authentication)

비연결 전송에서 수신된 데이터의 출처가 정말

주장하고 있는 곳에서 온 것인지를 확신시켜주는

인증.

접근제어(ACCESS CONTROL)

자원을 불법적으로 사용하지 못하도록 방지하는

것(즉, 이 서비스는 누가, 어떤 조건하에, 어떤 자

원을 사용하도록 하는지를 말하는 자원에 접근할

수 있는 제한을 말한다).

데이터 기 성(DADA CONFIDENTIALITY)

데이터의 불법적 노출을 막는 것.

연결 기 성(Connection Confidentiality)

연결시 모든 사용자 데이터에 한 보호.

비연결 기 성(Connectionless Confidentiality)

단일 데이터 블록 안의 모든 사용자 데이터에

한 보호.

선별된-필드 기 성 (Selective-Field

Confidentiality)

연결이나 단일 데이터 블록의 사용자 데이터 안

의 선별된 필드에 한 보호.

트래픽-흐름 기 성(Traffic-Flow Confidentiality)

트래픽 흐름을 관찰하여 정보를 가로채려는 경우

에 한 보호.

데이터 무결성(DATA INTEGRITY)

수신된 데이터가 인증된 개체가 보낸 것과 정확

히 일치하는지에 한 확신(즉, 수정, 추가, 제거

혹은 재전송이 없음을 확인).

복구 가능 연결 무결성(Connection Integrity

with Recovery)

연결 시 사용자 데이터의 무결성을 제공하고, 데

이터를 복구할 때 전체적인 데이터 열안의 모든

데이터에 한 수정, 추가, 삭제 혹은 재전송이

있었는지를 감지한다.

복구 없는 연결 무결성(Connection Integrity

without Recovery)

앞과 동일하다. 그러나 복구하지 않고 탐지한다.

선별된-필드 연결 무결성(Selective-Field

Connention Integrity)

연결시 전송되는 데이터블록의 사용자 데이터 안

의 선별된 필드의 무결성을 제공하고, 선별된 필

드의 수정, 추가, 삭제, 재전송이 있었는지를 판

단할 수 있는 형태를 취한다.

비연결 무결성(Connetionless Integrity)

단일 비연결 데이터 블록의 무결성을 제공하고,

데이터의 수정을 탐지할 수 있는 형태를 취할 수

도 있다. 추가적으로 재전송 탐지를 위한 제한적

형태를 취할 수도 있다.

선별된-필드 비연결 무결성(Selective-Field

Connectionless Integrity)

단일 비연결 데이터 블록 안의 선별된 필드에

한 무결성을 제공한다. 선별된 필드의 수정이 있

었는지를 판단할 수 있는 형태를 취한다.

부인봉쇄(NONREPUDIATION)

통신의 한 주체가 통신에 참여했던 사실을 일부

혹은 전부를 부인하는 것을 방지한다.

부인봉쇄, 출처(Nonrepudiation, Origin)

메시지가 특정 출처에서 보내졌음을 증명한다.

부인봉쇄, 목적지(Nonrepudiation, Destination)

특정 개체가 메시지를 수신했음을 증명한다.

<표 1.2>

보안 서비스(X.800)

측 모두가 상 가 적법한 개체임을 이 서비스를 통해서 확인하는 것이다. 둘째, 인

증 서비스는 상호 간의 통신이 권한이 없는 전송이나 수신을 시도하는 제3자에 의

해서 방해받지 않았다는 것을 확신시켜주는 것이다.

두 가지 구체적인 인증 서비스는 X.800 표준으로 정의된다.

● 등 개체 인증(Peer entity authentication): 통신하는 상 방의 신원을 확인시

켜준다. 연결을 설정할 때와 데이터를 전송하는 과정 중에 이 인증 서비스를 사

용한다. 이 서비스는 상 방이 신분위장을 하거나 이전의 연결에서 사용했던 메

시지를 이용한 재전송을 시도하고 있지 않다는 확신을 갖게 한다.

●데이터 출처 인증(Data origin authentication): 데이터 단위의 출처에 한 확인

을 할 수 있다. 이 인증 서비스는 데이터 단위가 수정되거나 복제되는 것을 방어

해주지는 못한다. 이 유형의 인증 서비스는 쌍방 간에 사전 연결 협상 같은 것을

할 필요가 없는 전자메일 같은 응용에 사용된다.

접근제어

네트워크 보안에서 접근제어(access control)란 통신 링크를 통한 호스트 시스템과

응용 간의 접근을 제한하고 통제할 수 있는 능력을 말한다. 이와 같은 제어를 하기

위해서는 접근시도를 하는 각 개체에 해 우선 신원을 확인하거나 인증해야 하

고, 이에 따라서 해당 개체에 적합한 접근 권한을 부여한다.

데이터 기 성

기 성이란 소극적 공격으로부터 데이터를 보호하는 것을 말한다. 데이터 전송의

내용을 중심으로 보면 보호의 레벨을 여러 단계로 나눌 수 있다. 가장 광범위한 보

호 서비스는 특정 기간 동안 두 사용자 사이에 전송된 데이터를 모두 보호하는 것

이다. 예를 들면, 두 시스템 사이에 TCP 연결이 설정될 때, 광범위한 보호 서비스

란 TCP 연결을 통해 전송한 데이터가 노출되지 않도록 보호한다는 것을 의미한

다. 협의의 보호 서비스는 단일 메시지나 심지어는 메시지 내의 특정 필드에 한

보호를 의미한다. 협의의 서비스는 광범위한 서비스에 비하면 덜 유용하고 구현이

복잡하고 비용도 많이 든다.

다른 측면에서 기 성이란 분석공격으로부터 트래픽 흐름을 보호하는 것이다.

이를 위해서는 통신 설비를 통해 데이터 전송의 발신지와 목적지, 통신 빈도, 메시

45

01CHAPTER개요

지 길이 등의 특성을 공격자가 관찰할 수 없도록 해야 한다.

데이터 무결성

기 성 서비스처럼 무결성 서비스(integrity service)도 메시지 스트림, 단일 메시

지, 메시지 안의 선별된 필드에 적용될 수 있다. 다시 말하지만, 가장 유용하고 단

순한 방법은 스트림 전체를 보호하는 것이다.

메시지 스트림을 처리하는 연결형 무결성 서비스는 보낸 메시지가 중간에서 복

제되거나, 추가되거나, 수정되거나, 순서가 바뀌거나 재전송됨이 없이 그 로 송

신되는 것을 보장한다. 데이터 파괴 또한 이 무결성 서비스에 의해서 다루어진다.

따라서 연결형 무결성 서비스는 메시지 스트림의 수정과 서비스 거부 모두에 역점

을 두어 다룬다. 한편, 비연결형 무결성 서비스는 전송 상인 큰 데이터에는 관심

이 없고 작은 단위 메시지만 다루는데 일반적으로 메시지 수정에 해서만 보호

서비스를 제공한다.

이 서비스는 복구를 할 수 있는 경우와 할 수 없는 경우의 두 경우로 구분할 수

있다. 무결성 서비스가 적극적 공격과 관련이 크기 때문에 예방보다는 탐지에 더

관심을 갖는다. 만일 무결성에 한 침해가 발생한 것을 탐지하게 되면 이 서비스

는 단지 침해 내용만을 보고하기 때문에 침해 복구는 소프트웨어나 사람의 손이

가는 작업을 통해 이루어진다. 다른 방안으로 무결성 침해에 의한 손상된 데이터

를 복구하는 메커니즘이 있는데 자동화된 복구 메커니즘이 가장 많이 사용된다.

부인봉쇄

부인봉쇄(nonrepudiation)란 송신자나 수신자 양측이 메시지를 전송한 사실 자체

를 부인하지 못하도록 막는 것을 말한다. 따라서 어떤 메시지가 송신되었을 때 수

신자는 그 메시지가 실제로 송신자라고 주장하는 주체로부터 송신되었음을 확신

할 수 있다. 마찬가지로 메시지가 수신되었을 때 송신자는 그 메시지가 실제로 수

신자라고 주장하는 주체에 의해서 수신되었음을 확신할 수 있다.

가용성 서비스

X.800과 RFC 2828에서 가용성(availability)이란 인가된 시스템이 자원에 접근할

필요가 있거나 사용하고자 할 때 시스템의 성능에 따라 시스템 자원에 접근할 수

46

네트워크 보안 에센셜Network Security

Essentials

있도록 하는 것을 말한다(즉, 사용자가 요구할 때마다 시스템 성능에 따라 서비스

를 제공할 수 있으면 가용성이 있다고 한다). 다양한 형태의 공격에 의해서 가용성

이 줄어들거나 가용성에 손실이 발생할 수 있다. 어떤 공격은 인증이나 암호화와

같은 자동화된 책방안으로 처리되기도 하지만 어떤 공격에 해서는 분산 시스

템에 속한 개별 시스템에 한 가용성 손실을 예방하거나 복구하기 위한 물리적

작업이 필요하다.

X.800은 가용성을 다양한 보안 서비스와 연관된 자원으로 간주한다. 그러나 이

서비스를 구체적으로 가용성 서비스라고 불러도 좋을 것이다. 가용성 서비스는 그

시스템의 가용성을 보장하기 위해 시스템을 보호하는 서비스이다. 이 서비스는 서

비스 거부 공격 때문에 제기되는 보안문제에 역점을 두고 있다. 이 서비스는 시스

템 자원에 한 적절한 관리와 제어에 의해 좌우되고 접근 제어 서비스와 다른 보

안 서비스에 의해서도 향을 받는다.

표 1.3에 X.800에서 정의하는 보안 메커니즘의 목록을 나타내었다. 표에서 보듯이

메커니즘은 특정 프로토콜 계층에서 구현되는 것과 모든 특정 프로토콜 계층이나

보안 서비스와는 관련이 없는 것으로 나누어진다. 이 책을 공부하다보면 이런 메

커니즘에 해서 때가 되면 설명할 것이기 때문에 암호화(encipherment)의 정의

에 한 것만 빼고 여기서는 그냥 넘어가기로 한다. X.800에서는 복구가능 암호화

메커니즘과 복구불가 암호화 메커니즘 두 가지로 구분한다. 복구가능 암호화 메커

니즘은 단순히 데이터를 암호화하고 복호화할 수 있는 암호 알고리즘이다. 복구불

가 암호화 메커니즘에는 디지털 서명과 메시지 인증 응용에 사용되는 해시 알고리

즘과 메시지 인증 코드가 있다.

X.800에 근거한 표 1.4는 보안 서비스와 보안 메커니즘의 관계를 나타낸다.

47

01CHAPTER개요

1.5 보안 메커니즘

48

네트워크 보안 에센셜Network Security

Essentials

<표 1.3>

보안 메커니즘(X.800)

특정 보안 메커니즘(SPECIFIC SECURITY

MECHANISMS)

통신 개체가 주장하는 것처럼 정말로 그 당사자

인지를 확인해주는 것.

암호화(Encipherment)

데이터를 읽을 수 없는 형태로 변환하는 데 수학

적 알고리즘을 사용하는 것. 데이터를 변환하고

다시 복구하는 것은 알고리즘과 거기에 사용되는

키(사용하지 않을 경우도 있다)에 따라 달라진다.

디지털 서명(Digital Signature)

데이터 수신자가 데이터의 발신자와 무결성을 입

증하고 위조를 막도록(예를 들면 수신자에 의해

서) 데이터에 붙이는 데이터나 데이터 단위의 암

호적 변경을 말한다.

접근제어(Access Control)

자원에 접근할 권한을 제한하는 다양한 메커니즘.

데이터 무결성(Data Integrity)

데이터 단위나 데이터 단위의 스트림의 무결성을

확신하는데 사용되는 다양한 메커니즘.

인증 교환(Authentication Exchange)

정보교환을 통해 개체의 신원을 확인하는 데 사

용하는 메커니즘.

트래픽 패딩(Traffic Padding)

트래픽 분석 시도를 방해하기 위해서 데이터 스

트림 안의 빈 곳에 비트를 채워 넣는 것.

경로 제어(Routing Control)

특정 데이터에 해 물리적으로 안전한 경로를

선택할 수 있게 한다. 특히 보안침해가 의심스런

경우 경로를 바꿀 수 있게 한다.

공증(Notarization)

데이터 교환의 어떤 성질을 확신하기 위해 신뢰

받는 제3자를 이용한다.

일반 보안 메커니즘(PERVASIVE SECURITY

MECHANISMS)

임의의 특정 OSI 보안 서비스나 프로토콜 계층

에 구애받지 않는 메커니즘.

신뢰받는 기능(Trusted Functionality)

어떤 기준(예를 들면 보안정책에 의해 형성되는)

으로 볼 때 올바른 것으로 여겨지는 것.

보안 레이블(Security Label)

자원(데이터 단위)의 보안속성에 이름을 붙이거

나 자원의 보안속성을 지정하는 그 자원에 한

표시.

사건 탐지(Event Detection)

보안-관련 사건에 한 탐지.

보안 감사 추적(Security Audit Trail)

보안 감사를 하기 위해 수집하거나 이용되는 데

이터로서 시스템 기록과 동작을 독립적으로 조사

하고 검토하는 것.

보안 복구(Security Recovery)

사건처리와 관리기능 같은 메커니즘의 요구사항을

다루고 복구 동작을 수행한다.

우리가 앞으로 공부하게 될 많은 내용을 포함하는 모델을 일반적인 용어를 사용하

여 그림 1.4에 나타내었다. 어떤 인터넷을 통해서 메시지를 한쪽에서 다른 쪽으로

전송한다고 하자. 이 송신과정에서 통신주체(principals)로서의 양쪽은 교환이 이

루어지도록 서로 협조를 해야 한다. 송신자로부터 수신자까지 인터넷을 통과하는

경로를 정의하고, 양 주체는 통신 프로토콜(예를 들면 TCP/IP)을 사용하기로 협의

하여 논리적 정보 채널을 구성하여야만 한다.

기 성 및 인증 등에 한 공격으로부터 정보 전송을 보호할 필요가 있거나 보

호를 하는 것이 바람직할 경우 필요한 보안 조치를 취한다. 모든 보안기술은 다음

두 가지 성질이 있다.

1.보안을 위해서 전송될 정보를 변환한다. 예를 들면, 공격자가 읽어볼 수 없도

록 메시지를 뒤섞는 식으로 메시지를 암호화시키는 것과 송신자의 신원을 확

인하기 위해 메시지를 이용해서 만든 코드를 메시지에 첨부하는 것이다.

2.두 주체는 그들만이 알고 공격자는 모르는 모종의 비 정보를 공유한다. 예

를 들면, 메시지를 전송하기 전에 메시지를 뒤섞는 변환에 사용하고, 수신 측

49

01CHAPTER개요

<표 1.4>

보안 서비스와 메커니즘의 관계

서비스메커니즘

암호화 디지털 서명 접근제어 데이터무결성 인증 교환 트래픽패딩 라우팅제어 공증

등 개체인증 Y Y Y

데이터 출처인증 Y Y

접근제어 Y

기 성 Y Y

트래픽 흐름 기 성 Y Y Y

데이터 무결성 Y Y Y

부인봉쇄 Y Y Y

가용성 Y Y

1.6 네트워크 보안 모델

에서 메시지를 받은 뒤 메시지를 복구7)하는 데 사용하는 암호키가 여기에 해

당된다.

안전한 전송을 위해 신뢰할 수 있는 제3자를 필요로 하는 경우도 있다. 예를 들

면, 제3자는 공격자가 모르는 비 정보를 두 송신 주체에게 책임지고 전달하는 임

무를 갖는다. 또는 메시지 전송의 인증에 있어서 양쪽 통신 주체 간 분쟁이 발생할

경우 조정자 역할을 할 수도 있다.

이 일반적 모델은 특정 보안 서비스를 설계하는 데 4가지 기초적인 임무를 다음

과 같이 나타내고 있다.

1.보안을 위한 변환을 수행할 알고리즘을 설계한다. 이 알고리즘은 공격자가 이

변환을 깰 수 없을 정도가 되어야 한다.

2.이 알고리즘에서 사용될 비 정보를 생성해야 한다.

3.비 정보를 공유하고 배분할 수 있는 방법을 개발해야 한다.

4.특정 보안 서비스를 위해 보안 알고리즘 및 비 정보를 사용할 양쪽 통신 주

체가 사용할 프로토콜을 구체화해야 한다.

이 책의 제1부와 2부에서는 그림 1.4에 나타낸 모델에 적합한 보안 메커니즘과

보안 서비스의 유형에 해서 집중적으로 공부할 것이다. 그러나 이 책에서 다루

게 될 모델 중에서 몇 가지 유형의 보안관련 상황은 이 모델에 꼭 맞지 않을 수도

있다. 침입자로부터 정보 시스템을 보호할 목적으로 만들어진 다른 모델의 일반적

인 유형을 그림 1.5에 나타내었다. 부분의 독자는 네트워크를 통해 시스템에 침

입하는 해커가 어떤 사람인지 잘 알고 있다. 단순히 컴퓨터 시스템을 깰 수 있다는

자기만족을 위해서 침입을 시도하는 사람을 해커라고 부른다. 한편 침입자

(intruder)란 손해를 끼칠 의도가 있는 불만을 가진 직원이 될 수도 있고 경제적 이

득을 노려서 컴퓨터 자원을 이용할 목적으로 침입하는 범죄자일 수도 있다(예를 들

면 신용카드 번호 불법취득이나 불법 금융거래).

50

네트워크 보안 에센셜Network Security

Essentials

7) 양 통신 주체 중 한쪽만 비 정보를 소유하는 소위 공개키 암호로 알려진 유형의 암호는 제6장에서 다

룬다.

다른 유형의 침입으로는 시스템의 취약점을 이용하기 위하여 컴퓨터 시스템 안

에 어떤 논리(logic)(작은 프로그램)를 심어놓아 응용 프로그램뿐만 아니라 편집기

나 컴파일러 같은 유틸리티 프로그램에게까지 향을 주는 행위이다. 이런 프로그

램의 위협 형태는 다음 두 가지 유형이다.

1.정보 접근 위협(Information access threats)이란 특정 사용자에게 접근이

불허된 데이터를 가로채거나 수정해서 그 사용자 자신에게 유리하도록 만드

는 위협이다.

2.서비스 위협(Service threats)이란 합법적인 사용자가 이용하는 것을 방해하

기 위해 컴퓨터의 서비스 결함을 악용하는 위협이다.

소프트웨어 공격의 표적인 두 사례는 바이러스(virus)와 웜(worm)이다. 이런

공격은 유용한 소프트웨어에다 악성 로직을 잠복시켜 놓았기 때문에 그 소프트웨

51

01CHAPTER개요

[그림 1.4]

네트워크 보안 모델

신뢰된�3자(비 정보의�중재자,�분배자)

공격자

비 �정보 비 �정보

정보채널 보안�관련�전송보안�관련�전송

수신자송신자

메시지

메시지

안전한�메

시지

안전한�메

시지

[그림 1.5]

네트워크 접근 보안모델

데이터공격자

�사람(예:�해커)�소프트웨어��(예:�바이러스,�웜)

접근�채널

게이트�키퍼기능

정보�시스템

컴퓨팅�지원���(프로세스,�메모리,�I/O)�

프로세스

소프트웨어

내부�보안�통제

어를 시스템에 깔면 시스템이 감염된다. 이런 로직은 네트워크를 통해서 감염될

수도 있는데 이것이 네트워크 보안에 있어서는 더 큰 위협이다.

보안 메커니즘은 불법침입 문제에 해 넓은 의미에서 두 가지의 범주로 나눌

수 있다(그림 1.5 참조). 첫 번째 범주는 게이트키퍼(gatekeeper) 기능으로 패스워

드 로그인 과정을 이용해서 인가받지 않은 사용자를 가려내고 웜이나 바이러스 같

은 공격을 탐지하여 제거하는 것이다. 두 번째는 일단 인가받지 않은 사용자나 악

성 소프트웨어의 접근을 차단한 뒤에 2차 방어선에서 침입자가 있었는지 탐지하기

위해 컴퓨터의 동작을 모니터링하고 저장된 정보를 분석하는 다양한 내부적 제어

를 수행하는 것이다. 이런 주제에 해서는 제3부에서 다루기로 한다.

이 책에서 설명하고 있는 많은 보안 기술과 응용은 표준화되었다. 추가적으로 표

준은 관리나 전반적인 보안 메커니즘과 서비스 아키텍처 처리를 위해 개발되었다.

이 책 전반에 걸쳐서 가장 많이 사용되는 표준에 해 설명할 것이고 암호와 네트

워크 보안의 다양한 관점에서 개발 중인 표준에 해서도 설명할 것이다. 다양한

기관에서 이러한 표준을 제안하고 개발하고 있다. 지금 현재 가장 중요한 기관을

살펴보면 다음과 같다.

●NIST(National Institute of Standards and Technology): NIST는 미국연방기

구인데 미국정부에서 사용할 목적과 사설분야 혁신과 관련된 측량과학, 표준, 기

술을 다루고 있다. 미국 국내기관임에도 불구하고, NIST FIPS(Federal

Information Processing Standards)와 SP(Special Publications)는 전 세계

에 향력을 미치고 있다.

● ISOC(Internet Society): ISOC는 전문가 집단으로서 국제적인 기구와 개인회원

으로 구성된다. 이 조직은 인터넷의 미래가 직면하고 있는 주소체계 문제를 주도

적으로 해결하고 있으며, 인터넷 기반구조 표준을 담당하는 그룹이 속해 있는 기

구로서 IETF(Internet Engineering Task Force)와 IAB(Internet Architecture

Board)가이안에있다. 이기구에서는인터넷표준과연관된규정을개발하고있

52

네트워크 보안 에센셜Network Security

Essentials

1.7 표준

으며개발된내용을RFC(Requests for Comment)로출판하고있다.

이 조직에 해 더 자세한 사항을 알아보려면 부록 C를 살펴보기 바란다.

이 장에서는 이 책의 전반적인 구성에 해 소개한다. 이 책의 나머지 부분은 다음

4부로 나누어진다.

제1부: 암호화, 해시함수, 전자서명을 포함하는 네트워크 보안 응용에 사용되는

암호 알고리즘과 프로토콜에 해 간략히 설명한다.

제2부: 네트워크와 인터넷의 보안을 위한 암호 알고리즘과 보안 프로토콜 사용

에 해 살펴본다. 키 관리, 사용자 인증, 전송층 보안, 무선 네트워크 보

안, 전자메일 보안, IP 보안을 학습한다.

제3부: 침입자, 바이러스, 웜 같은 보안 위협으로부터 컴퓨터 시스템을 보호하

는 보안설비를 다루고 침입차단시스템 기술도 살펴본다.

제4부: 네트워크 관리 보안과 법적 또는 윤리적 문제에 해 다루고 있다.(4부

내용은 생능출판사 홈페이지에서 자료로 제공된다.)

[STAL08]은 컴퓨터 보안에 해 광범위하게 소개하고 있다. [SCHN00]은 컴퓨터

나 네트워크 보안 분야에 종사하고 있는 현장 관리자가 한 번 읽어볼 만한 가치가

있는 자료이다. 이 책은 기술적 한계, 보안과 하드웨어를 고려한 암호, 소프트웨어

구현, 네트워크, 보안 공격자와 보안 기술자에 해 말하고 있다.

컴퓨터 보안에 관한 고전적인 사용지침서 중에서 읽어볼 만한 유용한 자료가 있

53

01CHAPTER개요

1.8 이 책의 개요

1.9 추천 자료

다. 이들을 읽어보면 역사적 관점에 해 설명하고 있는데 지금 하고 있는 업무나

생각이 이들로부터 나왔다는 걸 알게 해줄 것이다. 읽어볼 만한 논문으로는

[WARE79],[BROW72],[SALT75],[SHAN77]과 [SUMM84]가 있다. 컴퓨터 보안

처리와 관련된 최근의 두 가지 짧은 문건으로는 [ANDR04]와 [LAMP04]가 있다.

[NIST95]는 (290쪽에 달함) 전반적으로 모든 주제에 해 다루고 있다. 또 다른

좋은 자료로 [NRC91]이 있다. 그 외에 [FRAS97]도 유용하다.

ANDR04 Andrews, M., and Whittaker, J., “Computer Security.”IEEE

Security and Privacy, September/October 2004.

BROW72 Browne, P., “Computer Security - A Survey,”ACM SIGMIS

Database, Fall 1972.

FRAS97 Fraser, B., Site Security Handbook, RFC 2196, September 1997.

LAMP04 Lampson, B., “Computer Security in the Real World,”Computer,

June 2004.

NIST95 National Institute of Standards and Technology, An Introduction

to Computer Security: The NIST Handbook, Special Publication 800-

12. October 1995.

NRC91 National Research Council, Computers at Risk: Safe Computing in

the Information Age, Washington,D.C.: National Academy Press, 1991.

SALT75 Saltzer, J., and Schroeder, M., “The Protection of Information in

Computer Systems,”Proceedings of the IEEE, September 1975.

SCHN00 Schneier, B., Secrets and Lies: Digital Security in a Networked

World, New York:Wiley 2000.

SHAN77 Shanker, K., “The Total Computer Security Problem: An

Overview,”Computer, June 1977.

STAL08 Stallings, W., and Brown, L., Computer Security, Upper Saddle

River, NJ: Prentice Hall, 2008.

SUMM84 Summers, R., “An Overview of Computer Security,”IBM

Systems Journal, Vol. 23, No. 4, 1984.

WARE79 Ware, W., ed. Security Controls for Computer Systems, RAND

Report 609-1. October 1979. http://www.rand.org/pubs/reports/

R609-1/R609.1.html

54

네트워크 보안 에센셜Network Security

Essentials

인터넷과 웹 사이트에서 제공되는 많은 자료를 이용하면 이 책의 부족한 면을 보

완할 수 있고 이 분야의 발달과정을 파악하는 데 도움을 얻을 수 있다.

이 책을 위해 다음 사이트를 특별히 개설했다.

WilliamStallings.com/NetSec/NetSec4e.html

이 사이트에는 다음과 같은 내용이 수록되어 있다.

●유용한 웹 사이트: 관련된 웹 사이트 목록으로 이 장에 나온 사이트와 책 전반에

걸쳐 관련된 사이트를 장별로 정리해 놓았다.

●온라인 문서: 피어슨 사의 웹사이트에 링크하면 추가적인 온라인 장과 부록, 과

제 문제와 해답, 중요한 논문과 기타 지원 문건을 볼 수 있다. 자세한 사항은 서

문을 살펴보기 바란다.

●정오표: 이 책을 사용하는 도중 발견한 오류 목록으로 필요할 때마다 갱신하고

있다. 책을 보다가 오류를 발견하게 되면 저자에게 전자메일을 보내주기 바란다.

저자가 저술한 다른 책에 한 정오표도 WilliamStalling.com에서 찾아볼 수

있다.

●인터넷 메일 목록: 이 책의 인터넷 메일 목록에 한 등록정보를 제공한다.

●네트워크 보안 강의: 이 책을 교재로 사용하는 강의와 연관된 홈페이지가 링크되

어 있다. 이 페이지는 강사가 어떻게 강의를 구성할 것인지 아이디어를 제공해줄

것이다.

저자는 또한 컴퓨터 과학을 전공하는 학생을 위한 자원 사이트를 다음 주소에서

운 한다.

WilliamStallings.com/StudentSupport.html

이 책의 웹 사이트

55

01CHAPTER개요

1.10 인터넷과 웹 자원

각종 문서나 정보 그리고 컴퓨터 과학을 공부하는 학생과 전문가를 위한 링크

등을 제공하기 위해서 이 사이트를 운 하고 있다. 링크와 문서는 다음과 같이 4

부류로 나누어 정리하 다.

●수학: 기초수학 지식, 초보 큐 이론, 초보적 수 체계, 그 밖의 수학 사이트 링크를

제공한다.

●방법: 과제 풀기, 보고서 작성법, 발표자료 준비 방법에 한 기술적인 충고와 지

침을 제공한다.

●연구 자료: 주요한 논문자료 링크, 기술 보고서와 도서목록을 제공한다.

●컴퓨터 과학 직업: 컴퓨터 과학 분야에서 직업을 생각하는 사람을 위한 링크와

문서를 제공한다.

●기타: 유용한 문서나 링크를 제공한다.

●유머와 기타: 시간이 나면 좀 쉬면서 가기 위해 한 번 들러볼 만한 사이트를 제공

한다.

이 책의 주제와 관련된 정보를 제공하는 수많은 웹 사이트들이 있다. 각 장의 끝에

특정 웹 사이트를 추천 자료와 웹 사이트(Recommended Reading and Web

Sites) 절에 수록해 놓았다. 웹 사이트의 주소는 너무 자주 변하기 때문에 그 주소

를 이 책에 포함시키지는 않았다. 이 책에 언급된 모든 웹 사이트와 링크는 앞에서

알려준 이 책의 웹 사이트를 찾아보면 된다. 이 책에서 언급되지 않은 다른 링크도

계속해서 이 사이트에 추가해 놓을 것이다.

다음 웹 사이트는 암호와 네트워크 보안과 연관된 일반적인 사이트이다.

● IETF Security Area: 인터넷 보안 표준화 노력 관련 자료.

●Computer and Network Security Reference Index: 벤더와 상품, 자주 묻는

질문(FAQ), 뉴스그룹 자료집, 논문 및 기타 웹 사이트 목록.

●The Cryptography FAQ: 암호와 관련된 모든 분야를 다루고 있는 읽어볼 만한

문서.

●Tom Dunigan’s Security Page: 암호와 네트워크 보안과 관련된 웹사이트 목

록을 소개한다.

그 밖의 웹 사이트

56

네트워크 보안 에센셜Network Security

Essentials

●Helger Lipmaa’s Cryptology Pointers: 또 다른 암호와 네트워크 보안과 관련

된 웹사이트 목록을 소개한다.

● IEEE Technical Committee on Security and Privacy: IEEE-연관 자료에

한 뉴스레터와 정보.

●Computer Security Resource Center: NIST가 관리하는 조직으로서 보안위

협, 기술, 표준에 관한 광범위한 정보를 소장하고 있다.

●Security Focus: 벤더 제품과 최종 사용자 입장을 강조하는 다양한 보안정보를

제공한다.

●SANS Institute: Security Focus와 유사한 기관이다. 백서를 다량으로 보유하고

있다.

●Center for Internet Security: 프리웨어 벤치마크와 운 체계, 네트워크 장비,

응용 소프트웨어 보안평가 스코어링 도구를 제공한다. 사례 연구와 기술 보고서

를 포함하고 있다.

● Institute for Security and Open Methodologies: 개방되고 협업하는 보안 연

구 단체. 상당히 흥미 있는 정보를 많이 제공하고 있다.

USENET 뉴스그룹

많은 USENET 뉴스그룹이 어떤 면에서 보면 네트워크 보안과 암호에 해 공헌

한 바가 크다. 다른 USENET 그룹이 그러하듯이 이 곳은 말도 많고 의견도 분분

하다. 그러나 누가 나와 의견을 같이 하는지 알아볼 만한 곳이다. 가장 추천하고

싶은 뉴스그룹은 다음과 같다.

●sci.crypt.research: 가장 괜찮은 그룹이다. 연구 주제를 상으로 하는 온건한

뉴스그룹이다. 올려놓는 주제는 암호론에 관한 기술적인 문제와 관련된 것이어

야 한다.

●sci.crypt: 암호학과 관련된 주제에 한 일반적 토론

●sci.srypt.random-numbers: 암호적으로 강한8) 무작위성(randomness)에

한 토론

●alt.security: 보안 주제에 한 일반적 토론

●comp.security.misc: 컴퓨터 보안 주제에 한 일반적 토론

●comp.security.firewalls: 침입차단시스템 제품과 기술에 한 토론

57

01CHAPTER개요

●comp.security.announce: CERT 뉴스와 발표

●comp.risks: 컴퓨터와 사용자의 공공위협에 한 토론

●comp.virus: 컴퓨터 바이러스에 한 온건한 토론

추가적으로 인터넷상에서 참고할 수 있는 암호에 한 포럼이 많이 있다. 이들

중 중요한 포럼을 살펴보면 다음과 같다.

●Security and Cryptography forum: DevShed가 지원하는 포럼이다. 코딩, 서

버 응용 프로그램, 네트워크 보호, 데이터 보호, 침입차단시스템, 암호, 링크 등

에 해 다루고 있다.

●Cryptography forum: Topix에서 운 한다. 기술적 문제에 해 집중적으로 다

루고 있다.

●Security forums: WindowsSecurity.com에서 암호이론, 암호 소프트웨어, 침

입차단시스템, 악성 소프트웨어 등 다양한 분야의 포럼을 제공한다.

이 포럼에 한 링크는 이 책의 웹 사이트에 제공하 다.

58

네트워크 보안 에센셜Network Security

Essentials

8) 생성된 랜덤 넘버(random number)가 여러 가지 측면에서 조사해 보았을 때 규칙성이나 주기성 등의

무작위성과 상반되는 특성을 전혀 가지고 있지 않을 때 그 랜덤 넘버는 무작위성(randomness)이 강하

다고 한다. 따라서 암호 알고리즘에서 사용하는 랜덤 넘버의 무작위성의 강도에 따라서 암호의 강도가

달라질 수 있다. — 역자 주

1.1 OSI 보안 구조란 무엇인가?

1.2 적극적 공격과 소극적 공격의 차이점은 무엇인가?

1.3 적극적 보안공격과 소극적 보안공격의 종류를 나열하고 간단히 설명하라.

1.4 보안 서비스 범주에 해서 열거하고 간단히 설명하라.

1.5 보안 메커니즘의 범주에 해서 열거하고 간단히 설명하라.

1.1 사용자가 계정에 접근하기 위해 카드와 PIN(Personal Identification

Number)을 제공하는 현금자동지급기를 생각해보자. 시스템과 연관하여 기

성, 무결성, 가용성 요구사항의 예를 들어보라. 각 경우에 요구사항의 중요

정도를 나타내보라.

1.2 전화번호에 기반한 교환망을 통해 전화를 연결해주는 전화 교환 시스템에서

연습문제 1.1의 질문내용과 동일하게 답하라.

1.3 다양한 기관에서 문서를 만들 때 쓰는 데스크톱 출판시스템을 생각해보자.

a.저장된 데이터의 기 성이 가장 중요한 요구사항인 경우 출판 유형 예를

연습문제

복습문제

59

01CHAPTER개요

1.11 주요 용어, 복습문제와 연습문제

주요

용어 가용성(availability)

데이터 기 성(data confidentiality)

데이터 무결성(data integrity)

무결성(integrity)

보안 공격(security attack)

보안 메커니즘(security mechanism)

보안 서비스(security service)

부인봉쇄(nonrepudiation)

서비스거부 공격(denial of service attack)

소극적 공격(passive attack)

암호화(encryption)

위장(masquerade)

인증(authentication)

재전송(replay)

적극적 공격(active attack)

전송분석(traffic analysis)

접근제어(access control)

침입자(intruder)

OSI 보안 구조(OSI security architecture)

들어보라.

b.데이터무결성이가장중요한요구사항인경우의출판유형예를들어보라.

c.시스템가용성이자장중요한요구사항이경우의출판유형예를들어보라.

1.4 다음과 같은 자산에 해서 저급, 중급, 고수준에서의 기 성, 가용성, 무결

성 손상을 각각 말해보고 자신의 답에 한 변론을 하라.

a.웹 서버상에서 공적 정보를 관리하는 조직.

b.극도로 민감한 수사 정보를 관리하는 수사기관.

c.일상적인관리정보(프라이버시와관계된정보가아니고)를다루는금융기관.

d.민감하고 사전-요청 단계 계약정보와 일상적인 관리 정보 두 가지를 가지

고 있는 계약기관에서 규모 정보수집에 사용되는 정보시스템. 두 개의

데이터 셋을 개별적으로 평가하고 이 정보시스템에 해 전반적으로 평가

해보라.

e. 규모 군사 시설에 전원 배분을 통제하는 SCADA(supervisory control

and data acquisition) 시스템을 가진 발전소. SCADA 시스템은 실시간

센서 데이터와 일상적인 관리 정보 두 가지를 모두 가지고 있다. 이 두 가

지 데이터 셋을 별개로 나누어 평가하고, 전체 정보시스템을 평가해보라.

1.5 표1.4와유사한표를만들어보안서비스와공격사이의관계를나타내어보라.

1.6 표 1.4와 유사한 표를 만들어 보안 메커니즘과 공격 사이의 관계를 나타내어

보라.

60

네트워크 보안 에센셜Network Security

Essentials

네트워크 보안 에센셜

이재광∙전태일 옮김

초 판 인 쇄 : 2013. 1. 25

초 판 발 행 : 2013. 1. 31

발 행 인 : 김 승 기

발 행 처 : 생능출판사

신 고 번 호 : 제406-2005-000002호

신 고 일 자 : 2005. 1. 21

I S B N : 978-89-7050-760-6(93000)

� � � ─���

경기도 파주시 문발동 507-12 파주출판도시표전화 : (031)955-0761, FAX : (031)955-0768

홈페이지 : http://www.booksr.co.kr

� 파본 및 잘못된 책은 바꾸어 드립니다. 정가 30,000원

이재광

한남 학교 컴퓨터공학과 교수

[email protected]

전태일

전 학교 해킹보안학과 교수

[email protected]

저 자 약 력

역자와의 협의에 의해인지를 생략합니다.