위협 및 대책

11장: 추가 대책

업데이트 날짜: 2005년 12월 27일

이 장에서는 계정 보안과 같은 몇 가지 추가 대책을 구현하는 방법에 대해 설명합니다. 또한 이 장에서는 IPsec(IP 보안) 필터링을 네트워크 공격에 대한 효과적인 대책으로 사용하는 데 필요한 일반적인 배경 지식, 참조 정보 및 구성 지침 등을 제공합니다.

이 페이지에서

구성원 서버 강화 절차
Windows 방화벽 구성
추가 정보

구성원 서버 강화 절차

이 설명서에 제시된 대책 중 대부분은 그룹 정책을 통해 적용할 수 있지만 그룹 정책을 통한 적용이 어렵거나 불가능한 추가 설정도 있습니다. 다음 섹션에서는 이러한 추가 설정을 도메인 구성원 서버에 대해 구현하는 방법에 대한 지침을 제공합니다.

계정 보안

Microsoft Windows Server 2003 서비스 팩 1(SP1)에는 삭제할 수 없으며 이름만 바꿀 수 있는 여러 기본 제공 사용자 계정이 있습니다. 이러한 Windows Server 2003 계정 중 가장 널리 알려져 있는 두 가지 기본 제공 계정은 Guest 와 Administrator입니다.

보안 문제

Guest 계정은 구성원 서버와 도메인 컨트롤러에서 기본적으로 사용하지 않도록 설정됩니다. 이 구성은 변경하면 안 됩니다. 대부분의 변종 악성 코드는 서버를 손상시키려는 초기 시도에서 기본 제공 Administrator 계정을 사용합니다. 기본 제공 Administrator 계정의 이름을 바꾸고 설명을 변경하여 공격자가 이 계정을 사용하여 원격 서버를 손상시키지 못하도록 방지해야 합니다.

그러나 기본 제공 Administrator 계정의 SID(보안 식별자)를 지정하여 해당 계정의 실제 이름을 확인함으로써 서버 침입을 시도하는 공격 도구가 등장한 이후 지난 몇 년 동안 이 구성을 변경하여 보안을 유지하는 방법의 효율성은 점차 낮아졌습니다. SID는 네트워크의 각 사용자, 그룹, 컴퓨터 계정 및 로그온 세션을 고유하게 식별하는 값입니다. 이 기본 제공 계정의 SID는 변경할 수 없습니다.

대책

모든 서버에서 Administrator 계정의 이름을 바꾸고 암호를 길고 복잡한 값으로 변경합니다.

참고: 그룹 정책을 사용하여 기본 제공 Administrator 계정의 이름을 바꿀 수 있습니다. 모든 조직에서 이 계정에 대해 고유한 이름을 선택해야 하기 때문에 Windows Server 2003 보안 가이드에 포함되어 있는 기본 정책은 이 설정을 구현하지 않습니다. 계정 이름을 바꾸려면 그룹 정책의 컴퓨터 구성\Windows 설정\보안 설정\로컬 정책\ 보안\옵션 위치에서 Administrator 계정 이름 바꾸기 설정을 구성하면 됩니다. 관리 부담이 매우 커지더라도 조직에서는 각 서버에 대해 다른 암호를 적용하는 것이 가장 좋습니다. 조직 내의 모든 서버에서 동일한 계정 이름과 암호를 사용하는 경우 구성원 서버 하나에 액세스할 수 있는 공격자는 다른 서버에도 모두 액세스할 수 있게 됩니다. 변경 내용은 안전한 장소에 기록해 두십시오.

잠재적 영향

컴퓨터 관리를 담당하는 사용자는 각 컴퓨터에 할당되는 계정 이름을 추적해야 하며 로컬 Administrator 계정으로 특정 서버에 로그인해야 하는 사용자는 이 보안 설명서를 참조하여 해당 서버의 사용자 이름과 암호를 확인해야 합니다.

NTFS

NTFS 설정 파티션은 ACL(액세스 제어 목록)을 지원하며 선택적으로 파일 및 폴더 수준에서 EFS(암호화 파일 시스템)를 통한 암호화를 지원합니다. FAT(파일 할당 테이블), FAT32 또는 FAT32x 파일 시스템에서는 이 지원 기능을 사용할 수 없습니다. FAT32는 훨씬 작은 기본 클러스터 크기를 사용하며 하드 디스크의 크기를 2테라바이트까지 지원하도록 업데이트된 버전의 FAT 파일 시스템입니다. FAT32는 Microsoft Windows 95 OSR2, Windows 98, Windows Me, Windows Server 2003 및 Windows XP에 포함되어 있습니다.

보안 문제

권한이 없는 사용자가 로컬로 또는 네트워크를 통해 ACL로 보호할 수 없는 파일에 액세스하는 경우 이러한 파일을 쉽게 보거나 변경 또는 삭제할 수 있습니다. 다른 파일은 ACL을 사용하여 보호할 수도 있지만 보다 효율적으로 파일을 보호하며 단일 사용자만 액세스할 수 있도록 설정하면 되는 파일에 대해 실용적으로 사용할 수 있는 옵션인 암호화를 사용하는 것이 보다 효율적입니다.

대책

NTFS를 사용하여 모든 서버의 모든 파티션을 포맷합니다. 변환 유틸리티를 사용하여 FAT 파티션을 비삭제 방식으로 NTFS로 변환합니다. 단, 이 경우 유틸리티는 변환된 드라이브의 ACL을 Everyone: 모든 권한으로 구성한다는 점을 기억해야 합니다.

Windows Server 2003 및 Windows XP 기반 컴퓨터의 경우 다음 보안 템플릿을 로컬로 적용하여 기본 파일 시스템 ACL을 구성합니다.

  • 워크스테이션: %windir%\inf\defltwk.inf

  • 서버: %windir%\inf\defltsv.inf

  • 도메인 컨트롤러: %windir%\inf\defltdc.inf

보안 템플릿을 로컬로 적용하는 방법에 대한 지침은 Windows Server 2003 보안 가이드의 12장 "방호 호스트 역할"을 참조하십시오.

참고: 기본 도메인 컨트롤러 보안 설정은 서버를 도메인 컨트롤러로 승격시키면 적용됩니다.

잠재적 영향

부정적인 영향은 없습니다.

중요: NTFS 권한을 적절하게 구성하면 조직의 데이터가 노출되거나 무단으로 수정되지 않도록 할 수 있지만 그와 더불어 실제적인 보안 조치도 적용해야 합니다. 컴퓨터를 실제로 제어할 수 있는 공격자는 부팅 가능한 CD-ROM 또는 플로피 디스크를 사용하여 대체 운영 체제로 컴퓨터를 부팅할 수 있습니다. 조직의 여러 컴퓨터 중 한 대에서 하드 디스크를 제거한 공격자는 이 하드 디스크를 관리되지 않는 다른 컴퓨터로 이동할 수 있습니다. 공격자가 저장소 미디어에 대해 실제적으로 전체 제어 권한을 갖게 되면 데이터의 보안을 유지하기가 매우 어렵습니다.

이는 다른 운영 체제의 파일 시스템에도 존재하는 기본적인 컴퓨터 보안 문제입니다. 공격자가 디스크에 대한 실제 액세스 권한을 갖게 되면 NTFS 권한 및 대부분의 다른 보호 수단을 쉽게 무시할 수 있습니다. 이에 대비해 조직에서 구현할 수 있는 확실한 실제 보안 대책에는 조직 건물에 대한 접근 제한, 서버 관리실에 자기 방식 잠금 장치 설치, 서버 선반에 잠금 장치 사용, 랩톱 컴퓨터에 대한 도킹 스테이션 잠금 사용 등이 있습니다. 이러한 보안 대책 외에도 다음과 같은 추가적인 기술을 적용하여 이와 같은 공격 유형의 영향을 줄이는 것이 좋습니다.

  • 오프라인 암호가 적용된 Syskey를 사용하여 권한이 없는 사용자가 Windows 운영 체제를 시작할 수 없도록 합니다.

  • EFS를 사용하여 사용자 데이터를 암호화합니다. 사용자에게 도메인 계정을 사용할 것과, 복구 에이전트를 구성하지 않거나 로컬 Administrator 계정이 아닌 도메인 Administrator 계정에 대해 복구 에이전트를 구성할 것을 지시합니다.

  • BIOS 암호를 사용하여 권한이 없는 사용자가 조직 내에서 컴퓨터를 시작할 수 없도록 합니다.

  • CD-ROM 드라이브 및 플로피 디스크 드라이브에서 컴퓨터를 시작할 수 없도록 시스템 BIOS를 구성합니다. 이 구성을 사용하면 권한이 없는 사용자가 자신의 운영 체제로 컴퓨터를 시작할 수 없도록 할 수 있습니다.

데이터 및 응용 프로그램 세그먼트화

컴퓨터의 성능을 향상시키려면 데이터, 응용 프로그램 및 운영 체제 파일을 개별 저장 장치에 구분해서 보관하는 것이 가장 효과적인 것으로 알려져 있습니다. 서버에서 이러한 형식의 파일을 구분하면 디렉터리 통과 공격으로부터 응용 프로그램, 데이터 및 운영 체제를 보호할 수도 있습니다.

보안 문제

응용 프로그램, 데이터 및 로그 파일을 운영 체제와 같은 저장소 볼륨에 배치하면 두 가지 보안 문제가 발생할 가능성이 있습니다. 그 중 하나는 사용자가 실수로 또는 고의적으로 응용 프로그램 로그 파일을 가득 채우거나 서버에 파일을 업로드한 다음 저장소 볼륨을 데이터로 가득 채우는 것입니다.

다른 하나는 디렉터리 통과를 악용할 수 있다는 것입니다. 즉, 공격자가 네트워크 서비스의 버그를 이용하여 디렉터리 트리에서 시스템 볼륨의 루트에 이르는 경로를 탐색할 수 있습니다. 그런 다음 공격자는 운영 체제 파일 폴더를 검색하여 원격으로 유틸리티를 실행할 수 있습니다.

매우 다양한 유형의 디렉터리 통과 공격에서 보안상 취약한 응용 프로그램 및 운영 체제를 악용하고 있습니다. IIS 또한 최근 이러한 공격을 받아 왔습니다. 예를 들어 NIMDA 및 Code Red 웜은 버퍼 오버플로를 악용하여 웹 사이트 디렉터리 트리를 통과한 다음 Cmd.exe를 원격으로 실행하여 원격 셸에 대한 액세스 권한을 얻고 추가 명령을 실행합니다.

