다음을 통해 공유


관리자 계정 보안 계획 가이드

3장 - 관리자 계정 보안 강화 가이드

업데이트 날짜: 2005년 5월 25일

이 장에서는 관리자 계정 보안을 강화하기 위한 몇 가지 최선의 지침을 설명합니다. 이 지침은 2장 "관리자 계정 보안 강화 접근 방법"에 소개된 원칙을 따르고 있습니다.

관리자 계정 보안 강화 가이드 개요

Active Directory 디렉터리 서비스를 새로 설치할 때마다 각 도메인에 대한 Administrator 계정이 만들어집니다. 기본적으로 이 계정은 삭제하거나 잠글 수 없습니다. Microsoft Windows Server 2003에서는 Administrator 계정을 비활성화할 수 있지만 안전 모드로 컴퓨터를 시작하면 이 계정이 자동으로 다시 활성화됩니다.

컴퓨터를 해킹하려고 하는 악의적인 사용자는 일반적으로 제일 먼저 유효한 계정을 찾아내어 해당 계정의 사용 권한을 상승시키려고 합니다. 또한 암호 추측 기술을 사용하여 Administrator 계정의 암호를 알아내는 경우도 있습니다. 이 계정은 강력하며 잠글 수 없으므로 악의적인 사용자의 목표가 됩니다. 또한 관리자를 유인하여 침입자의 액세스를 허용하는 몇 가지 악성 코드를 실행하도록 할 수 있습니다.

도메인 관리자와 기업 관리자 역할 분리

기업 관리자 역할은 포리스트 환경에서 절대적인 권한을 가지므로, 두 가지 조치 중 하나를 취하여 해당 용도가 잘 통제되고 있는지 확인해야 합니다. 철저하게 보호된 단일 계정을 만들고 선택하여 Enterprise Admins 구성원이 되거나 해당 자격 증명으로 계정을 설정하지 않고 대신 해당 권한이 필요한 권한 있는 작업의 요청이 있을 때만 이러한 계정을 만들 수 있습니다. 계정에서 작업을 완료한 후 임시 Enterprise Admins 계정을 즉시 삭제해야 합니다.

사용자와 관리자 계정 분리

관리자 역할을 입력한 각 사용자를 위해 두 개의 계정을 만들어야 합니다. 전자 메일 및 기타 프로그램과 같은 일반적이고 일상적인 작업을 위한 일반 사용자 계정 한 개와 관리 작업만을 위한 관리 계정 한 개를 만듭니다. 이 관리자 계정으로 전자 메일을 사용해서는 안 되며 일반 프로그램을 실행하거나 인터넷을 검색할 경우 사용합니다. 각 계정에는 고유 암호가 있어야 합니다. 이러한 간단한 예방 조치로 외부 세계에 대한 계정 노출과 관리 계정이 컴퓨터나 도메인에 로그온된 상태로 있는 시간이 크게 줄어듭니다.

Secondary Logon 서비스 사용

Microsoft Windows 2000, Windows XP Professional 및 Windows Server 2003에서는 현재 로그온한 사용자와 다른 사용자로 프로그램을 실행할 수 있습니다. Windows 2000에서는 다음계정으로실행 서비스가 이런 기능을 제공하며, Windows XP 및 Windows Server 2003에서는 이를 Secondary Logon 서비스라고 합니다. 다음계정으로실행 및 Secondary Logon 서비스는 이름이 다른 동일한 서비스입니다.

Secondary logon은 관리자가 로그오프하지 않고 비관리 계정으로 컴퓨터에 로그온하고 관리자 컨텍스트에서 신뢰할 수 있는 프로그램을 실행하여 관리 작업을 수행할 수 있도록 허용합니다.

Secondary Logon 서비스는 악성 코드의 영향을 받을 수 있는 프로그램을 실행하는 관리자, 예를 들어 관리 권한으로 신뢰할 수 없는 웹 사이트에 액세스하여 로그온한 사용자가 제공한 보안 위험을 해결합니다.

Secondary Logon은 주로 시스템 관리자를 위한 것이지만, 여러 계정을 가지고 있거나 로그오프하지 않고 다른 계정 컨텍스트로 프로그램을 실행해야 하는 모든 사용자들이 사용할 수 있습니다.

Secondary Logon 서비스는 자동으로 실행되도록 설정되어 있고, 사용자 인터페이스로 다음계정으로실행 도구를 사용하며 해당 명령줄 인터페이스로 runas.exe를 사용합니다. 다음계정으로실행을 사용하여 프로그램(*.exe), 저장된 MMC(Microsoft Management Console) 콘솔(*.msc), 프로그램에 대한 바로 가기, 제어판 항목을 실행할 수 있습니다. 관리 권한이 없는 표준 사용자 계정으로 컴퓨터에 로그온한 경우에도 대화 상자가 나타날 때 적절한 관리자 계정과 암호 자격 증명을 제공하기만 하면 관리자 권한으로 이런 프로그램들을 실행할 수 있습니다.

다음계정으로실행을 사용하면 다른 도메인의 관리자 계정에 대한 자격 증명을 가지고 있는 경우 다른 도메인 또는 포리스트에 있는 서버를 관리할 수 있습니다.

참고: 바탕 화면의 프린터 폴더, 내 컴퓨터, 내 네트워크 환경은 다음계정으로실행을 사용하여 시작할 수 없습니다.

다음 계정으로 실행 사용

다음계정으로실행은 다음과 같이 다양한 방법으로 사용할 수 있습니다.

