Windows가 Active Directory 및 로컬 SAM 데이터베이스에 암호의 LAN 관리자 해시를 저장하지 못하도록 방지하는 방법

이 문서에서는 Windows가 Active Directory 및 SAM(로컬 보안 계정 관리자) 데이터베이스에 암호의 LM(LAN Manager) 해시를 저장하지 못하도록 하는 세 가지 방법을 제공합니다.

적용 대상: Windows 10 - 모든 버전, Windows Server 2012 R2
원래 KB 번호: 299656

요약

Windows는 사용자 계정 암호를 지우기 텍스트로 저장하지 않습니다. 대신 해시라고 하는 두 개의 서로 다른 암호 표현을 사용하여 사용자 계정 암호를 생성하고 저장합니다. 사용자 계정의 암호를 15자 미만의 암호로 설정하거나 변경하면 Windows는 암호의 LM 해시와 Windows NT 해시(NT 해시)를 모두 생성합니다. 이러한 해시는 로컬 SAM 데이터베이스 또는 Active Directory에 저장됩니다.

LM 해시는 NT 해시에 비해 상대적으로 약하며 빠른 무차별 암호 대입 공격 경향이 있습니다. 따라서 Windows에서 암호의 LM 해시를 저장하지 못하도록 방지할 수 있습니다. 이 문서에서는 Windows에서 암호의 더 강력한 NT 해시만 저장하도록 하는 방법을 설명합니다.

추가 정보

Windows 2000 및 Windows Server 2003 서버는 이전 버전의 Windows를 실행하는 컴퓨터에서 연결하는 사용자를 인증할 수 있습니다. 그러나 Windows 2000 이전 버전의 Windows는 인증에 Kerberos를 사용하지 않습니다. 이전 버전과의 호환성을 위해 Windows 2000 및 Windows Server 2003은 다음을 지원합니다.

  • LM 인증
  • Windows NT(NTLM) 인증
  • NTLM 버전 2(NTLMv2) 인증

NTLM, NTLMv2 및 Kerberos는 모두 유니코드 해시라고도 하는 NT 해시를 사용합니다. LM 인증 프로토콜은 LM 해시를 사용합니다.

이전 버전과의 호환성을 위해 필요하지 않은 경우 LM 해시의 스토리지를 방지해야 합니다. 네트워크에 Windows 95, Windows 98 또는 Macintosh 클라이언트가 포함된 경우 도메인에 대한 LM 해시 스토리지를 방지할 때 다음과 같은 문제가 발생할 수 있습니다.

  • LM 해시가 없는 사용자는 서버 역할을 하는 Windows 95 또는 Windows 98 컴퓨터에 연결할 수 없습니다. 이 문제는 Windows 95 및 Windows 98용 디렉터리 서비스 클라이언트가 서버에 설치된 경우 발생하지 않습니다.
  • Windows 95 또는 Windows 98 컴퓨터의 사용자는 도메인 계정을 사용하여 서버에 인증할 수 없습니다. 사용자에게 디렉터리 서비스 클라이언트가 컴퓨터에 설치된 경우에는 이 문제가 발생하지 않습니다.
  • Windows 95 또는 Windows 98 컴퓨터의 사용자는 LM 해시를 사용하지 않도록 설정한 서버에서 로컬 계정을 사용하여 인증할 수 없습니다. 사용자에게 디렉터리 서비스 클라이언트가 컴퓨터에 설치된 경우에는 이 문제가 발생하지 않습니다.
  • 사용자는 Windows 95 또는 Windows 98 컴퓨터에서 도메인 암호를 변경할 수 없습니다. 또는 사용자가 이러한 이전 클라이언트에서 암호를 변경하려고 할 때 계정 잠금 문제가 발생할 수 있습니다.
  • Macintosh Outlook 2001 클라이언트의 사용자는 Microsoft Exchange 서버에서 사서함에 액세스할 수 없습니다. Outlook에서 사용자에게 다음 오류가 표시 될 수 있습니다.

    제공된 로그온 자격 증명이 잘못되었습니다. 사용자 이름과 도메인이 올바른지 확인한 다음 암호를 다시 입력합니다.

Windows에서 암호의 LM 해시를 저장하지 못하도록 하려면 다음 방법 중 일부를 사용합니다.

방법 1: 그룹 정책 사용하여 NoLMHash 정책 구현

Windows XP 또는 Windows Server 2003의 로컬 컴퓨터 SAM 데이터베이스에서 사용자 암호의 LM 해시 스토리지를 사용하지 않도록 설정하려면 로컬 그룹 정책 사용합니다. Windows Server 2003 Active Directory 환경에서 사용자 암호의 LM 해시 스토리지를 사용하지 않도록 설정하려면 Active Directory에서 그룹 정책 사용합니다. 다음 단계를 따릅니다.

  1. 그룹 정책 컴퓨터 구성>Windows 설정보안 설정>>로컬 정책을 확장한 다음 보안 옵션을 선택합니다.
  2. 사용 가능한 정책 목록에서 네트워크 보안을 두 번 클릭합니다 . 다음 암호 변경 시 LAN 관리자 해시 값을 저장하지 마세요.
  3. 사용 확인을> 선택합니다.

방법 2: 레지스트리를 편집하여 NoLMHash 정책 구현