대책

가능하면 웹 콘텐츠, 응용 프로그램, 데이터 및 응용 프로그램 로그 파일을 시스템 볼륨과 구분된 별도의 파티션에 다시 배치하십시오.

잠재적 영향

일관된 방식으로 서버를 구성하고 유지 관리하는 조직은 이러한 대책으로 인한 영향을 크게 받지 않습니다. 그러나 이러한 정보를 유지 관리하지 않는 조직에서는 관리자가 각 컴퓨터를 설정하는 방법을 확인해야 하기 때문에 이러한 대책으로 인한 영향을 크게 받을 수 있습니다.

SNMP 커뮤니티 이름 구성

SNMP(Simple Network Management Protocol)는 TCP/IP 네트워크에서 널리 사용되는 네트워크 관리 표준입니다. SNMP를 사용하면 중앙에 위치한 호스트에서 서버, 워크스테이션, 라우터, 브리지 및 허브로 구성되는 네트워크 노드를 관리할 수 있습니다. SNMP는 관리 시스템 및 에이전트의 분산 아키텍처를 사용하여 관리 서비스를 수행합니다. 네트워크 관리 소프트웨어를 실행하는 시스템을 SNMP 관리 시스템 또는 SNMP 관리자라고 하고 관리되는 네트워크 노드는 SNMP 에이전트라고 합니다.

SNMP 서비스는 커뮤니티 이름 및 인증 트랩을 사용하여 기초적인 형태의 보안을 제공합니다. 에이전트에 대한 SNMP 통신을 제한하여 특정 SNMP 관리 시스템 목록과의 통신만을 허용할 수 있습니다. 커뮤니티 이름은 SNMP 메시지를 인증하는 데 사용할 수 있습니다. 한 호스트가 동시에 여러 커뮤니티에 속할 수는 있지만 SNMP 에이전트는 허용되는 커뮤니티 이름 목록에 없는 커뮤니티의 관리 시스템 요청을 수락하지 않습니다. 커뮤니티 이름과 도메인 이름 또는 작업 그룹 이름 간에는 아무런 관계가 없습니다. 커뮤니티 이름은 SNMP 관리 콘솔과 관리되는 컴퓨터에서 공유하는 암호로 간주할 수 있으며 시스템 관리자는 SNMP 서비스를 설치할 때 추측하기 어려운 커뮤니티 이름을 만들어야 합니다.

보안 문제

기본적으로 SNMP 프로토콜의 보안은 취약합니다. SNMP의 가장 큰 보안 문제는 거의 모든 공급업체에서 기본 커뮤니티 문자열 이름을 설정하며 이러한 기본 커뮤니티 이름이 잘 알려져 있다는 것입니다. 예를 들어 Microsoft에서는 '공용'이라는 단어를 사용합니다.

또한 해결하기가 훨씬 어려운 두 번째 보안 문제도 있습니다. SNMP 트래픽은 일반 텍스트로 전송되므로 SNMP 관리 장치가 SNMP 클라이언트에 연결될 때 커뮤니티 문자열은 암호화 또는 해시되지 않고 네트워크를 통해 전송됩니다. 이 두 번째 보안 문제를 해결하기 위해 서버 간의 모든 트래픽을 암호화할 수 있습니다. 이 설명서에서는 이러한 대책에 대해 설명하지 않습니다.

대책

모든 컴퓨터에서 읽기 권한에 대한 SNMP 커뮤니티 문자열을 임의의 영숫자 값으로 구성하십시오.

SNMP 커뮤니티 문자열을 구성하려면

  1. 서비스 콘솔에서 SNMP 서비스를 두 번 클릭합니다.

  2. SNMP 서비스 속성 대화 상자에서 보안 탭을 클릭합니다.

  3. 받아들인 커뮤니티 이름 목록에서 공용을 선택합니다.

  4. 편집 단추를 클릭하고 SNMP Service Community Name 대화 상자가 나타나면 새 커뮤니티 이름을 입력합니다.

  5. 확인 단추를 클릭하여 각 대화 상자를 닫습니다.

SNMP를 통한 쓰기 권한은 해제된 상태로 두십시오.

참고: 커뮤니티 이름은 DWORD 값이 4인 레지스트리 값으로 레지스트리에 저장되므로 스크립트를 만들거나 보안 템플릿에 줄을 추가한 다음 이 템플릿을 도메인 기반 그룹 정책으로 가져오면 변경 작업이 자동으로 수행되도록 할 수 있습니다. 이 값은 HKLM\SYSTEM\CurrentControlSet\Services\SNMP\Parameters\ValidCommunities에 저장됩니다.

잠재적 영향

SNMP 프로토콜을 사용하는 모든 관리 도구에서도 커뮤니티 문자열을 다시 구성해야 합니다.

공용 인터페이스에서 NetBIOS 및 SMB 사용 안 함

이 섹션에서는 네트워크의 서버 중 공개적으로 액세스할 수 있는 웹 서버 또는 전자 메일 게이트웨이처럼 완전히 제어할 수 없는 서버에 적용하도록 특별히 지정된 권장 사항을 설명합니다. 이러한 유형의 서버를 보통 방호 호스트라고 합니다. 이러한 서버가 있는 경우에는 여기서 설명하는 대책의 권장 절차를 고려해 보십시오. 그러나 이 섹션의 설명에 따라 변경 작업을 수행할 때는 각 변경 내용을 철저히 테스트해야 하며 NetBIOS를 사용하지 않는 컴퓨터는 관리하기가 까다롭다는 점을 이해해야 합니다.

보안 문제

방호 호스트를 보호하기 위해 SMB(서버 메시지 블록) 및 NetBIOS over TCP/IP를 사용할 수 없도록 설정하면 공격을 받을 수 있는 영역을 크게 줄일 수 있습니다. 이러한 구성으로 운영되는 서버는 관리하기가 까다로우며 네트워크에서 공유하는 폴더에 액세스할 수 없습니다. 그러나 이러한 대책을 적용하면 SMB 및 NetBIOS 프로토콜을 통한 공격으로부터 서버를 효율적으로 보호할 수 있습니다. 그러므로 인터넷에서 액세스할 수 있는 서버의 네트워크 연결에 대해 SMB 및 NetBIOS over TCP/IP를 사용할 수 없도록 설정해야 합니다.

대책

NetBIOS를 사용하지 않아도 SMB 통신은 차단되지 않습니다. SMB에서는 표준 NetBIOS 포트가 없으면 보통 SMB Direct Host 또는 CIFS(일반 인터넷 파일 시스템) 포트라고 하는 TCP 포트 445를 사용합니다. 그러므로 NetBIOS와 SMB를 각각 별도로 비활성화하기 위한 명시적인 단계를 수행해야 합니다.

NetBIOS에서 사용하는 포트는 다음과 같습니다.

  • UDP/137(NetBIOS 이름 서비스)

  • UDP/138(NetBIOS 데이터그램 서비스)

  • TCP/139(NetBIOS 세션 서비스)

SMB에서 사용하는 포트는 다음과 같습니다.

  • TCP/139

  • TCP/145

인터넷에서 액세스할 수 있는 서버에서 다음 절차를 수행하여 Microsoft 네트워크용 파일 및 프린터 공유와 Microsoft 네트워크용 클라이언트를 제거합니다.

SMB를 사용할 수 없도록 설정하려면

  1. 제어판에서 네트워크 연결을 두 번 클릭합니다.

  2. 인터넷 연결을 마우스 오른쪽 단추로 클릭하고 속성을 클릭합니다.

  3. 속성 대화 상자에서 Microsoft 네트워크용 클라이언트를 선택하고 제거를 클릭합니다.

  4. 제거 단계를 수행합니다.

  5. Microsoft 네트워크용 파일 및 프린터 공유를 선택하고 제거를 클릭합니다.

  6. 제거 단계를 수행합니다.

NetBIOS over TCP/IP를 사용할 수 없도록 설정하려면

  1. 제어판에서 시스템을 두 번 클릭하고 하드웨어 탭을 클릭한 다음 장치 관리자 단추를 클릭합니다.

  2. 보기 메뉴에서 숨김 장치 표시를 클릭합니다.

  3. 비 플러그 앤 플레이 드라이버를 확장합니다.

  4. NetBios over Tcpip를 마우스 오른쪽 단추로 클릭한 다음 사용 안 함을 클릭합니다.

이 단계를 수행하면 TCP/445 및 UDP 445에서 SMB 직접 호스트 수신기를 사용할 수 없게 됩니다.

참고: 이 절차를 수행하면 Nbt.sys 드라이버가 비활성화됩니다. 이렇게 하면 TCP 포트 139를 수신 대기하는 NetBIOS 세션 서비스를 사용할 수 없지만 SMB가 완전히 비활성화되지는 않습니다. SMB를 완전히 비활성화하려면 앞부분의 "SMB를 사용할 수 없도록 설정하려면" 절차에서 설명한 단계를 수행하십시오.

잠재적 영향

어떠한 컴퓨터도 SMB를 통해 서버에 연결할 수 없습니다. 또한 서버는 네트워크에서 공유된 폴더에 액세스할 수 없으며 연결을 위해 NetBIOS 또는 SMB를 사용하는 관리 도구도 서버에 연결할 수 없습니다.

터미널 서비스 포트 구성

터미널 서비스는 원격 서버와 최종 사용자 컴퓨터를 관리할 수 있도록 하는 네트워크 관리자에게 유용한 도구입니다. 원격 데스크톱 클라이언트는 모든 Windows Server 2003 및 Windows XP 컴퓨터에 기본적으로 설치되며 Windows 2000 Server 설치 미디어에서 선택적 구성 요소로 사용할 수 있습니다. Internet Explorer 또는 MMC(Microsoft Management Console)에서 실행되는 다운로드 가능한 Microsoft ActiveX 클라이언트도 있습니다. 원격 데스크톱 및 ActiveX 클라이언트를 집합적으로 TSAC(터미널 서비스 고급 클라이언트)라고 합니다.

보안 문제

터미널 서비스는 기본적으로 TCP 포트 3389를 수신 대기하고 모든 버전의 원격 데스크톱 클라이언트는 이 포트에 대한 연결을 시도합니다. 사용자 인증을 포함하여 전체 세션이 암호화되지만 터미널 서비스 클라이언트는 서버 인증을 수행하지 않습니다. 합법적인 터미널 서비스 서버를 스푸핑할 수 있는 공격자는 사용자를 속여 실제 서버가 아닌 공격자의 서버에 연결하도록 할 수 있습니다. 이러한 방식으로 사용자를 속이기 위해 공격자는 DNS 레코드를 변경하여 사용자가 공격자의 서버로 리디렉션되도록 하거나 여러 가지 다른 방법을 사용하기도 합니다.