다음계정으로실행을사용하여도메인관리자계정자격증명을사용하는명령셸을시작하려면

  1. 시작, 실행을 차례로 클릭합니다.

  2. 실행 대화 상자에서, runas /user:<domain_name>\administrator cmd(여기에서 <domain_name>은 해당 도메인 이름)를 입력하고 확인을 클릭합니다.

  3. domain_name\administrator account에 대한 암호를 입력하라는 대화 상자가 나타나면, 관리자 계정 암호를 입력하고 ENTER 키를 누릅니다.

  4. 관리자 컨텍스트에서 실행되는 새 콘솔 창이 열립니다. 콘솔 제목은 자신을 domain_name**\administrator**로 실행중이라고 식별합니다.

Run as를사용하여제어판항목을실행하려면

  1. Windows XP 또는 Windows Server 2003에서 시작을 클릭하고 제어판을 클릭합니다.

  2. SHIFT 키를 누른 채 관리자 컨텍스트에서 실행하고 싶은 도구나 프로그램(예: 하드웨어추가)을 마우스 오른쪽 단추로 클릭합니다.

  3. 바로 가기 메뉴에서 다음계정으로실행을 클릭합니다.

  4. 다음계정으로실행 대화 상자에서 다음사용자를 클릭하고 다음과 같이 적절한 도메인 이름, 관리자 계정 이름 및 암호를 입력합니다.

    CORPDOMAIN\Administrator

    P@ssw0rd

  5. 확인을 클릭합니다. 해당 프로그램이 관리자 컨텍스트에서 실행됩니다.

다음계정으로실행을사용하여Active Directory사용자및컴퓨터와같은시작메뉴프로그램을열려면

  1. Windows Server 2003에서 시작을 클릭하고 관리도구를 가리킨 다음 Active Directory사용자및컴퓨터를 마우스 오른쪽 단추로 클릭합니다.

  2. 바로 가기 메뉴에서 다음계정으로실행을 클릭합니다.

또한 runas.exe 실행 명령줄 유틸리티를 사용하여 명령줄에서 프로그램을 실행하고 관리 콘솔을 시작할 수 있습니다.

로컬컴퓨터에서관리자권한으로명령프롬프트인스턴스를시작하려면

  1. 시작, 실행을 차례로 클릭합니다.

  2. 실행 대화 상자에 runas /user:<localcomputername>\administrator cmd 를 입력합니다.

  3. 확인을 클릭합니다.

  4. 대화 상자가 나타나면 명령 프롬프트 창에 관리자 암호를 입력하고 ENTER 키를 누릅니다.

corpdomain도메인의domainadmin이라는도메인관리자계정으로Computer Management스냅인의인스턴스를시작하려면

  1. 시작, 실행을 차례로 클릭합니다.

  2. 실행 대화 상자에 runas /user:<corpdomain>\<domainadmin> **"mmc %windir%\system32\compmgmt.msc"**를 입력합니다.?

  3. 확인을 클릭합니다.

  4. 대화 상자가 나타나면 명령 프롬프트 창에 계정 암호를 입력하고 ENTER 키를 누릅니다.

또한 runas.exe를 사용하여 스마트 카드 자격 증명이 있는 명령줄에서 프로그램을 실행하고 관리 콘솔을 시작할 수 있습니다.

스마트카드자격증명을사용하여로컬컴퓨터에서관리자권한으로명령프롬프트인스턴스를시작하려면

  1. 시작을 클릭한 다음 실행을 클릭합니다.

  2. 실행 대화 상자에 runas /smartcard /user:<localcomputername>\administrator cmd를 입력합니다.?

  3. 확인을 클릭합니다.

  4. 대화 상자가 나타나면 명령 프롬프트 창에 스마트 카드의 PIN 번호를 입력하고 ENTER 키를 누릅니다.

참고: 안전하지 않으므로 암호를 runas.exe에 대한 명령줄 매개 변수로 입력할 수 없습니다.

관리용으로 별도 Terminal Services 세션 실행

다음계정으로실행은 관리자가 로컬 컴퓨터를 변경하고 몇 가지 업무용 프로그램을 실행할 경우 사용하는 가장 일반적인 방법입니다. IT 기반 관리 작업의 경우 터미널 서비스를 사용하여 관리해야 하는 서버에 연결할 수 있습니다. 각 서버를 실제로 방문하지 않으면서 여러 원격 서버를 관리하는 것이 훨씬 쉬우며 이 접근 방법은 서버에 대한 대화형 로그온 권한의 필요성을 줄여 줍니다. 이 방법을 사용하려면 일반 사용자 계정 자격 증명으로 로그온한 다음 도메인 관리자로 터미널 서비스 세션을 실행합니다. 해당 세션 창 내에서만 도메인 관리 작업을 수행해야 합니다.

기본 Administrator 계정 이름 바꾸기

기본 Administrator 계정의 이름을 바꿀 경우 이 계정이 향상된 권한을 가지고 있다는 명백한 정보를 제거하게 됩니다. 공격자가 기본 Administrator 계정에 사용할 암호를 필요로 할지라도 이름이 변경된 기본 Administrator 계정에서 권한 상승 공격에 대해 보호 계층을 추가합니다. 다른 사용자 이름과 동일한 형식으로 가상의 이름과 성을 사용할 수 있습니다.

참고: 기본 관리자 계정의 이름을 바꾸면 특정 유형의 공격만 차단합니다. 이 계정의 보안 ID는 항상 동일하므로 공격자가 어느 계정이 기본 Administrator 계정인지 파악하는 것은 상대적으로 쉽습니다. 또한 도구를 사용하여 그룹 구성원을 열거하며 이는 항상 원래 관리자 계정 목록을 먼저 표시합니다. 기본 관리자 계정을 공격에서 보호할 수 있는 최선의 방법은 새로운 관리자 계정을 만들고 기본 계정을 사용하지 않는 것입니다.