Windows 2000 SP2(서비스 팩 2) 이상에서는 다음 절차 중 하나를 사용하여 Windows가 다음 암호 변경에 LM 해시 값을 저장하지 못하도록 합니다.

Windows 2000 SP2 이상

중요

이 절, 방법 또는 작업에는 레지스트리를 수정하는 방법에 대한 단계가 포함되어 있습니다. 그러나 레지스트리를 잘못 수정하면 심각한 문제가 발생할 수 있습니다. 따라서 다음 단계를 주의하여 수행해야 합니다. 추가된 보호를 위해 레지스트리를 수정하기 전에 백업하세요. 그런 다음 문제가 발생할 경우 레지스트리를 복원할 수 있습니다. Windows XP 및 Windows Server 2003에서 레지스트리를 백업, 편집 및 복원하는 방법에 대한 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료를 참조하세요.

322756 Windows에서 레지스트리를 백업 및 복원하는 방법

NoLMHash 레지스트리 키 및 해당 기능은 테스트되거나 문서화되지 않았으며 Windows 2000 SP2 이전의 프로덕션 환경에서 사용하기에 안전하지 않은 것으로 간주되어야 합니다.

레지스트리 편집기 사용하여 이 키를 추가하려면 다음 단계를 수행합니다.

  1. 레지스트리 편집기(Regedt32.exe)를 시작합니다.

  2. 다음 키를 찾아 선택합니다.

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa

  3. 편집 메뉴에서 키 추가를 클릭하고 를 입력NoLMHash한 다음 Enter 키를 누릅니다.

  4. 레지스트리 편집기를 종료하십시오.

  5. 컴퓨터를 다시 시작한 다음 암호를 변경하여 설정을 활성화합니다.

참고

  • Windows 2000 Active Directory 환경에서 사용자 암호의 LM 해시 스토리지를 사용하지 않도록 설정하려면 모든 Windows 2000 도메인 컨트롤러에서 이 레지스트리 키를 변경해야 합니다.
  • 이 레지스트리 키는 Windows 2000 컴퓨터에서 새 LM 해시가 만들어지는 것을 방지합니다. 그러나 저장된 이전 LM 해시의 기록은 지워지지 않습니다. 저장된 기존 LM 해시는 암호를 변경하면 제거됩니다.

Windows XP 및 Windows Server 2003

중요

이 절, 방법 또는 작업에는 레지스트리를 수정하는 방법에 대한 단계가 포함되어 있습니다. 그러나 레지스트리를 잘못 수정하면 심각한 문제가 발생할 수 있습니다. 따라서 다음 단계를 주의하여 수행해야 합니다. 추가된 보호를 위해 레지스트리를 수정하기 전에 백업하세요. 그런 다음 문제가 발생할 경우 레지스트리를 복원할 수 있습니다. Windows XP 및 Windows Server 2003에서 레지스트리를 백업, 편집 및 복원하는 방법에 대한 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료를 참조하세요.

322756 Windows에서 레지스트리를 백업 및 복원하는 방법

레지스트리 편집기 사용하여 이 DWORD 값을 추가하려면 다음 단계를 수행합니다.

  1. 실행 시작을> 선택하고 regedit를 입력한 다음 확인을 클릭합니다.

  2. 레지스트리에서 다음 키를 찾아 선택합니다.

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa

  3. 편집 메뉴에서 새로 만들기를 가리킨 다음 DWORD 값을 클릭합니다.

  4. NoLMHash을(를) 입력한 다음 Enter 키를 누릅니다.

  5. 편집 메뉴에서 수정을 선택합니다.

  6. 1을 입력한 다음 확인을 선택합니다.

  7. 컴퓨터를 다시 시작한 다음 암호를 변경합니다.

참고

  • Windows 2003 Active Directory 환경에서 사용자 암호의 LM 해시 스토리지를 사용하지 않도록 설정하려면 모든 Windows Server 2003 도메인 컨트롤러에서 이 레지스트리를 변경해야 합니다. 도메인 관리자인 경우 Active Directory 사용자 및 컴퓨터 MMC(Microsoft Management Console)를 사용하여 메서드 1(그룹 정책 사용하여 NoLMHash 정책 구현)에 설명된 대로 도메인의 모든 도메인 컨트롤러 또는 모든 컴퓨터에 이 정책을 배포할 수 있습니다.
  • 이 DWORD 값은 Windows XP 기반 컴퓨터 및 Windows Server 2003 기반 컴퓨터에서 새 LM 해시가 만들어지는 것을 방지합니다. 이러한 단계를 완료하면 이전의 모든 LM 해시 기록이 지워집니다.

중요

Windows 2000 및 Windows XP 또는 Windows Server 2003 모두에서 사용할 수 있는 사용자 지정 정책 템플릿을 만드는 경우 키와 값을 모두 만들 수 있습니다. 값은 키와 동일한 위치에 있으며 값 1은 LM 해시 생성을 사용하지 않도록 설정합니다. Windows 2000 시스템을 Windows Server 2003으로 업그레이드하면 키가 업그레이드됩니다. 그러나 두 설정이 모두 레지스트리에 있으면 괜찮습니다.

방법 3: 15자 이상의 암호 사용

가장 간단한 방법은 15자 이상의 암호를 사용하는 것입니다. 이 경우 Windows는 사용자를 인증하는 데 사용할 수 없는 LM 해시 값을 저장합니다.