대책

터미널 서비스에서 사용하는 TCP 포트를 변경하거나, 트러스트를 필요로 하는 IPsec 정책을 구현하고 IPsec 터널 모드가 아닌 IPsec 전송 모드를 사용하여 ESP(Encapsulation Security Payload) 또는 AH(인증 헤더)를 협상합니다. 일부 시나리오에서는 터미널 서버에 대한 액세스 권한을 얻는 데 PPTP(지점 간 터널링 프로토콜) 또는 L2TP/IPSec 보안 VPN 터널이 필요하도록 터미널 서버를 VPN 게이트웨이에서 격리시킬 수도 있습니다.

터미널 서비스 및 원격 데스크톱 클라이언트에서 사용하는 포트를 변경하는 방법에 대한 자세한 내용은 https://support.microsoft.com/?scid=187623의 Microsoft 기술 자료 문서 "터미널 서버의 수신 대기 포트를 변경하는 방법"을 참조하십시오. 이 문서에는 일반 데스크톱 클라이언트의 수신 대기 포트를 변경하는 방법이 설명되어 있습니다. 터미널 서비스 고급 클라이언트 웹 클라이언트에서 이를 수행하려면 다음 스크립트 줄을 웹 페이지에 추가해야 합니다.

MsRdpClient.RDPport = xxx

(xxx는 원하는 TCP 포트 번호) 원격 데스크톱 웹 연결을 사용 및 사용자 지정하여 Microsoft Internet Explorer에서 터미널 서비스 세션을 실행하는 방법에 대한 자세한 내용은 https://msdn.microsoft.com/library/default.asp?url=/library/en-us/termserv/termserv/ providing_for_rdp_client_security.asp의 "Providing for RDP Client Security (영문)" (RDP 클라이언트 보안 제공)를 참조하십시오.

잠재적 영향

AH와 함께 IPsec을 구현하면 컴퓨터 성능에는 큰 영향을 주지 않지만 클라이언트 및 서버 IPsec 구성 관리 작업의 부담이 증가합니다. 또한 IPsec 보안 연결이 설정되기 전에 IKE(인터넷 키 교환) 보안 협상에 사용되는 클라이언트 및 서버 컴퓨터 간의 상호 트러스트 방법을 관리하기 위해 추가적으로 작업을 수행해야 한다는 부담도 있습니다. IPsec 정책은 서버에 대한 모든 트래픽을 보호하거나 TCP 포트 3389에 대한 연결에만 IPsec이 필요하도록 구성해야 합니다. 서버 쪽에서 IPsec을 요구하면 호환 가능한 IPsec 구성 및 트러스트가 없는 클라이언트 컴퓨터에 대한 액세스는 거부됩니다. IPsec 정책을 사용하여 TCP/IP 트래픽 보안을 협상하는 방법에 대한 자세한 내용은 이 장 뒷부분의 "IPsec 정책 구성" 섹션을 참조하십시오.

터미널 서비스 서버 및 클라이언트의 기본 포트를 변경하면 변경된 새 포트를 사용하도록 클라이언트 소프트웨어를 구성하지 않은 합법적인 사용자가 포트 할당이 변경된 컴퓨터에 연결할 수 없게 됩니다. 또한 최신 버전의 TSAC에서 TCP 포트를 변경할 수 있는 방법이 없습니다.

Dr. Watson 사용 안 함: Dr. Watson 시스템 디버거 자동 실행 사용 안 함

시스템 디버거를 사용하면 컴퓨터 및 응용 프로그램의 문제를 효율적으로 해결할 수 있습니다. 이러한 프로그램은 데이터를 수집하여 컴퓨터가 실행 중인 동안 시스템 관리자나 응용 프로그램 개발자에게 제공합니다. Windows Server 2003 및 Windows XP에 포함된 Dr. Watson 도구는 시스템 상태 및 프로그램 오류가 발생할 때 활성 상태였던 응용 프로그램에 대한 정보를 기록하는 자동화된 시스템 디버거입니다.

보안 문제

일부 조직에서는 중요한 프로덕션 컴퓨터에는 디버거를 설치하지 않으려 할 수도 있습니다. 관리 권한이 없는 사용자가 실행할 수 있는 Dr. Watson 관련 악용 사례에 대해서는 알려진 바가 없습니다. 즉, 공격자는 로컬 Administrators 그룹에 속해 있어야 Dr. Watson을 다른 사용자나 프로세스에 대한 공격 도구로 사용할 수 있습니다. 관리 권한을 얻은 공격자는 컴퓨터에 대한 모든 제어 권한을 가지므로 Dr. Watson을 사용하지 않는 경우에도 공격자는 다른 공격 경고를 찾아 공격을 수행할 수 있습니다.

대책

Dr. Watson 시스템 디버거를 사용할 수 없도록 설정하는 방법에 대한 지침은 https://support.microsoft.com/?kbid=188296의 Microsoft 기술 자료 문서 "How to Disable Dr. Watson for Windows"(Windows의 Dr. Watson을 사용할 수 없도록 설정하는 방법)를 참조하십시오.

잠재적 영향

시스템 디버거가 실행되지 않으며 프로그램이 중지되어도 보고서가 자동으로 작성되지 않습니다. 또한 이러한 문제의 원인을 진단하기 위해 시스템 관리자 및 개발자가 사용할 수 있는 정보가 줄어들고 오류 보고 기능이 작동하지 않습니다.

SSDP/UPNP 사용 안 함: SSDP/UPNP 사용 안 함

UPnP(유니버설 플러그 앤 플레이) 호스트 서비스를 사용하지 않아도 Windows Messenger 등의 다른 응용 프로그램에서는 계속해서 SSDP(Simple Service Discovery Protocol) 검색 서비스의 검색 프로세스를 사용하여 네트워크 게이트웨이나 다른 네트워크 장치를 식별할 수 있습니다.

자세한 내용은 https://support.microsoft.com/?kbid=317843의 Microsoft 기술 자료 문서 "Traffic Is Sent After You Turn Off the SSDP Discover Service and Universal Plug and Play Device Host"(SSDP 검색 서비스 및 유니버설 플러그 앤 플레이 장치 호스트를 해제한 후에도 트래픽이 전송됨)를 참조하십시오.

보안 문제

Windows XP 및 Windows Server 2003에 포함된 UPnP 기능은 UPnP 장치를 로컬 네트워크에 연결할 때 해당 장치의 설치 및 구성을 자동화해 주므로 홈 사용자 및 중소 기업 사용자가 매우 유용하게 사용할 수 있습니다. 일부 조직에서는 UPnP 또는 SSDP 트래픽이 네트워크를 통과하지 않도록 하려는 경우도 있습니다. 현재 이러한 기능에 대해 알려진 보안 문제는 없지만 몇 년 전에 Windows XP에서 응용 프로그램 핫픽스가 필요한 중요한 문제가 발견되었습니다.

대책

모든 응용 프로그램에서 Windows XP에 포함된 SSDP 및 UPnP 기능을 사용하지 않도록 하려면 UPnPMode라는 REG_DWORD 레지스트리 값을 다음 레지스트리 키에 추가하면 됩니다.

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\DirectPlayNATHelp\DPNHUPnP

그런 다음 해당 값을 2로 구성합니다.

잠재적 영향

UPnP 및 SSDP 기능을 완전히 사용할 수 없게 됩니다. 그러므로 UPnP 장치를 네트워크에 연결할 때 수동으로 장치를 구성 및 관리해야 합니다.

IPsec 정책 구성

Windows 2000, Windows XP 및 Microsoft Windows Server 2003 운영 체제에서 사용할 수 있는 IPsec은 네트워크 보안 관리자가 TCP/IP 트래픽에 대한 보안을 허용, 차단 또는 협상할 수 있도록 하는 도구입니다. IPsec은 응용 프로그램과는 별개의 도구이며 독립적으로 실행됩니다. Windows 2000의 디자인 목표는 IPsec 프로토콜의 AH 형식 또는 ESP 형식을 사용하여 네트워크 트래픽의 보안을 유지하는 방법을 제공하는 것입니다. IPsec 정책은 IKE를 통한 보안 협상에 필요하며 선택기라고도 하는 고정 TCP/IP 트래픽 필터를 제공합니다.

Windows Server 2003 Deployment Kit: Deploying Network Services (영문)(네트워크 서비스 개발)의 6장 "IPsec 배포"에서 최신 IPsec 기능에 대한 자세한 내용을 확인할 수 있습니다. "Determining Your IPSec Needs"(IPSec 요구 사항 확인) 섹션에는 IPsec의 용도가 설명되어 있습니다. 이 개발 키트는 www.microsoft.com/downloads/details.aspx? FamilyID=d91065ee-e618-4810-a036-de633f79872e&DisplayLang=en에서 다운로드할 수 있습니다.

Windows 방화벽은 대부분의 응용 프로그램에 대해 악의적인 인바운드 트래픽을 방지하는 적절한 호스트 수준 보호를 제공합니다. Windows Server 2003 SP1의 SCW(Security Configuration Wizard)를 사용하면 대규모 배포의 Windows 방화벽 설정 설치 및 관리 작업을 매우 간편하게 수행할 수 있습니다. IPsec은 필요한 위치에서 호스트 간 및 호스트-클라이언트 트래픽을 보호하는 데 사용해야 하며 Windows 방화벽은 보통 대부분의 조직에서 추가 방어 대책으로 광범위하게 배포해야 합니다.

보안 문제

대부분의 네트워크 보안 전략은 조직의 네트워크 외부로부터 발생하는 공격을 방지하는 데 중점을 두지만 대부분의 중요한 정보는 네트워크의 데이터를 해석하거나 상위 계층 프로토콜에서 디자인 또는 구현 약점을 악용하여 컴퓨터에 액세스하는 내부 공격을 통해 손실될 수 있습니다. 다른 보안 설정이 사용되지 않거나 실수로 해제된 경우 공격자는 NetBT null 세션을 사용하여 관리자 암호를 손상시키는 데 사용할 수 있는 정보를 얻을 수 있습니다.