도메인의기본Administrator계정이름을바꾸려면

  1. Domain Admins 그룹(기본 Administrator 계정 아님)의 구성원으로 로그온한 다음 Active Directory사용자및컴퓨터를 엽니다.

  2. 콘솔 트리에서 사용자를 클릭합니다.

  3. 세부 정보 창에서 Administrator를 마우스 오른쪽 단추로 클릭하고 이름바꾸기를 클릭합니다.

  4. 가상의 이름과 성을 입력한 다음 Enter 키를 누릅니다.

  5. 사용자이름바꾸기 대화 상자에서 가상의 계정 이름에 맞는 전체이름, 이름, , 표시이름, 사용자로그온이름사용자로그온이름(Windows 2000이전버전) 값을 변경한 다음 확인을 클릭합니다.

  6. 세부 정보 창에서 새 이름을 마우스 오른쪽 단추로 클릭한 다음 속성을 클릭합니다.

  7. 일반 탭을 클릭합니다. 설명 상자에서 컴퓨터/도메인을관리하도록기본제공된계정을 삭제한 후 다른 사용자 계정과 유사한 설명(많은 조직에서 이 값은 공백임)을 입력합니다.

  8. 확인을 클릭합니다.

기본로컬Administrator계정이름바꾸기

  1. 로컬 Administrators 그룹 구성원(기본 제공 Administrator 계정 아님)으로 로그온한 다음 컴퓨터관리 콘솔에서 로컬사용자및그룹 스냅인 도구를 엽니다.

  2. 콘솔 트리에서 로컬사용자및그룹을 확장한 다음 사용자를 클릭합니다.

  3. 세부 정보 창에서 Administrator를 마우스 오른쪽 단추로 클릭하고 이름바꾸기를 클릭합니다.

  4. 가상의 이름과 성을 입력한 다음 Enter 키를 누릅니다.

  5. 세부 정보 창에서 새 이름을 마우스 오른쪽 단추로 클릭한 다음 속성을 클릭합니다.

  6. 일반 탭을 클릭합니다. 전체이름 상자에 새로운 전체 이름을 입력합니다. 설명 상자에서 컴퓨터/도메인을관리하도록기본제공된계정을 삭제한 후 다른 사용자 계정과 유사한 설명(많은 조직에서 이 값은 공백임)을 입력합니다.

  7. 확인을 클릭합니다.