공격자는 한 응용 프로그램 포트에서 하나의 보안 문제만 찾으면 컴퓨터에 대한 액세스 권한을 얻을 수 있으며 그에 따라 컴퓨터에 대한 모든 권한을 얻을 수도 있습니다. 앞서 설명한 것처럼 대부분의 데이터 유형은 네트워크를 통과할 때 보호되지 않기 때문에 직원, 지원 부서 구성원 또는 방문자가 데이터를 복사하여 추후 분석 작업에 사용할 수 있습니다. 내부 네트워크와 인터넷 사이에 있는 방화벽은 이러한 내부 위협에 대해서는 보호 수단을 제공하지 않습니다. 내부 방화벽은 보통 클라이언트와 서버를 보호하는 데 필요한 인증된 액세스 제어를 제공할 수 없을 뿐 아니라 컴퓨터 간의 종단 간 네트워크 트래픽 보안도 제공할 수 없습니다.

대책

IPsec 필터는 원본 및 대상 IP 주소, IP 프로토콜 종류, TCP 및 UDP 포트별로 TCP/IP 트래픽을 인식합니다. IPsec 필터는 웜 및 바이러스 트래픽을 차단하므로 악의적인 코드를 보관 및 제어하는 데 사용할 수 있습니다. 또한 IPsec을 사용하면 공격자가 원격 셸 또는 다른 공격 유틸리티를 이용하여 손상된 응용 프로그램 내에서 컴퓨터에 액세스하기 어렵도록 할 수 있습니다. Windows 2000에서 IPsec 정책을 적용하여 포트를 차단하는 방법에 대한 자세한 내용은 https://support.microsoft.com/?scid=813878의 Microsoft 기술 자료 문서 "IPSec을 사용하여 특정 네트워크 프로토콜 및 포트를 차단하는 방법"을 참조하십시오. 또한 www.microsoft.com/technet/itsolutions/network/security/ipsecld.mspx의 백서 "Using IPSec to Lock Down a Server (영문)"(IPSec을 사용하여 서버 잠금)에서는 이 지침과 비슷한 Windows Server 2003 IPsec 허용/차단 필터링에 대한 단계별 구성 지침을 확인할 수 있습니다. 그러나 기술 자료 문서에서 권장 설정으로 설명되어 있는 NoDefaultExempt 레지스트리 설정은 Windows 2000에 추가해야 합니다.

Windows Server 2003에서는 IPsec 정책을 관리하는 데 사용할 수 있는 GUI(그래픽 사용자 인터페이스)인 MMC IPsec 정책 관리 스냅인이 제공됩니다. 이 도구는 Windows 2000 및 Windows XP의 도구와 매우 비슷합니다. Windows Server 2003에서는 컴퓨터에 적용된 IPsec 정책 필터를 표시하는 MMC IPsec 모니터 스냅인과 NETSH IPsec 명령줄 유틸리티를 제공합니다. 허용 및 차단 필터는 IKE 빠른 모드 구성에 나타납니다. IKE 빠른 모드 일반 필터는 할당된 IPsec 정책에 정의되어 있는 필터입니다. IKE 빠른 모드 관련 필터는 컴퓨터의 특정 IP 구성에 적용되는 정책에 의해 생성되는 필터입니다. IKE 빠른 모드 관련 필터 함수인 일치하는 필터 찾기는 일치하는 허용 및 차단 필터를 찾는 데는 사용할 수 없으며 협상 작업이 있는 필터만 찾을 수 있습니다.

이 섹션의 나머지 부분에서는 다음과 같은 용어에 대해 설명합니다.

  • 필터 목록: 포트, 프로토콜 및 방향을 포함합니다. 목록에 지정된 내용과 트래픽이 일치하면 결정 사항을 트리거합니다. 필터 목록 하나에 필터가 여러 개 포함될 수 있습니다.

  • 필터 작업: 트래픽이 필터 목록과 일치할 때 필요한 반응입니다. 특정 동작에는 특정 트래픽 허용 또는 차단이 포함됩니다.

  • 규칙: 필터 목록과 필터 작업의 상관 관계입니다.

  • IPsec 정책: 규칙 모음입니다. 특정 시점에서 하나의 정책만 활성화할 수 있습니다.

네트워크 트래픽 맵이라는 표를 사용하면 이 정보를 쉽게 기록할 수 있습니다. 네트워크 트래픽 맵에는 서버 역할, 네트워크 트래픽 방향, 트래픽 대상, 인터페이스의 IP 주소, IP 프로토콜, TCP 포트 및 관련 UDP(User Datagram Protocol) 포트 등에 대한 기본 정보가 포함됩니다. 아래 표에 네트워크 트래픽 맵 예제가 나와 있습니다.

네트워크 트래픽 맵을 사용하면 특정 서버에서 나오거나 해당 서버로 들어가는 네트워크 트래픽 유형을 이해할 수 있습니다. IPsec 정책을 만들기 전에 서버가 제대로 작동하는 데 필요한 트래픽을 이해해야 합니다. 그렇지 않으면 너무 엄격한 필터를 만들어 응용 프로그램에 오류가 발생할 수 있습니다.

트래픽 맵을 만들려면

  1. 서버 역할에 필요한 기본 네트워크 서비스를 결정합니다.

  2. 각 서비스에 필요한 프로토콜과 포트를 식별합니다. 이 프로세스에는 네트워크 모니터를 사용하여 네트워크 트래픽을 캡처하고 이를 분석하여 대상 주소, 프로토콜 및 포트를 결정하는 작업이 포함될 수 있습니다. 또한 Netstat.exe 명령 같은 도구를 사용하여 열린 포트 및 활성 연결을 확인할 수도 있습니다.

  3. 식별된 트래픽만 허용하도록 설정하는 데 필요한 IPsec 필터링 규칙을 문서화합니다.

가장 제한적인 IPsec 필터를 먼저 사용하고 필요한 경우에만 추가 포트를 열면 이러한 설정을 통해 가능한 최고 수준의 보안을 실현할 수 있습니다. 서비스를 클라이언트 서비스와 서버 서비스로 구분하면 이 프로세스를 훨씬 더 쉽게 수행할 수 있습니다. 컴퓨터에서 다른 호스트에 제공하는 모든 서비스에 대해 서버 서비스를 정의해야 합니다.

표 11.1. 네트워크 트래픽 맵 예제

서비스 프로토콜 원본 포트 대상 포트 원본 주소 대상 주소 동작 미러링
HTTP 서버 TCP ANY 80 ANY ME 허용. 필요함
HTTPS 서버 TCP ANY 443 ANY ME 허용. 필요함
DNS 클라이언트 TCP ANY 53 ME DNS 허용. 필요함
Block everything ANY ANY ANY ANY ANY 차단. 필요함
이 예제 트래픽 맵의 경우 웹 서버는 모든 원본 IP 주소에서 컴퓨터에 HTTP 및 HTTPS 서비스를 제공하므로 해당 트래픽이 허용됩니다. ME 대상은 IPsec 서비스에 의해 해석되어 컴퓨터의 각 IP 주소에 대해 필터를 만듭니다. 이러한 각 필터는 트래픽을 원래 컴퓨터로 반환할 수 있도록 미러링됩니다. 이 방식을 사용하면 HTTP 서버 규칙을 통해 모든 원본 포트의 모든 호스트에서 시작되는 트래픽을 IIS 서버의 포트 80에 연결할 수 있습니다. 또한 이 규칙의 미러를 통해 IIS 서버의 포트 80에서 나오는 TCP 트래픽을 모든 호스트의 모든 포트로 보낼 수 있습니다. 클라이언트 서비스는 정책이 다른 호스트를 사용하는 컴퓨터에서 수행되는 모든 서비스일 수 있습니다. 예를 들어 예제 트래픽 맵의 경우 서버가 웹 응용 프로그램 중 하나에 대해 이름 조회를 수행하려면 DNS 클라이언트 서비스가 필요합니다. 이 예제에서는 DNS 서버 간에 트래픽을 허용하기 위해 필터를 만들었습니다. Windows Server 2003에서는 이 유형의 구성에 Windows 2000 Server보다 향상된 정책을 제공하여 DNS 및 다른 인프라 서버로 들어가는 트래픽을 허용합니다. Windows 2000의 경우 IPsec 정책에는 각 DNS 서버 IP 주소가 포함되어야 합니다. Windows Server 2003의 경우 정책은 논리 이름 DNS를 사용할 수 있으며 이는 서버의 로컬 IP 구성에 따라 각 DNS 서버 IP 주소에 대한 필터로 확장됩니다. **참고**: 이러한 Windows Server 2003 기능을 사용하는 IPsec 정책을 Windows 2000 또는 Windows XP 컴퓨터에 할당해서는 안 됩니다. 임의의 IP에서 내 IP 주소로 들어오는 미러링된 차단 필터는 컴퓨터의 IP 주소로 들어오거나 IP 주소에서 나가는 다른 모든 유니캐스트 IP 트래픽을 차단합니다. 이 필터는 DNS, HTTP 및 HTTPS에 대해 정의된 프로토콜 및 포트 관련 필터보다 일반적입니다. Windows Server 2003에서는 기본 예외가 제거되었으므로 원본 IP가 내 IP 주소이고 대상 주소가 임의의 IP 주소와 일치하기 때문에 이 필터는 아웃바운드 멀티캐스트 및 브로드캐스트 패킷과 일치하며 이러한 패킷을 차단합니다. 그러나 인바운드 멀티캐스트 및 브로드캐스트 트래픽은 이 필터와 일치하지 않습니다. 원본 주소는 임의의 IP이지만 멀티캐스트 또는 브로드캐스트 패킷의 대상 주소는 컴퓨터의 특정 IP 주소가 아니라 멀티캐스트 또는 브로드캐스트 IP 주소입니다. 따라서 이 규칙은 Windows Server 2003에서 인바운드 멀티캐스트 또는 브로드캐스트 트래픽을 차단하지 않습니다. 이 필터 정의는 Windows 2000 및 Windows XP에서도 지원됩니다. 그러나 이 필터는 유니캐스트 IP 트래픽만 일치시킵니다. 이러한 플랫폼은 IPsec 필터에 대해 브로드캐스트 및 멀티캐스트 패킷을 일치시키도록 되어 있지 않으므로 이 필터가 Windows 2000 및 Windows XP 컴퓨터에 적용된 경우에도 아웃바운드/인바운드 멀티캐스트 및 브로드캐스트 패킷이 허용됩니다. 마지막 규칙인 Block Everything은 Windows Server 2003의 또 다른 필터링 기능 향상을 보여 줍니다. Windows 2000 또는 Windows XP에서는 이 규칙이 지원되지 않습니다. 이 규칙은 보다 구체적인 필터와 일치하지 않는 다른 모든 유니캐스트 트래픽뿐만 아니라 인바운드/아웃바운드 멀티캐스트 및 브로드캐스트 트래픽을 모두 차단합니다. 이 규칙을 사용하는 경우 이전의 "Any IP to Me" 규칙은 필요하지 않습니다. 이러한 정책이 적용되면 해당 컴퓨터는 임대를 갱신할 DHCP 서버, 도메인 컨트롤러, WINS 서버, CRL 해지 사이트 또는 서버 모니터링 스테이션과 통신할 수 없다는 사실에 유의해야 합니다. 또한 이 정책을 사용하면 RPC 기반 MMC 스냅인 또는 원격 데스크톱 클라이언트 연결을 사용하는 관리자가 원격 관리를 수행할 수 없습니다. 예제 IIS 서버에 네트워크 인터페이스 카드가 두 개(인터넷 액세스용 하나, 내부 액세스용 하나) 있는 경우 두 인터페이스를 통한 모든 트래픽이 같은 방식으로 필터링됩니다. 따라서 이 정책을 프로덕션 환경에 맞게 상당 부분 사용자 지정해야 합니다. 네트워크 트래픽은 내부 IP 주소 또는 서브넷에 대해 다르게 필터링해야 합니다. 특정 관리 스테이션에서 IPsec 암호화 원격 관리를 요청하는 데 사용되는 필터링 규칙은 가능한 경우 손상된 다른 서버가 내부 인터페이스를 통해 서버에 액세스할 수 없도록 하거나 오프라인 공격에 대한 관리 로그온 네트워크 트래픽을 캡처할 수 없도록 하는 데도 사용되어야 합니다. 특정 대상 서버 또는 제한된 수의 대상 서버에만 연결하도록 제한할 수 없는 클라이언트 서버가 필요한 경우 IPsec 필터에서 제공하는 보안 수준이 크게 낮아질 수 있습니다. 다음 네트워크 트래픽 맵 예제에서는 관리자가 웹 브라우저를 사용하여 도움말 정보를 얻을 수 있는 인터넷 사이트에 액세스한 다음 패치를 다운로드할 수 있도록 한 가지 규칙이 추가됩니다. 이렇게 하려면 TCP 대상 포트 80 트래픽에 대한 미러링된 아웃바운드 고정 허용 필터가 필요합니다. **표 11.2. 아웃바운드 웹 검색을 허용하는 네트워크 트래픽 맵 예제**