참고: 또한 다수의 컴퓨터에 있는 기본 Administrator 계정의 이름을 바꾸기 위해 사용할 수 있는 그룹 정책 개체(GPO) 설정이 있습니다. 그러나 이 설정을 사용하여 기본 설명을 수정할 수는 없습니다. 자세한 내용은 다음 방법을 참조하십시오. Rename the Administrator and Guest Account in Windows Server 2003 기술 자료 문서(https://support.microsoft.com/default.aspx?scid=kb;ko-kr;816109).

위장 Administrator 계정 만들기

위장 Administrator 계정을 만들면 보호 계층이 추가됩니다. Administrator 계정에 암호 공격을 계획한 공격자를 속여서 특별한 권한이 없는 계정을 공격하게 할 수 있으므로 공격자가 변경된 이름의 Administrator 계정을 발견할 가능성이 적습니다. 또한 이 위장 계정이 잠겨 있는지 확인하고 해당 계정에 대해 강력한 암호를 설정하여 공격자의 속도를 늦추는 것이 좋습니다. 위장 계정을 만든 후 해당 계정이 권한 있는 보안 그룹의 구성원이 아닌지 확인한 다음 로그온 실패와 같은 예기치 않은 활동을 위한 계정 사용을 모니터링해야 합니다. 자세한 내용은 Active Directory 관리 그룹 및 계정 보안 (영문)(www.microsoft.com/technet/security/topics/networksecurity/sec\_ad\_admin\_groups.mspx)을 참고하십시오.

도메인에위장Administrator계정을만들려면

  1. Domain Admins 그룹의 구성원으로 로그온한 다음 Active Directory사용자및컴퓨터를 엽니다.

  2. 사용자 컨테이너를 마우스 오른쪽 단추로 클릭하고 새로만들기를 가리킨 다음 사용자를 클릭합니다.

  3. 이름사용자로그온이름 상자에 Administrator를 입력한 다음 다음을 클릭합니다.

  4. 암호를 입력하고 확인합니다.

  5. 다음로그온할때반드시암호변경 확인란 선택을 취소하고 다음을 클릭합니다.

  6. 위장 계정 정보가 올바른지 확인한 다음 마침을 클릭합니다.

  7. 세부 정보 창에서 Administrator를 마우스 오른쪽 단추로 클릭한 후 속성을 클릭합니다.

  8. 일반 탭을 클릭합니다. 설명 상자에 컴퓨터/도메인을관리하도록기본제공된계정을 입력한 다음 확인을 클릭합니다.

위장로컬Administrator계정을만들려면

  1. 로컬 Administrators 그룹 구성원으로 로그온한 다음 컴퓨터관리 콘솔에서 로컬사용자및그룹 스냅인 도구를 엽니다.

  2. 콘솔 트리에서 로컬사용자및그룹을 확장합니다.

  3. 사용자 컨테이너를 마우스 오른쪽 단추로 클릭한 다음 새사용자를 클릭합니다.

  4. 사용자이름 상자에 Administrator를 입력합니다. 설명 상자에 컴퓨터/도메인을관리하도록기본제공된계정을 입력합니다.

  5. 암호를 입력하고 확인합니다.

  6. 다음로그온할때반드시암호변경 확인란 선택을 취소합니다.

  7. 만들기를 클릭합니다.

보조 Administrator 계정을 만들고 기본 제공된 계정을 사용 안 함

터미널 서비스를 사용하지 않거나 관리 권한이 없는 사용자가 서버에 액세스하도록 허용하는 경우에도 서버 관리를 위해 보조 관리자 계정으로 추가 사용자를 만드는 것이 좋습니다. 이 사용자를 Administrators 그룹의 구성원으로 만들어야 합니다. 보조 계정을 만든 후 기본 제공된 Administrator 계정은 사용하지 않도록 설정할 수 있습니다.

보조관리자계정을만들려면

  1. Administrator로 로그온한 다음 Active Directory사용자및컴퓨터를 엽니다.

  2. 사용자 컨테이너를 마우스 오른쪽 단추로 클릭하고 새로만들기를 가리킨 다음 사용자를 클릭합니다.

  3. 이름사용자로그온이름에 <사용자 이름>을 입력하고 다음을 클릭합니다.

  4. 강력한 암호를 입력하고 확인합니다.

  5. 다음로그온할때반드시암호변경 확인란 선택을 취소하고 다음을 클릭합니다.

  6. 계정 정보가 올바른지 확인한 다음 마침을 클릭합니다.

  7. 세부 정보 창에서 사용자 이름을 마우스 오른쪽 단추로 클릭한 다음 속성을 클릭합니다.

  8. 소속그룹 탭과 추가를 차례로 클릭하고 관리자를 입력하고 이름확인을 클릭한 다음 확인을 클릭합니다.

  9. 확인을 다시 클릭하여 속성 페이지를 닫습니다.

기본Administrator계정을사용하지않도록설정하려면

  1. 방금 만든 보조 관리자 계정으로 로그온한 다음 Active Directory사용자및컴퓨터를 엽니다.

  2. 사용자 컨테이너를 클릭하고 기본 Administrator 계정을 마우스 오른쪽 단추로 클릭한 다음 속성을 클릭합니다.

  3. 계정 탭을 클릭합니다.

  4. 계정옵션에서 아래로 스크롤한 다음 계정사용안함 확인란을 선택합니다.

  5. 확인을 클릭합니다.

경고: 기본 제공된 Administrator 계정을 사용하지 않는 경우 적절한 관리자 권한이 있는 또 다른 계정이 있는지 확인해야 합니다. 사용 가능한 또 다른 계정이 있는지 확인하지 않고 계정을 사용 안 함으로 설정하면 도메인의 관리 제어를 상실할 수 있으며, 이 경우 시스템 복원 또는 운영 재설치가 필요할 수 있습니다.

원격 Administrator 로그온을 위한 계정 잠금 사용

지정한 수 만큼 로그온 실패가 발생할 경우 계정 정책에 의해 관리자가 네트워크를 잠글 수 있도록 하는 것은 공격자가 기본 제공된 관리자 계정 및 암호 자격 증명을 사용하지 못하게 하는 한 방법입니다. 기본적으로 기본 제공된 관리자 계정은 잠글 수 없지만 Microsoft Windows 2000 Server Resource Kit의 명령줄 프로그램인 passprop.exe를 사용하여 관리자 계정을 사용하는 원격 로그온 계정을 잠글 수 있습니다. /ADMINLOCKOUT 스위치로 passprop 유틸리티를 실행할 경우 관리자 계정이 계정 잠금 정책의 적용을 받습니다. Windows 2000 Server에서는 원격 로그온에만 적용되며 기본 관리자 계정은 로컬 컴퓨터에서 잠글 수 없으므로 이 프로그램을 사용하여 네트워크를 통한 공격에서 관리자 계정을 보호하면서도 대화형 액세스를 허용할 수 있습니다.

경고: Windows Server 2003에서는 passprop을 사용하면 원격 로그온 뿐 아니라 대화형 로그온으로부터 기본 제공된 관리자 계정을 잠글 수 있습니다.

passprop으로 다음 계정 잠금 스위치를 사용할 수 있습니다.

passprop [/adminlockout] [/noadminlockout]

/adminlockout 스위치는 관리자를 잠긴 상태로 유지합니다.

/noadminlockout 스위치는 관리자 잠금을 제거합니다.

참고: 이 설정을 사용하면 계정 잠금이 설정되어 누구도 관리자 계정으로 원격 관리를 수행할 수 없습니다.

강력한 관리자 암호 만들기

기본 관리자 계정에 대해 강력한 암호를 사용합니다. 강력한 암호를 사용하면 공격자가 암호를 알아내어 관리자 계정 인증서를 확보하는 위험을 최소화할 수 있습니다. 강력한 관리자 계정 암호는

  • 15자 이상의 문자를 사용합니다.

  • 계정 이름, 실제 사용자 이름 또는 회사 이름을 포함하지 않습니다.

  • 어떤 언어든지 간에 사전에 나오는 단어, 은어 또는 전문 용어를 포함하지 않습니다.

  • 이전 암호와 완전히 달라야 합니다. Password1, Password2, Password3과 같이 일련 번호가 부여된 암호는 강력한 암호가 아닙니다.

  • 다음 표에 나열된 5개 그룹 중 최소 3개 문자를 사용합니다.

표3.1강력한관리자암호에사용하는문자유형

문자 유형
대문자 A, B, C ...
소문자 a, b, c ...
숫자 0, 1, 2, 3 ...
영숫자가 아닌 키보드 기호 ` ~ ! @ # $ % ^ & * ( ) _ + - = { } | [ ] \ : " ; ' < > ? , . /
유니코드 문자 €, G, ?, ?
##### 암호 대신 암호 문구 사용 어딘가에 적어둘 필요가 없는 강력한 암호를 만드는 가장 간단한 방법은 암호 문구를 사용하는 것입니다. 암호 문구란 "My son Aiden is three years older than my daughter Anna"와 같이 기억해낼 수 있는 문장을 말합니다. 이 문장에서 각 단어의 첫 글자를 사용한다면 상당히 강력한 암호를 만들어 낼 수 있습니다. 예를 들면 "msaityotmda"와 같이 말입니다. 하지만 이 암호에 대소문자 조합을 사용하고, 숫자 및 특수 기호 등을 끼워 넣으면 더욱 강력한 암호로 만들 수 있습니다. 예를 들어 위와 동일한 기억 가능한 문장을 사용하고 여기에 약간의 기술을 보탠다면 M$"8ni3y0tmd@와 같은 암호를 만들어 낼 수 있습니다. 암호 문구는 사전 공격에 취약하지만 대부분의 상용 암호 해독 소프트웨어는 14개 이상의 문자로 되어있는 암호는 검사하지 않습니다. 암호 문구가 길면 해독될 가능성이 낮아지며 기존의 강력한 암호보다 쉽게 기억할 수 있습니다. 또한 기억하기 쉽기 때문에 사용자가 암호를 적어둘 가능성도 낮아집니다. 강력한 암호 문구의 예는 다음과 같습니다. - I @te 4 tacos for lunch tod@y! - I re@lly want to buy 11 Dogs! 이 암호 문구는 20개 이상의 문자를 사용하였고 매우 긴 암호 문구이며 5개 그룹 중 4개 그룹의 문자를 포함하고 있습니다. 잘 알려진 문구는 아니지만 관련 없는 문자, 기호 및 문장 부호의 영숫자 조합으로 이루어진 아무 의미도 없는 15개 문자 암호보다 훨씬 쉽게 기억할 수 있습니다. ##### 암호를 비워 두거나 취약한 암호를 사용 안 함 일부 조직에서는 보안 위험이 발생할 수 있음에도 관리자 계정 암호를 비워 두거나 취약한 암호를 사용하고 있습니다. 이러한 암호를 사용하는 것이 네트워크 상의 보안을 취약하게 하는 가장 일반적인 경우이며 침입자에게 가장 쉬운 액세스 지점을 제공하는 것입니다. 암호를 비워 두거나 암호를 간단하게 설정하면 악의적인 사용자가 “Administrator”를 사용자 이름으로, 빈 값 또는 “administrator”를 암호로 가지는 기본 조합을 사용하여 액세스할 수 있습니다. 공백 암호 또는 취약한 암호는 암호 해독 시도에 쉽게 당할 수 있습니다. 사전의 모든 단어를 조직적으로 사용하여 해독을 시도하는 사전 공격이나 A-Z 및 0-9와 같은 일반적인 문자 목록의 선형 조합을 사용한 공격에 취약합니다. 강력한 암호를 사용한다고 해서 침입자가 네트워크에 액세스하는 것을 완전히 방지할 수는 없지만 뛰어난 제1차 방어선이 될 수 있습니다. ##### 강력한 암호 사용 네트워크 관리자는 조직에서 강력한 암호를 사용하는지 확인해야 합니다. Windows 2000 Server 및 Windows Server 2003의 경우 그룹 정책을 사용하여 강력한 암호를 설정할 수 있습니다. 강력하고 안전한 암호에 대한 자세한 내용은 [조직에 강력한 암호 사용 적용 (영문)](https://www.microsoft.com/smallbusiness/gtm/securityguidance/articles/enforce_strong_passwords.mspx) 백서(https://www.microsoft.com/smallbusiness/gtm/securityguidance/articles/enforce\_strong\_passwords.mspx) 및 [Selecting Secure Passwords (영문)](https://www.microsoft.com/smallbusiness/gtm/securityguidance/articles/select_sec_passwords.mspx) 백서(www.microsoft.com/smallbusiness/gtm/securityguidance/articles/select\_sec\_passwords.mspx)를 참조하십시오. ##### 주기적으로 관리자 암호 변경 권한이 있는 계정의 암호를 정기적으로 변경해야 합니다. 암호 변경 간격 주기는 손상된 계정이 조직에 미치는 영향에 따라 결정합니다. 영향을 판단하는 지침은 [SRMG(Security Risk Management Guide)](https://www.microsoft.com/korea/technet/security/guidance/secrisk/)(www.microsoft.com/korea/technet/security/guidance/secrisk/)를 참조하십시오. 로컬 관리자 계정의 암호를 주기적으로 변경해야 합니다. 서버 및 워크스테이션에서 Microsoft Windows 2000 Server Resource Kit에 포함되어 있는 **cusrmgr.exe** 도구를 사용하여 이 프로세스를 자동화할 수 있습니다. **cusrmgr.exe** 사용 방법에 대한 자세한 내용은 [How to Use the Cusrmgr.exe Tool to Change Administrator Account Password on Multiple Computers](https://support.microsoft.com/kb/272530) 기술 자료 문서(https://support.microsoft.com/kb/272530)를 참조하십시오. 또한 도메인 컨트롤러에서 DSRM(Directory Services Restore Mode) 관리자 암호를 정기적으로 변경해야 합니다. Windows 2000의 경우 **setpwd** 유틸리티를 사용하여 DSRM 암호를 다시 설정합니다. Windows Server 2003의 경우 **Ntdsutil** 도구에서 이 기능을 제공합니다. 이 도구 두 개 모두 원격으로 사용할 수 있습니다. #### 취약한 암호 검색 자동화 취약한 암호 및 공백 암호는 조직 네트워크의 전반적인 보안을 크게 손상시킬 수 있습니다. 조직은 공백 암호 및 취약한 암호를 검색하거나 테스트하는 소프트웨어를 만들거나 구매해야 합니다. 이러한 종류의 도구가 사용하는 두 가지 기본 접근 방식은 다음과 같습니다. - **온라인상에서일반적이고취약한암호를사용하여네트워크에로그온을여러차례시도하는경우검색.** MBSA(Microsoft Baseline Security Analyzer)가 이런 도구의 한 가지 예입니다. 온라인 방법은 사용자가 계정 잠금을 사용하는 경우 서비스 거부가 발생할 수 있으므로 권장하는 방법은 아닙니다. - **오프라인암호검색.** 일부 타사 오프라인 검색 도구는 관리자가 간단하거나 쉽게 추측할 수 있는 암호 사용으로 인한 보안 상의 취약점을 검사하고 해결하여 조직의 보안 위험을 줄일 수 있도록 합니다. 일반적으로 이러한 도구는 취약한 암호를 검색한 후, 암호 품질에 대한 점수 지정, 보고 및 해결 기능을 제공합니다. 취약한 암호를 테스트하는 데 이 방법을 권장합니다. 암호가 비어 있거나 취약한 암호를 사용하는 계정이 식별되면 조직에서 구축한 사고 대응 절차에 따라 사고 대응이 이루어져야 합니다. 사고 대응 절차의 예는 다음과 같습니다. - 자동 시스템에서 계정의 암호를 강력한 암호로 다시 설정합니다. - 자동 시스템에서 서버 소유자에게 암호 재설정을 요청하는 전자 메일을 보냅니다. 후자의 경우 서버가 취약한 기간이 길어질 수 있습니다. ##### MBSA(Microsoft Baseline Security Analyzer)를 사용하여 암호 검색 www.microsoft.com/korea/technet/security/tools/mbsahome.asp에서 [MBSA(Microsoft Baseline Security Analyzer)](https://www.microsoft.com/korea/technet/security/tools/mbsahome.asp) 도구를 사용하여 네트워크 상의 모든 컴퓨터를 검사하여 취약한 암호를 검색할 수 있습니다. 다른 보안 테스트 중에서도 MBSA는 모든 사용자 계정을 나열한 후 다음과 같은 취약점이 있는 암호를 확인합니다. - 빈 암호 - 사용자 계정 이름과 동일한 암호 - 컴퓨터 이름과 동일한 암호 - 단어 "password"를 사용하는 암호 - 단어 "admin" 또는 "administrator"를 사용하는 암호 이 검사를 통해 사용자에게 비활성화된 계정 또는 현재 잠겨 있는 계정을 알려줍니다. MBSA는 이 암호를 사용하여 대상 컴퓨터의 암호 변경을 시도합니다. MBSA는 암호를 다시 설정하거나 영구히 변경하지 않지만, 사용자에게 암호가 강력하지 않으며 보안 위험이 있다는 경고를 보냅니다. #### 신뢰할 수 있는 컴퓨터에서만 관리 자격 증명 사용 조직 관리자는 모든 권한이 부여되지 않은 컴퓨터에 관리 자격 증명을 사용하여 로그온하지 않아야 합니다. 컴퓨터에서 키 입력 로거 또는 스크린 스크래퍼를 실행하여 관리자의 암호 자격 증명을 캡처할 수도 있습니다. 키 입력 로거는 사용자 컴퓨터의 백그라운드에서 실행되는 자동 스파이웨어 프로그램입니다. 스파이웨어 프로그램은 컴퓨터 내에 키 입력 로거를 심어서 사용자의 동의 없이 또는 사용자가 모르게 모든 키 입력을 기록합니다. 그러면 이 정보는 이후 검색을 위해 저장되거나 키 입력 로거 작성자에게 전송되어 작성자가 이 정보를 검사할 수 있습니다. 키 입력 로거는 암호나 신용 카드 번호와 같은 개인 정보를 포함한 모든 키 입력을 기록할 수 있습니다. 또한 모든 작성된 전자 메일이나 온라인 채팅 세션도 기록할 수 있습니다. 스크린 스크래퍼는 컴퓨터 또는 프로그램에서 데이터로 전송하거나 프로그램에서 검사하는 용도가 아닌 디스플레이 콘텐츠를 검사하여 문자 기반 데이터를 수집합니다. 그런 다음 이러한 디스플레이 콘텐츠를 이해하기 쉬운 GUI(그래픽 사용자 인터페이스) 형식으로 표시합니다. 최신 스크린 스크래퍼는 HTML 형식으로 정보를 표시하므로 브라우저에서 정보에 액세스할 수 있습니다. #### 정기적으로 계정 및 암호에 대한 감사 실시 정기적으로 감사를 실시하여 도메인 보안의 무결성을 유지하고 권한 상승으로부터 보호할 수 있습니다. 권한 상승은 사용자 계정에 허가되지 않은 관리 권한을 부여합니다. 관리 기능을 보호하지 않으면 보안이 취약해지며 침입자가 보안 조치를 통과할 수 있습니다. 예를 들어 침입자는 관리 권한을 사용하여 가짜 사용자 계정을 만들고, 허가 없이 구성원 그룹에 계정을 추가하고, 기존 계정의 권한을 상승시키고, 정책을 추가하거나 수정하고, 보안 설정을 사용하지 않도록 지정할 수 있습니다. 중요한 서버 상의 모든 도메인 수준 관리 사용자 및 그룹 그리고 모든 로컬 관리 사용자 및 그룹을 정기적으로 감사해야 합니다. 관리자가 자신의 관리 계정에 대해 수정할 수는 있지만 수정 권한은 가지고 있지 않을 수 있으므로 조직은 이러한 계정이 도메인 수준 관리자 권한의 사용자에 대한 보안 정책을 준수하고 있는지 여부를 확인해야 합니다. 권한을 가진 자격 증명의 사용을 감사하는 것은 중요합니다. 감사는 단지 암호의 안전성을 확인하기 위한 것만이 아닙니다. 관리 계정에서 어떤 작업이 수행되었는지 알아볼 수 있는 유용한 도구이기도 합니다. 감사를 구성하여 사용할 수 있게 되면 이벤트 뷰어를 사용하여 보안 로그를 검토할 수 있습니다. 또한 정기적인 감사를 통해 사용하지 않는 도메인 수준 관리 계정을 검색합니다. 비활성화된 도메인 수준 관리 계정이 있으면 네트워크 환경이 취약해집니다. 특히 침입자가 사용자 모르게 네트워크 환경을 손상시킬 수 있습니다. 따라서 사용하지 않는 도메인 수준 관리자 계정 및 그룹은 제거해야 합니다. #### 계정 위임 금지 모든 도메인 수준 관리자 사용자 계정을 **계정이민감하여위임할수없음**으로 지정합니다. 이렇게 하면 **위임용으로신뢰할수있음**으로 표시된 서버에서 자격 증명이 위장되는 것을 방지할 수 있습니다. 인증 위임은 네트워크 서비스에서 사용자의 요청을 수락하고 사용자 ID가 두 번째 네트워크 서비스와 새 연결을 시작할 수 있다고 전제할 경우 발생합니다. 인증 위임은 여러 컴퓨터에서 Single Sign-On 기능을 사용하는 다계층 응용 프로그램에서 유용합니다. 예를 들어 도메인 컨트롤러는 자동으로 위임용으로 트러스트합니다. 파일 서버에서 EFS(파일 암호화 시스템)를 사용하면 사용자를 대신하여 암호화된 파일을 저장할 수 있도록 서버를 위임용으로 트러스트해야 합니다. 또한 인증 위임은 Microsoft Exchange Server의 Microsoft OWA(Outlook Web Access)와 같이 IIS(Internet Information Server)가 다른 컴퓨터에서 실행되는 데이터베이스에 대한 웹 인터페이스를 지원하는 프로그램 또는 서로 다른 웹 서버에서 페이지를 호스팅하는 경우 기업 인증 기관의 웹 등록 지원 페이지에서도 유용합니다. Active Directory의 컴퓨터 계정, 물리적으로 안전하지 않은 컴퓨터 그리고 도메인 관리자 계정에 대한 위임된 인증에 참가하기 위한 권한을 거부해야 합니다. 도메인 관리자 계정은 민감한 리소스에 대해 액세스 권한을 가지는데, 노출될 경우 조직에 심각한 위험을 초래합니다. 자세한 내용은 [Windows Server 2003 Deployment Kit (영문)](https://www.microsoft.com/technet/prodtechnol/windowsserver2003/library/depkit/c283b699-6124-4c3a-87ef-865443d7ea4b.mspx)에서 [Enabling Delegated Authentication (영문)](https://www.microsoft.com/resources/documentation/windowsserv/2003/all/deployguide/en-us/dsscc_aut_vwcs.asp) 항목(www.microsoft.com/resources/documentation/WindowsServ/2003/all/deployguide/en-us/dsscc\_aut\_vwcs.asp)을 참조하십시오. #### 관리 로그온 프로세스 통제 Administrators, Enterprise Admins 및 Domain Admins 그룹의 구성원은 포리스트 및 각 개별 도메인에서 가장 강력한 권한을 가진 계정을 나타냅니다. 보안 위험을 최소화하려면 이 가이드의 다음 섹션에서 설명된 절차를 수행하여 강력한 관리 자격 증명을 적용하십시오. ##### 관리자 로그온에 대해 스마트 카드 요구 도메인 관리자에게는 해당 관리 기능 전체에 대해 이중 인증을 요구해야 합니다. 이중 인증은 다음 두 부분을 포함합니다. - 사용자가 가진 물건(예: 스마트 카드) - 사용자가 아는 사실(예: 개인 ID 번호(PIN)) 이중 인증을 요구하면 공유, 절취 또는 복제된 단일 자격 증명(예: 사용자 이름 및 암호)을 사용하는 권한이 없는 액세스의 위험을 완화할 수 있습니다. 이중 인증은 도메인 컨트롤러 계정을 보호할 때 중요한 요소입니다. 일반적인 사용자 이름과 암호는 자연어 문자 집합으로 구성된 제한 없는 텍스트 자격 증명이기 때문입니다. 따라서 다음과 같은 경우에 악의적인 사용자가 절취, 공유 또는 복제할 수 있습니다. - 신뢰할 수 있는 사용자가 권한이 없는 사용자와 암호를 공유하거나 안전하지 않은 방법(예: 모니터 옆에 쪽지로 표시)으로 암호를 기록합니다. - 암호를 누구나 분명하게 볼 수 있는 텍스트 형식으로 전송합니다. - 로그온 도중 키보드에 입력하는 내용을 캡처하는 하드웨어 또는 소프트웨어 장치가 사용됩니다. 대화형 로그온에 스마트 카드를 사용하도록 관리자에게 요구하면 관리자 권한이 있는 사용자는 물리적으로 카드를 소유해야 하고 자신의 사용자 계정에 임의로 생성되고 암호화된 강력한 암호를 사용하게 됩니다. 이러한 강력한 암호는 취약한 암호가 도난되어 관리자용 액세스 권한이 부여되는 것을 막는 데 도움을 줍니다. 각 관리자 권한이 있는 사용자 계정에 대해 **사용자는스마트카드를사용하여로그온해야합니다.** 계정 옵션을 사용하여 스마트 카드의 사용을 강제할 수 있습니다. 스마트 카드 PIN은 각 카드 소유자가 카드에 설정하고 저장하는 암호화된 코드입니다. 개인 키를 사용 가능하게 하려면 스마트 카드를 사용하여 인증해야 하기 때문에 이 PIN은 강력한 조치입니다. 스마트 카드에 있는 개인 키는 고유하며 인증의 단일성을 보장합니다. 스마트 카드 인증은 도메인 관리자가 대화형 로그온을 사용할 때 특히 중요합니다. 여러 서버를 관리하며 각각에 인증이 필요한 도메인 관리자가 스마트 카드를 사용하면 매우 편리하며 유용합니다. 인증해야 하는 각각의 서버에 대해 별도의 암호를 설정하는 것보다 공통 PIN을 공유하는 고유 스마트 카드로 서버를 보호할 수 있습니다. **참고:** Windows 2000 Server는 원격 액세스에 스마트 카드의 사용을 지원합니다. 그러나 도메인 수준 계정에서 스마트 카드의 사용을 지원하려면 Windows Server 2003이 필요합니다. Secondary Logon 서비스 **runas** 명령과 스마트 카드 자격 증명을 사용하는 경우에도 Windows Server 2003이 필요합니다. 도메인 관리자에게 스마트 카드를 배포하고 이 가이드에서 설명하는 규칙과 방법을 적용하면 조직에서 네트워크 자산 보안을 상당히 강화하는 데 도움이 됩니다. 인증용 스마트 카드 사용에 대한 자세한 내용은 다음 자료를 참고하십시오. - Microsoft TechNet 웹 사이트의 [The Smart Card Deployment Cookbook (영문)](https://www.microsoft.com/technet/security/topics/identitymanagement/smrtcdcb/default.mspx)(https://www.microsoft.com/technet/security/topics/identitymanagement/smrtcdcb/default.mspx). - [Planning a Smart Card Deployment (영문)](https://www.microsoft.com/technet/prodtechnol/windowsserver2003/library/depkit/f65c054e-4cb3-4a6e-84f6-8a9787819df5.mspx)(www.microsoft.com/technet/prodtechnol/windowsserver2003/library/DepKit/f65c054e-4cb3-4a6e-84f6-8a9787819df5.mspx). ##### 민감한 관리자 계정에 대한 로그온 자격 증명 공유 민감하다고 간주하는 각 계정(예: 포리스트 루트 도메인의 Enterprise Admins 또는 Domain Admins 그룹 구성원)에 대해 계정을 공유하는 사용자 2명을 할당하여 모두 해당 계정으로 성공적으로 로그온하도록 하십시오. 이러한 계정을 공유하면 다음과 같이 시각적 감사를 제공할 수 있습니다. 한 사용자는 다른 사용자가 수행하는 작업을 관찰할 수 있습니다. 또한 개인적으로 로그온한 단일 사용자가 관리자로 컴퓨터에 액세스하여 무단으로 또는 강요된 상황에서 보안을 침해하는 것을 막을 수 있습니다. 분할 암호 또는 스마트 카드와 PIN을 사용하는 공유 관리자 계정을 구현할 수 있습니다. 관리자 계정에 암호 기반 자격 증명을 사용하는 경우 각 사용자가 암호의 절반만 알 수 있도록 계정을 공유하는 두 사용자의 암호를 분할하십시오. 각 사용자는 자신이 가진 암호의 절반에 대해 관리할 책임이 있습니다. 예를 들어 Admin1이라는 관리자 계정을 만들어 Jane과 Bob이라는 신뢰할 수 있는 사용자에게 할당하고 이 계정을 공유합니다. 각 사용자는 암호의 절반만 관리합니다. 둘 중 한 사용자가 로그온하여 계정을 사용하려면 다른 사용자가 암호의 나머지 절반을 입력해야 합니다. 공유 암호 계정 옵션의 단점은 감사를 통한 신뢰성 부재입니다. 조직에서는 감시 카메라와 같은 다른 통제 수단을 준비하여 이러한 공유 사용 권한을 남용하지 않도록 사용자를 관리해야 합니다. 관리자 권한에 대해 스마트 카드 기반 자격 증명을 사용하는 경우 계정을 공유하는 두 사용자 간에 스마트 카드의 소유권과 해당 PIN을 분할하십시오. 이렇게 하면 한 사용자는 스마트 카드의 물리적 소유권을 다른 사용자는 PIN을 보유하게 됩니다. 계정에 로그온하려면 두 사용자가 모두 입회해야 합니다. ##### 도메인 관리자의 로그온 방법 및 장소 제한 조직은 도메인 수준 관리자의 로그온 방법과 장소를 제한해야 합니다. 관리자의 작업 또는 역할에 의해 필요한 경우 관리자는 사용 권한이 있는 도메인 컨트롤러에 대화형으로 로그온할 수 있으나, 이런 경우에는 이중 인증을 요구해야 합니다. 다음과 같은 경우에 도메인 관리자의 사용을 특히 금지해야 하는 모든 컴퓨터에서 도메인 관리자의 로그온을 금지해야 합니다. - 대화형 로그온 사용 시 - 원격 데스크톱 사용 시 - 서비스로 로그온 시 - 일괄 작업으로 로그온 시 [](#mainsection)[페이지 위쪽](#mainsection) ##### 다운로드 [![](images/Dd547868.icon_exe(ko-kr,TechNet.10).gif)](https://go.microsoft.com/fwlink/?linkid=41316)[보안 모니터링 및 공격 탐지 계획 가이드 (영문)](https://go.microsoft.com/fwlink/?linkid=41316) [](#mainsection)[페이지 위쪽](#mainsection)