서비스 프로토콜 원본 포트 대상 포트 원본 주소 대상 주소 동작 미러링
Inbound ICMP for TCP PMTU ICMP ANY ANY ANY ME 허용. 필요 없음
Inbound IIS Server HTTP:80 TCP ANY 80 ANY ME 허용. 필요함
Inbound IIS Server FTP:21 TCP ANY 21 ANY ME 허용. 필요함
Inbound Terminal Server TCP ANY 3389 ANY ME 허용. 필요함
Me to Domain DCs all traffic ANY ANY ANY ME Domain Name 허용. 필요함
Outbound DNS UDP/TCP UDP ANY 53 ME DNS 허용. 필요함
Outbound DNS UDP/TCP TCP ANY 53 ME DNS 허용. 필요함
Outbound WINS UDP 137 137 ME WINS. 허용. 필요함
Outbound DHCP UDP 68 67 ME DHCP 허용. 필요함
Outbound HTTP:80 TCP ANY 80 ME ANY 허용. 필요함
Block everything ANY ANY ANY ANY ANY 차단. 필요함
이 예제 트래픽 맵은 적절하게 구성된 것처럼 보이지만 결과적으로 TCP 원본 포트 80을 사용하는 임의의 IP 주소로부터 들어오는 인바운드 연결을 시작하는 공격자에 대해 전체 정책에서 아무런 보안 기능을 제공하지 않습니다. 이 공격자는 인바운드 허용 필터를 통해 열려 있는 모든 TCP 포트에 액세스할 수 있으며 아웃바운드 허용 필터를 통해 TCP 대상 포트 80으로 다시 응답할 수 있습니다. 다음과 같은 다양한 솔루션을 사용하여 인바운드 공격을 차단할 수 있습니다. - 공격자가 포트 80을 사용하여 열린 포트에 대한 인바운드 액세스를 권한을 얻을 수 없도록 추가 IPsec 필터링 규칙을 사용합니다. - 아웃바운드 연결에 해당하는 경우가 아니면 원본 포트 80에서 들어오는 인바운드 트래픽을 차단하도록 프런트 엔드 상태 저장 필터링 방화벽 또는 라우터를 사용합니다. - 이 IPsec 정책뿐 아니라 서버의 외부 네트워크 어댑터에 Windows 방화벽을 구성하여 IPsec 필터가 허용하는 모든 아웃바운드 트래픽에 상태 저장 필터링을 제공합니다. Windows 방화벽은 IPsec의 상위 계층이므로 역시 TCP 포트 80 및 443 인바운드를 허용하도록 구성해야 합니다. 이 구성은 기본 구성입니다. 다음 표의 예제 트래픽 맵에서는 추가 IPsec 필터를 사용하여 포트 80에서 열린 포트에 액세스하려는 모든 시도를 차단합니다. 먼저 Netstat -ano 명령을 사용하여 공격자가 연결할 수 있는 서버에서 열어야 하는 TCP 포트를 확인할 수 있습니다. 이 명령을 사용하면 다음과 같은 출력을 확인할 수 있습니다. ``` C:\Documents and Settings\testuser.domain.000>netstat -ano Active Connections

Proto Local Address Foreign Address State PID TCP 0.0.0.0:135 0.0.0.0:0 LISTENING 740 TCP 0.0.0.0:445 0.0.0.0:0 LISTENING 4 TCP 0.0.0.0:1025 0.0.0.0:0 LISTENING 884 TCP 0.0.0.0:1046 0.0.0.0:0 LISTENING 508 TCP 192.168.0.5:139 0.0.0.0:0 LISTENING 4 UDP 0.0.0.0:445 : 4 UDP 0.0.0.0:500 : 508 UDP 0.0.0.0:1026 : 816 UDP 0.0.0.0:1029 : 508 UDP 0.0.0.0:1051 : 452 UDP 0.0.0.0:4500 : 508 UDP 127.0.0.1:123 : 884 UDP 192.168.0.5:123 : 884 UDP 192.168.0.5:137 : 4 UDP 192.168.0.5:138 : 4

그런 후에 규칙을 정의하여 다음 표와 같이 TCP 원본 포트 25에서 열려 있는 각 TCP 포트로 들어오는 특정 공격을 차단합니다.
  
**표 11.3. 아웃바운드 웹 검색을 허용하는 네트워크 트래픽 맵의 수정된 예제**

<p></p> 
<table style="border:1px solid black;">
<colgroup>
<col width="12%" />
<col width="12%" />
<col width="12%" />
<col width="12%" />
<col width="12%" />
<col width="12%" />
<col width="12%" />
<col width="12%" />
</colgroup>
<thead>
<tr class="header">
<th style="border:1px solid black;" >서비스</th>
<th style="border:1px solid black;" >프로토콜</th>
<th style="border:1px solid black;" >원본 포트</th>
<th style="border:1px solid black;" >대상 포트</th>
<th style="border:1px solid black;" >원본 주소</th>
<th style="border:1px solid black;" >대상 주소</th>
<th style="border:1px solid black;" >동작</th>
<th style="border:1px solid black;" >미러링</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td style="border:1px solid black;">Inbound ICMP for TCP PMTU</td>
<td style="border:1px solid black;">ICMP</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">ME</td>
<td style="border:1px solid black;">허용.</td>
<td style="border:1px solid black;">필요 없음</td>
</tr>
<tr class="even">
<td style="border:1px solid black;">Inbound IIS Server HTTP:80</td>
<td style="border:1px solid black;">TCP</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">80</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">ME</td>
<td style="border:1px solid black;">허용.</td>
<td style="border:1px solid black;">필요함</td>
</tr>
<tr class="odd">
<td style="border:1px solid black;">Inbound IIS Server FTP:21</td>
<td style="border:1px solid black;">TCP</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">21</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">ME</td>
<td style="border:1px solid black;">허용.</td>
<td style="border:1px solid black;">필요함</td>
</tr>
<tr class="even">
<td style="border:1px solid black;">Inbound Terminal Server</td>
<td style="border:1px solid black;">TCP</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">3389</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">ME</td>
<td style="border:1px solid black;">허용.</td>
<td style="border:1px solid black;">필요함</td>
</tr>
<tr class="odd">
<td style="border:1px solid black;">Me to Domain DCs all traffic</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">ME</td>
<td style="border:1px solid black;">Domain Name</td>
<td style="border:1px solid black;">허용.</td>
<td style="border:1px solid black;">필요함</td>
</tr>
<tr class="even">
<td style="border:1px solid black;">Outbound DNS UDP/TCP</td>
<td style="border:1px solid black;">UDP</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">53</td>
<td style="border:1px solid black;">ME</td>
<td style="border:1px solid black;">DNS</td>
<td style="border:1px solid black;">허용.</td>
<td style="border:1px solid black;">필요함</td>
</tr>
<tr class="odd">
<td style="border:1px solid black;">Outbound DNS UDP/TCP</td>
<td style="border:1px solid black;">TCP</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">53</td>
<td style="border:1px solid black;">ME</td>
<td style="border:1px solid black;">DNS</td>
<td style="border:1px solid black;">허용.</td>
<td style="border:1px solid black;">필요함</td>
</tr>
<tr class="even">
<td style="border:1px solid black;">Outbound WINS</td>
<td style="border:1px solid black;">UDP</td>
<td style="border:1px solid black;">137</td>
<td style="border:1px solid black;">137</td>
<td style="border:1px solid black;">ME</td>
<td style="border:1px solid black;">WINS.</td>
<td style="border:1px solid black;">허용.</td>
<td style="border:1px solid black;">필요함</td>
</tr>
<tr class="odd">
<td style="border:1px solid black;">Outbound DHCP</td>
<td style="border:1px solid black;">UDP</td>
<td style="border:1px solid black;">68</td>
<td style="border:1px solid black;">67</td>
<td style="border:1px solid black;">ME</td>
<td style="border:1px solid black;">DHCP</td>
<td style="border:1px solid black;">허용.</td>
<td style="border:1px solid black;">필요함</td>
</tr>
<tr class="even">
<td style="border:1px solid black;">Outbound HTTP:80</td>
<td style="border:1px solid black;">TCP</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">80</td>
<td style="border:1px solid black;">ME</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">허용.</td>
<td style="border:1px solid black;">필요함</td>
</tr>
<tr class="odd">
<td style="border:1px solid black;">Mitigation from inbound src 80 attack</td>
<td style="border:1px solid black;">TCP</td>
<td style="border:1px solid black;">80</td>
<td style="border:1px solid black;">135</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">ME</td>
<td style="border:1px solid black;">차단.</td>
<td style="border:1px solid black;">필요 없음</td>
</tr>
<tr class="even">
<td style="border:1px solid black;">Mitigation from inbound src 80 attack</td>
<td style="border:1px solid black;">TCP</td>
<td style="border:1px solid black;">80</td>
<td style="border:1px solid black;">139</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">ME</td>
<td style="border:1px solid black;">차단.</td>
<td style="border:1px solid black;">필요 없음</td>
</tr>
<tr class="odd">
<td style="border:1px solid black;">Mitigation from inbound src 80 attack</td>
<td style="border:1px solid black;">TCP</td>
<td style="border:1px solid black;">80</td>
<td style="border:1px solid black;">445</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">ME</td>
<td style="border:1px solid black;">차단.</td>
<td style="border:1px solid black;">필요 없음</td>
</tr>
<tr class="even">
<td style="border:1px solid black;">Mitigation from inbound src 80 attack</td>
<td style="border:1px solid black;">TCP</td>
<td style="border:1px solid black;">80</td>
<td style="border:1px solid black;">1025</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">ME</td>
<td style="border:1px solid black;">차단.</td>
<td style="border:1px solid black;">필요 없음</td>
</tr>
<tr class="odd">
<td style="border:1px solid black;">Mitigation from inbound src 80 attack</td>
<td style="border:1px solid black;">TCP</td>
<td style="border:1px solid black;">80</td>
<td style="border:1px solid black;">1046</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">ME</td>
<td style="border:1px solid black;">차단.</td>
<td style="border:1px solid black;">필요 없음</td>
</tr>
<tr class="even">
<td style="border:1px solid black;">Block everything</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">ANY</td>
<td style="border:1px solid black;">차단.</td>
<td style="border:1px solid black;">필요함</td>
</tr>
</tbody>
</table>
  
이 예제는 컴퓨터의 모든 활성 포트에 대해 원본 포트 80이 지정되어 있는 트래픽을 차단하여 인바운드 공격을 방지할 수 있는 단방향 필터를 만드는 방법을 보여 줍니다. 이 필터를 사용하면 원본 포트 80을 스푸핑하여 RPC, NetBT 및 SMB(CIFS)에 필요한 포트에 연결할 수 없게 됩니다.
  
IPsec은 다음과 같은 다양한 방법으로 적용할 수 있습니다.
  
-   개별 컴퓨터에 적용
  
-   그룹 정책을 사용하여 OU 또는 도메인에 연결
  
-   netsh ipsec 명령 스크립트를 작성하여 해당 스크립트를 선택한 컴퓨터에 적용
  
그룹 정책을 기초로 IPsec 정책을 배포할 수 있습니다. 그러나 특정 컴퓨터에 맞게 IPsec 정책을 조정해야 할 경우에는 로컬 정책을 사용하는 것이 좋습니다. 로컬 또는 도메인 기반 정책은 NETSH IPsec 스크립팅된 영구 정책과 혼합하여 사용하면 가장 효율적으로 관리할 수 있습니다. 특히 컴퓨터를 시작하는 동안 보안을 제공하는 영구 정책을 설정할 때는 NETSH를 사용해야 합니다. 자세한 내용은 Windows Server 2003 Deployment Kit: Deploying Network Services(네트워크 서비스 배포)의 6장 "Deploying IPSec"(IPSec 배포)에서 "Assigning Domain-based, OU-Level, and Local IPSec Policies"(도메인 기반, OU 수준 및 로컬 IPSec 정책 할당) 섹션을 참조하십시오.
  
###### 트래픽의 IPSec 보호 협상
  
IPsec 필터링과 IKE 프로토콜을 통합하면 IPsec 필터와 일치하는 유니캐스트 IP 트래픽에 대해 정책을 기반으로 한 자동 IPsec 암호화 보호 협상을 수행할 수 있습니다. IPsec으로 보호된 패킷은 정책 구성에 따라 결정된 보안 옵션이 포함된 AH 형식 또는 ESP 형식을 사용할 수 있습니다. IPsec 정책을 사용하여 상위 계층 프로토콜과 응용 프로그램에 대해 IPsec 보안 전송을 협상하면 다음과 같은 이점을 활용할 수 있습니다.
  
-   네트워크 공격을 보다 심층적으로 방어할 수 있습니다. IPsec은 IETF(Internet Engineering Task Force)에서 개발한 효율적인 최신 보안 프로토콜입니다. 이 프로토콜을 사용하면 모든 유니캐스트 IP 통신의 기반이 되는 강력한 방어 계층을 추가하여 응용 프로그램 기반 보안을 강화할 수 있습니다. 이와 같이 IPsec은 상위 계층 프로토콜의 보안 문제에 대한 보호 수단을 제공하며 통신 보안을 크게 강화합니다. 예를 들어 SMB 파일 공유 프로토콜은 Active Directory 디렉터리 서비스 복제, 파일 전송, 인쇄 및 그룹 정책 다운로드에 광범위하게 사용됩니다. 그러나 SMB는 개인 정보 보호를 제공하지는 않습니다. 따라서 소극적인 네트워크 관찰자도 SMB 내에서 전송되는 모든 데이터를 볼 수 있습니다. 또한 SMB는 디지털 서명을 제공하는데 하나의 설정이 모든 SMB 통신 경로에 영향을 주므로 경우에 따라 디지털 서명을 사용하는 것이 적절하지 않을 수도 있습니다. IPsec은 안전한 특정 네트워크 경로 또는 경로 집합에 적용할 수 있습니다. Windows 2000 및 Windows XP에서는 SMB 보안과 관련된 두 가지 문제가 발견되었습니다. 이러한 보안 문제에 대해 지원되는 수정 프로그램이 현재 제공되고 있지만, SMB 또는 다른 프로토콜 공격에 대비한 최우선 방어 계층으로 IPsec을 사용하면 보안을 향상시킬 수 있습니다. Windows 2000과 Windows XP에 대해 확인된 두 가지 SMB 보안 문제 및 지원되는 수정 프로그램에 대한 자세한 내용은 다음 Microsoft 기술 자료 문서를 참조하십시오.
  
    -   "[MS02-070: SMB 서명의 결함으로 그룹 정책이 수정될 수 있음](https://support.microsoft.com/?kbid=329170)"(https://support.microsoft.com/?kbid=329170)
  
    -   "[MS02-045: 네트워크 공유 공급자의 체크되지 않은 버퍼로 인하여 서비스 거부가 발생할 수 있다](https://support.microsoft.com/?kbid=326830)"(https://support.microsoft.com/?kbid=326830)
  
-   두 대 이상의 컴퓨터 사이의 모든 트래픽에 호스트 기반 인증 및 암호화를 사용하여 데이터의 관리 소유자가 네트워크를 통과하는 데이터의 모든 권한을 유지하도록 할 수 있습니다. 네트워크 트래픽의 데이터에는 소유자의 중요한 정보 자산이 포함되어 있습니다. 데이터가 네트워크를 통과할 때 이 정보를 도난당하면 조직의 비즈니스나 업무 목표에 심각한 피해를 줄 수 있습니다. 따라서 네트워크 경로의 무결성과 트러스트를 관리하는 비즈니스 및 법률 트러스트 관계가 완벽하게 적용되지 않거나 약간 손상되는 경우에도 IPsec 암호화 통신은 안전하게 유지됩니다.
  
-   방화벽 통과를 간편하고 안전하게 수행할 수 있습니다. 도메인 컨트롤러 간, 서버 간 또는 클라이언트와 서버 간 통신에 사용되는 대부분의 프로토콜은 방화벽에 의해 IPsec ESP(프로토콜 50) 트래픽 또는 AH(프로토콜 51) 트래픽으로만 해석됩니다. 이러한 프로토콜의 트래픽 및 IKE 트래픽만 허용하도록 방화벽을 구성할 수 있으며 이러한 프로토콜은 공격에 대비하여 강화됩니다.
  
-   3DES 암호화 알고리즘 및 SHA1 무결성 알고리즘을 사용하는 IPsec은 Common Criteria 및 FIPS 140-1에 의해 인증됩니다. 대부분의 정부, 군사, 금융 및 의료 기관에서는 Common Criteria 또는 FIPS 140-1에 의해 인증된 알고리즘을 사용하여 트래픽의 보안을 유지해야 합니다. RPC, Kerberos 인증 프로토콜, LDAP(Lightweight Directory Access Protocol) 등 대부분의 Windows 프로토콜을 통한 트래픽을 암호화하는 데는 기본적으로 RC4 스트림 암호화 알고리즘이 사용됩니다. RC4는 Common Criteria 또는 FIPS 140-1에서 인증한 알고리즘이 아닙니다.
  
-   소프트웨어 기반 Windows 솔루션인 IPsec을 사용하면 하드웨어 기반 솔루션에 비해 비용 효율적인 방법으로 호스트 간 통신의 보안을 유지할 수 있습니다. VPN(가상 사설망) 또는 전용 임대 회선 등의 하드웨어 기반 보안 솔루션을 사용하는 경우 Windows IPsec에 비해 비용이 많이 들 수 있습니다.
  
-   IPsec을 사용하면 SMB 서명 같은 프로토콜 관련 보안 조치를 사용할 때보다 CPU 사용률을 줄일 수 있습니다. IPsec 처리를 오프로드하는 네트워크 어댑터는 IPsec 패킷의 보안을 유지하는 데 사용되는 암호화 작업의 속도를 높이므로 암호화를 위한 성능 비용을 최소화할 수 있습니다. 그러므로 IPsec을 통해 보호하는 TCP/IP 연결을 사용하면 이러한 어댑터를 구입하는 데 장비 비용이 추가되기는 하지만 IPsec을 통해 보호하지 않는 TCP/IP 연결과 같은 처리량을 얻을 수 있습니다. 어댑터를 사용할 수 없는 경우에는 IPsec 암호화 작업 과정에서 도메인 컨트롤러의 CPU 로드가 높아집니다. 이와 같이 CPU 로드가 높아지는 경우 사용 가능한 CPU 및 네트워크 트래픽 양에 따라 CPU 용량을 추가해야 할 수도 있고 그렇지 않을 수도 있습니다. 성능 테스트를 수행하여 특정 시나리오에서 도메인 컨트롤러에 미치는 영향을 평가해야 합니다. IPsec 하드웨어 오프로드 어댑터를 사용할 경우 얻을 수 있는 이점에 대한 자세한 내용은 www.veritest.com/clients/reports/intel/intelps.pdf의 "[Intel PRO/100S Network Adapter, IPSec Offload Performance and Comparison (영문)](https://www.veritest.com/clients/reports/intel/intelps.pdf)"(Intel PRO/100S 네트워크 어댑터, IPSec 오프로드 성능 및 비교)을 참조하십시오.
  
##### 잠재적 영향
  
IPsec은 네트워크 공격에 대비해 서버를 강화하는 데 사용할 수 있는 도구 중 하나입니다. 이를 유일한 도구 또는 완벽한 솔루션으로 간주해서는 안 됩니다. IPsec 필터링은 모든 기능을 갖춘 주변 방화벽 또는 라우터 필터를 대신하기 위해 만들어진 것이 아니며 고정 필터링이 효과적인 경우 클라이언트와 서버를 강화하기 위한 간단한 패킷 필터링 시나리오에만 사용하는 것이 좋습니다. 또한 IPsec 필터링은 여러 컴퓨터에 적용하기 위한 디렉터리 기반 정책용 필터링입니다. 따라서 MMC IPsec 정책 관리 스냅인에서는 구성 과정이 진행되는 동안 특정 컴퓨터에 정책이 적용되는 방식에 대한 자세한 정보를 제공할 수 없습니다. IPsec 필터링에는 다음과 같은 제한이 있습니다.
  
-   특정 응용 프로그램에는 IPsec 필터를 적용할 수 없으며 해당 응용 프로그램에서 사용하는 프로토콜과 포트에 대해서만 IPsec 필터를 정의해야 합니다.
  
-   IPsec 필터는 고정 필터이므로 "상태 저장" 아웃바운드 트래픽 필터링을 제공하지 않습니다. 아웃바운드 네트워크 트래픽을 허용하려면 일반적으로 고정 아웃바운드 및 인바운드 허용 필터가 필요합니다. 따라서 IPsec은 열린 포트에 액세스하기 위해 고정 인바운드 허용 필터를 사용하는 공격자에 대한 보호 수단을 제공하지 못하기 때문에 아웃바운드 허용 필터를 IP 주소 또는 필요한 범위로만 한정해야 합니다.
  
-   IPsec 필터링은 여러 유형의 ICMP 메시지를 구별하지 않습니다.
  
-   IPsec 필터링은 침입 감지 목적으로 IP 패킷의 내용을 검사하지 않습니다.
  
-   IPsec 필터는 겹칠 수는 있지만 수동으로 순서를 지정할 수는 없습니다. IPsec 서비스는 자동 필터 순서를 제공하는 가중치를 내부적으로 계산합니다. 필터의 주소 부분에 가장 높은 우선 순위가 지정되고 그 다음은 프로토콜, 원본 포트, 대상 포트의 순으로 우선 순위가 지정됩니다.
  
-   IPsec 필터는 인터페이스에 한정되지 않으며 IP 주소와 관련되도록 구성할 수도 있지만 이 경우 각 인터페이스의 모든 트래픽이 필터 목록의 항목과 일치해야 합니다.
  
-   IPsec 필터는 명시적으로 인바운드 또는 아웃바운드로 구성할 수 없습니다. 인바운드 및 아웃바운드 방향은 필터에 지정된 주소에 따라 자동으로 결정됩니다. 경우에 따라 인바운드 필터와 아웃바운드 필터가 둘 다 자동으로 생성됩니다.
  
-   IPsec 정책은 중복 필터를 지원하지 않습니다.
  
-   Windows Server 2003에서는 IPsec 필터링 성능이 크게 향상되었지만 호스트 기반 필터링으로 인해 많은 양의 트래픽이 발생하여 CPU 로드가 추가될 수 있습니다. 최적화된 프런트 엔드 라우터 또는 방화벽은 신속한 트래픽 필터링을 제공할 수 있습니다.
  
IPsec 또는 다른 네트워크 장치 필터링을 통해 네트워크 트래픽을 차단하는 경우 비정상적인 응용 프로그램 동작 및 이벤트 메시지가 나타날 수 있습니다. IPsec 필터링에서 제공하는 손실된 인바운드 및 아웃바운드 트래픽 로그를 쉽게 읽을 수 없습니다. 네트워크 트래픽의 네트워크 모니터(Netmon) 캡처에서는 차단된 아웃바운드 트래픽을 볼 수 없습니다. Netmon에서는 차단된 인바운드 트래픽을 볼 수는 있지만 특정 패킷이 손실되었음을 알 수 있는 표시가 캡처 파일에 나타나지 않습니다. 따라서 IPsec 정책이 할당되지 않은 경우에는 정상적인 응용 프로그램 동작, 이벤트 및 네트워크 트래픽 흐름에 따라 효과적인 진단을 수행할 수 있습니다.
  
또한 응용 프로그램 트래픽에 대한 IPsec 필터를 적절하게 디자인하려면 네트워크 트래픽 흐름을 자세하게 분석하여 응용 프로그램에서 네트워크를 사용하는 방식을 이해해야 합니다. 예를 들어 SMB 프로토콜은 파일 전송, 파일 공유 및 인쇄 공유에 TCP 포트 139를 사용합니다. IPsec에서 이 포트를 차단하면 SMB에서는 TCP 포트 445도 사용할 수 있습니다. 또 다른 예로는 서로 다른 대상으로 들어가는 여러 네트워크 트래픽 흐름이 응용 프로그램에 필요한 경우를 들 수 있습니다. SMB 및 다른 프로토콜은 일반적으로 사용자를 인증합니다. 이를 통해 컴퓨터가 백그라운드에서 Kerberos 트래픽을 찾아 도메인 컨트롤러와 교환하도록 할 수 있습니다. Kerberos 프로토콜은 DNS UDP 53 또는 TCP 53을 사용하여 도메인 컨트롤러 IP 주소 목록을 검색한 다음 가능한 모든 도메인 컨트롤러 IP 주소에 대해 LDAP UDP 389, UDP 및 TCP 포트 88 트래픽을 사용합니다. 따라서 도메인 컨트롤러에 대해 차단된 패킷으로 인해 인쇄 오류가 발생할 수 있습니다. RPC 같은 일부 프로토콜은 컴퓨터 시작 시 또는 응용 프로그램 실행 시 동적으로 결정되는 광범위한 TCP 포트를 사용합니다. 즉, RPC 응용 프로그램이 고정 포트를 필요로 하는 구성을 제공하는 경우가 아니면 고정 필터를 사용하여 이러한 응용 프로그램을 포트에서 효과적으로 제어할 수 없습니다.
  
Windows 2000 및 Windows XP의 경우 정책 구성에 지정된 필터에 대한 기본 예외는 IKE를 사용하여 보안을 유지할 수 없는 트래픽(브로드캐스트 및 멀티캐스트 IP 패킷), IPsec 트래픽에 QoS(Quality of Service)를 제공하기 위해 제외되어야 하는 트래픽(RSVP 프로토콜) 및 IPsec 시스템이 제대로 작동하는 데 필요한 트래픽(IKE 자체 및 IKE 인증 방법으로 사용되는 Kerberos) 등의 IP 네트워크 트래픽 유형에 사용하기 위한 것입니다. 이러한 예외를 제거하기 위해 레지스트리 키가 제공되었지만 허용 및 차단 방화벽 시나리오에 IPsec 필터링이 사용된 경우에는 보통 이러한 예외가 사용됩니다. 따라서 Windows Server 2003에서만 IKE 트래픽에 예외를 제공합니다. Windows 2000 및 Windows XP를 사용하는 모든 IPsec 시나리오에 대해서는 기본 예외를 제거하는 것이 좋습니다. 기본 예외에 대한 자세한 내용은 https://support.microsoft.com/?kbid=811832의 Microsoft 기술 자료 문서 "[일부 시나리오에서 IPSec 기본 면제를 사용하여 IPSec 보호를 무시할 수 있다](https://support.microsoft.com/?kbid=811832)" 및 https://support.microsoft.com/?kbid=810207의 Microsoft 기술 자료 문서 "[IPSec default exemptions are removed in Windows Server 2003](https://support.microsoft.com/?kbid=810207)"(Windows Server 2003에서 제거된 IPSec 기본 예외)을 참조하십시오.
  
Windows 2000 컴퓨터가 인터넷에 연결되면 이 장 앞부분에서 설명한 포트 80 등 미러링된 아웃바운드 허용 필터를 통해 공격자가 원본 포트를 사용하는 인터넷에서 서버의 열린 TCP 포트에 액세스할 수 있습니다. 따라서 IPsec을 잘못 구성하면 예상한 수준으로 보안을 구현하지 못할 수 있습니다. 공격에 대한 올바른 보안 및 보호 수준이 적용되는지 구성을 테스트해야 합니다.
  
보안이 손상되어 로컬 관리자 또는 로컬 시스템 액세스 권한을 얻는 공격자는 IPsec 정책을 사용할 수 없도록 설정하거나 변경할 수 있습니다.
  
Windows 2000의 IPsec은 컴퓨터를 시작하는 동안 완벽한 필터링을 제공하지 않으며 TCP/IP 스택이 응답하는 짧은 기간이 지정되어 있습니다. 공격이 자동화되면 공격자가 정상적인 상태에서는 IPsec 정책을 통해 차단되는 응용 프로그램 포트에 액세스할 가능성이 있습니다. 대부분의 경우 IPsec 필터링이 적절하게 구현되기 전에는 응용 프로그램에서 연결 처리를 시작하지 못했습니다. IPsec 필터링을 사용하여 최고 수준의 보안을 적용하려면 컴퓨터를 다시 시작하는 동안 네트워크에서 컴퓨터의 연결을 끊어야 합니다.
  
Windows Server 2003에서는 컴퓨터를 시작하는 동안 TCP/IP에서 IPsec 드라이버를 로드할 때 해당 드라이버가 사용하는 초기 시작 정책을 제공합니다. IPsec 서비스가 시작되면 즉시 영구 정책이 적용됩니다. 그런 다음 로컬 또는 도메인 정책 할당을 결정할 수 있는 경우 영구 정책뿐만 아니라 이 정책 할당 역시 적용됩니다. 따라서 관리 트래픽을 제외한 모든 트래픽 차단 같은 안전한 기본 영구 정책을 구성하는 NETSH IPsec 스크립트에서는 시작 정책에서 로컬 또는 도메인 할당 IPsec 정책으로 전환하는 동안 완벽한 보호를 제공할 수 있습니다. 자세한 내용은 Windows Server 2003 온라인 도움말 및 배포 키트에서 확인할 수 있습니다.
  
그러나 Windows 2000과 Windows Server 2003에서는 IPsec 정책 에이전트 서비스를 시작할 때 서비스 종속성을 구성할 수 없습니다. 또한 서비스 종속성을 구성해도 종속 서비스가 시작되기 전에 필터가 적절하게 구현되지 않을 수 있습니다.
  
Windows Server 2003 및 Windows XP SP2에서는 아웃바운드 트래픽에 대해 상태 저장 필터링을 수행하고 포트 및 ICMP 메시지 유형에 대한 인바운드 액세스에 기본 제어를 제공하는 Windows 방화벽 서비스를 제공합니다. 또한 Windows 방화벽은 차단된 인바운드 및 아웃바운드 패킷에 대한 읽을 수 있는 형태의 로그도 제공합니다. 관리자는 Windows 방화벽의 기능을 검토하여 트래픽 필터링 요구에 적합한지 여부를 확인해야 합니다. Windows 방화벽에서 제공하는 상태 저장 필터링을 IPsec 필터링과 함께 사용하면 트래픽을 허용하기 위해 미러링된 아웃바운드 필터를 사용하도록 IPsec을 구성해야 하는 시나리오를 보호할 수 있습니다. 가능한 경우 프런트 엔드 라우터 또는 방화벽 필터링을 최우선 방어 수단으로 사용해야 합니다.
  
또한 허용된 네트워크 트래픽과 응용 프로그램 내의 감염과 공격을 감지하고 이에 대비하기 위해 호스트 기반 침입 감지 시스템 및 기타 바이러스 백신 시스템도 고려하는 것이 좋습니다. 타사의 호스트 기반 방화벽 또는 기능이 뛰어난 방화벽이 복잡한 필터링 요구 사항에 가장 적합한 솔루션이 될 수도 있습니다.
  
###### 트래픽의 IPsec 보호 협상
  
IPsec 종단 간 보호를 사용하면 보안을 크게 향상시킬 수 있지만 네트워크에 IPsec 보안 통신을 배포하려면 교육 및 관리 비용이 추가로 필요합니다. 또한 IPsec 하드웨어와 오프로드 네트워크 어댑터를 구입하거나 CPU 용량을 늘려야 할 경우 하드웨어 비용도 추가됩니다. 따라서 특정 시나리오에 대해 IPsec을 배포하기 전에 IPsec에서 해결해야 할 보안 위협, 보안 요구 사항, IPsec 배포 비용 및 예상되는 비즈니스 이점 등을 신중하게 고려 및 정리하십시오.
  
AH 형식을 사용하여 IPsec을 구현하면 클라이언트/서버 컴퓨터 사이의 상호 트러스트 방법 관리 작업을 비롯하여 클라이언트/서버 IPsec 구성 관리 작업에 필요한 오버헤드가 새롭게 추가됩니다. 두 컴퓨터가 항상 같은 도메인 또는 상호 트러스트된 도메인에 있는 경우 그룹 정책을 통해 필요한 IPsec 정책 설정을 전달할 수 있으며 Kerberos 인증을 통해 IPsec 보안 연결을 위한 트러스트를 설정할 수 있습니다. Kerberos 인증을 사용할 수 없는 컴퓨터의 경우 컴퓨터 인증서 또는 미리 공유한 인증 키를 사용할 수 있습니다. 그러나 미리 공유한 인증 키 값은 IPsec 정책 구성에 보호되지 않은 상태로 저장되므로 이러한 키는 사용하지 않는 것이 좋습니다.
  
로컬 IPsec 정책은 해당 정책을 정의한 관리자만 읽을 수 있지만 Active Directory에 저장된 정책은 모든 도메인 컴퓨터에서 액세스할 수 있어야 합니다. 따라서 미리 공유한 키 값의 개인 정보를 유지 관리하기가 어렵습니다. 그러므로 IKE 인증에 Kerberos 프로토콜을 사용할 수 없는 경우에는 디지털 인증서를 사용하는 것이 좋습니다. IPsec 정책은 모든 트래픽을 보호하거나 특정 TCP 또는 UDP 포트에 대해서만 IPsec을 협상할 수 있도록 되어 있어야 합니다. 클라이언트 쪽의 IPsec 정책은 일반적으로 서버의 고정 IP 주소로 구성해야 합니다. 서버 쪽에도 IPsec이 필요한 경우에는 호환 가능한 IPsec 정책 구성 및 상호 트러스트 방법이 없는 클라이언트 컴퓨터에 대한 액세스가 거부됩니다.
  
Windows IPsec 구현에 대한 자세한 내용은 www.microsoft.com/windows2000/technologies/communications/ipsec/default.asp의 [Windows 2000 IPsec (영문)](https://www.microsoft.com/windows2000/technologies/communications/ipsec/default.asp) 웹 사이트를 참조하십시오.
  
[](#mainsection)[페이지 위쪽](#mainsection)
  
### Windows 방화벽 구성
  
인터넷 방화벽을 사용하면 외부 사용자가 인터넷을 통해 컴퓨터에 액세스하지 못하도록 차단할 수 있습니다. Windows XP SP2 및 Windows Server 2003 SP1에는 많은 조직에 대해 웜 및 서비스 거부 공격 같은 네트워크 기반 공격에 대비한 추가 보호 계층을 제공할 수 있는 기본 제공 방화벽인 Windows 방화벽이 포함되어 있습니다.
  
1.  **시작**을 클릭한 다음 **제어판**을 클릭합니다.
  
2.  **Windows 방화벽**을 클릭합니다.    
  
3.  **사용(권장)** 라디오 단추를 클릭합니다.
  
4.  필요한 경우 **예외** 탭을 클릭하고 방화벽을 통해 허용할 프로토콜에 대해 예외를 구성합니다.
  
5.  **확인**을 클릭하여 Windows 방화벽을 활성화합니다.
  
Windows 방화벽은 기본 침입 방지 기능으로만 사용되므로 여러 타사 제품에서 제공되는 다양한 기능 집합은 포함하고 있지 않습니다. Windows 방화벽은 사용자가 PC에 대한 데이터를 수집하도록 허용하지 않으며 무단 연결 시도를 차단합니다. 그러나 Windows 방화벽은 포괄적인 아웃바운드 필터링을 수행하지 않습니다.
  
Windows 방화벽에는 이전 버전의 Windows에 포함되어 있던 ICF(인터넷 연결 방화벽)에 비해 향상된 몇 가지 주요 기능이 추가되었습니다. 특히 Windows 방화벽은 그룹 정책을 통해 중앙에서 관리할 수 있습니다. 사용 가능한 관리 도구 및 설정에 대한 자세한 내용은 www.microsoft.com/downloads/details.aspx?  
FamilyID=4454e0e1-61fa-447a-bdcd-499f73a637d1&DisplayLang=en의 "[Deploying Windows Firewall Settings for Microsoft Windows XP with Service Pack 2 (영문)](https://www.microsoft.com/download/details.aspx?familyid=4454e0e1-61fa-447a-bdcd-499f73a637d1&displaylang=en)"(Microsoft Windows XP 서비스 팩 2용 Windows 방화벽 설정 배포) 백서를 참조하십시오.
  
[](#mainsection)[페이지 위쪽](#mainsection)
  
### 추가 정보
  
다음 링크에서는 Windows Server 2003 및 Windows XP의 추가적인 보안 강화 대책에 대한 자세한 내용을 확인할 수 있습니다.
  
-   https://go.microsoft.com/fwlink/?LinkId=14845의 [Windows Server 2003 Security Guide](https://go.microsoft.com/fwlink/?linkid=14845)(Windows Server 2003 보안 가이드)에서는 Windows Server 2003 보안 기능 설치 및 관리를 위한 포괄적인 지침을 제공합니다.
  
-   https://www.microsoft.com/download/details.aspx?displaylang=ko&FamilyID=6A80711F-E5C9-4AEF-9A44-504DB09B9065에서 다운로드할 수 있는 [Exchange Server Security Hardening Guide](https://www.microsoft.com/download/details.aspx?displaylang=ko&familyid=6a80711f-e5c9-4aef-9a44-504db09b9065)(Exchange Server 보안 강화 설명서)에는 Active Directory 도메인의 Exchange Server 컴퓨터에 사용할 수 있는 보안 강화 절차가 설명되어 있습니다.
  
-   https://download.microsoft.com/download/c/e/c/cecc8742-2102-42d4-9fc7-6b641bebbf56/ISASecurityGuide.doc 링크를 통해 다운로드할 수 있는 [Microsoft Internet Security and Acceleration (ISA) Server 2004 Hardening Guide (영문)](https://download.microsoft.com/download/c/e/c/cecc8742-2102-42d4-9fc7-6b641bebbf56/isasecurityguide.doc)(Microsoft ISA(Internet Security and Acceleration) Server 2004 강화 설명서)에서는 도메인 구성원인지 여부에 관계없이 ISA Server 2004 컴퓨터를 강화하는 데 필요한 단계를 설명합니다.
  
-   www.microsoft.com/downloads/  
    details.aspx?FamilyID=4454e0e1-61fa-447a-bdcd-499f73a637d1의 "[Deploying Windows Firewall Settings for Microsoft Windows XP with Service Pack 2 (영문)](https://www.microsoft.com/download/details.aspx?familyid=4454e0e1-61fa-447a-bdcd-499f73a637d1&displaylang=en)"(Windows XP 서비스 팩 2용 Windows 방화벽 설정 배포) 백서에는 Windows 방화벽에 적합한 설정을 결정하기 위한 과정과 해당 설정을 배포하는 방법이 개략적으로 설명되어 있습니다.
  
[](#mainsection)[페이지 위쪽](#mainsection)
  
**다운로드**
  
[위협 및 대책 설명서 받기 (영문)](https://go.microsoft.com/fwlink/?linkid=15160)
  
**업데이트 알림**
  
[등록을 통한 업데이트 및 새 릴리스 확인 (영문)](https://go.microsoft.com/fwlink/?linkid=54982)
  
**사용자 의견**
  
[의견 또는 제안 보내기](mailto:secwish@microsoft.com?subject=threats%20and%20countermeasures%20guide)
  
[](#mainsection)[페이지 위쪽](#mainsection)