DetailPage-MSS-KB

기술 자료

기술 자료: 103390 - 마지막 검토: 2014년 3월 15일 토요일 - 수정: 2.0

 

이 페이지에서

다음 Windows 계정 유효성 검사 관찰 하는 방법에 대해 설명 하는 간단한 알고리즘입니다 NTLM 프로토콜을 사용 하 여 네트워크 액세스 중에 함수에. 예로, 서버 메시지 블록 (SMB) 프로토콜을 통한 액세스를 사용 하지만 NTLM 인증을 지 원하는 다른 모든 서버 응용에 적용 됩니다. 이 토론이이 프로세스의 내부 작업을 다루지 않습니다. 이 정보를 통해 명확한 조건에서 Windows 네트워크 로그온 동작을 예측할 수 있습니다.
Kerberos 사용자를 인증 하 고 서버 리소스에 액세스 하는, 과정이 매우 다른 NTLM 수행 하는 작업. 자세한 내용은 다음 Microsoft TechNet 웹 사이트를 방문 하십시오.
http://technet2.microsoft.com/WindowsServer/en/Library/f5c70774-25cd-4481-8b7a-3d65c86e69b11033.mspx (http://technet2.microsoft.com/WindowsServer/en/Library/f5c70774-25cd-4481-8b7a-3d65c86e69b11033.mspx)
로컬 데이터베이스 도메인 데이터베이스 및 도메인 컨트롤러의 유일한 데이터베이스가 임을 기억 하십시오. 그러나 다른 서버 및 모든 컴퓨터에서 도메인 컨트롤러에서 로컬 데이터베이스 다릅니다.

배경 정보

두 Windows Server 2003 기반, Windows XP 기반 또는 Windows 2000 기반 컴퓨터는 네트워크를 통해 통신, 서버 메시지 블록 (SMB) 라는 높은 수준의 프로토콜을 사용 합니다. SMB 명령 전송 프로토콜 TCP/IP 또는 NetBIOS 향상 된 사용자 인터페이스 (NetBEUI) 등에 포함 됩니다. 예를 들어, NET USE 명령을 수행 하는 클라이언트 컴퓨터에 "SMB 세션 설정 및 X" 프레임에 전송 됩니다.

Windows의 "세션 설정" SMB 사용자 계정, 해시 함수 암호화 된 암호 및 로그온 도메인을 포함합니다. 도메인 컨트롤러가 클라이언트 NET USE 명령을 완료할 수 있는 권한이 있는지 여부를 확인 하려면이 정보를 모두 검사 합니다.

알고리즘

Windows 클라이언트 컴퓨터가 서버에 다음 명령을 보냅니다.
   NET USE x: \\server\share
		
Windows 클라이언트 컴퓨터가 로그인 도메인, 사용자 계정 및 암호는 포함 된 "세션 설정" SMB 보냅니다.

서버를 도메인 이름 또는 SMB에 의해 지정 된 컴퓨터 이름을 검사 합니다. 이름은 서버의 이름, 다음 알고리즘이 실행 됩니다.
    It checks its own domain database or computer database for
        a matching account.
    If it finds a matching account then
        The SMB password is compared to the domain database password or the computer database password.
        If  the password matches then
            The command completed successfully.
        If  the password does NOT match then
            The user is prompted for a password.
                The password is retested as above.
            System error 1326 has occurred. Logon failure: unknown
            user name or bad password.
        End
    If  it does NOT find the account in the domain Security Accounts Manager (SAM) database or computer SAM database then
        Guest permissions are tested.
        If  the guest account is enabled
            The command completed successfully.
        If  the guest account is disabled
            (* See Note a).
            The user is prompted for a password.
            System error 1326 has occurred. Logon failure:
                unknown user name or bad password.
        End
		
SMB에 지정 된 도메인 서버를 신뢰 하는 경우 다음 알고리즘이 실행 됩니다.
    The server will do pass-through authentication. The
        network logon request will be sent to a server that has a domain controller role in the
        specified trusted domain.
		
보안 채널 설정 되지 않은 경우 다음 알고리즘이 실행 됩니다.
The trusted domain controller checks its own domain database
        for a matching account.
    If the trusted domain controller finds a matching account, then
       NOT for Windows 2000 and later versions:
    It determines whether the account is a local or global account.
       If the account is local, then
           Guest permissions on the original server are tested.
           If the guest account is enabled
               The command completed successfully.
           If the guest account is disabled
               (* See Note a) The user is prompted for a password.
               System error 1326 has occurred. Logon failure:
               unknown user name or bad password.
        End
        If the account is global (the only option for Active Directory)
           The SMB password is compared to the domain database
               password.
           If  the password matches, then
               The command completed successfully.
               (* See Note b)
           If  the password does NOT match, then
               The user is prompted for a password.
                   The password is retested as above.
               System error 1326 has occurred. Logon failure:
               unknown user name or bad password.
       End
    If the trusted domain controller does NOT find the account in the trusted domain controller
           database, then
       Guest permissions are tested on the original server, not the trusted domain.  (* See Note c)
       If  the guest account is enabled
           The user will have original server guest access.
           The command completed successfully.
       If  the guest account is disabled
           (* See Note a) The user is prompted for a password.
           System error 1326 has occurred. Logon failure:
           unknown user name or bad password.
    End

중요 한

다음과 같은 경우에 클라이언트 서버에 있거나 알고 있는 것과 다른 사용자 도메인을 사용 하는 시나리오를 설명 합니다. NTLMv2 인증 프로토콜을 협상 하는 경우이 불일치 문제가 있습니다. NTLM v 2에 사용 하는 암호, 솔트 및 사용자 도메인 클라이언트가이 솔트에 사용 됩니다.

서버 정보를 얻고 로컬 데이터베이스에서 사용자를 찾은 경우 서버 로컬 데이터베이스 이름을 솔트 및 해시를 계산 하기 위해 사용 합니다. 따라서 "원본 도메인"으로 클라이언트에서 비어 있거나 알 수 없는 도메인에 있는 경우 솔트와 암호 해시 와 일치 하지 것입니다. 이러한 경우에 인증 시도가 실패 합니다 있는 "알 수 없는 사용자 이름 이거나 암호가 틀립니다" 오류 (STATUS_LOGON_FAILURE). "잘못 된 암호를" 기호 STATUS_WRONG_PASSWORD 시도 대 한 감사 이벤트를 보고 합니다.

샘플 이벤트.
로그 이름: 보안
원본: Microsoft Windows-보안-감사
이벤트 ID: 4625
작업 범주: 로그온
수준: 정보
키워드: 감사 실패
서버-computer1 컴퓨터:
설명:
계정에 로그온 하지 못했습니다.

제목:

NULL SID 보안 ID:
계정 이름:-
도메인 계정:-
로그온 ID: 0x0

로그온 형식: 3

로그온 실패에 대 한 계정:

NULL SID 보안 ID:
계정 이름: ntadmin
계정 도메인: 클라이언트 computer1

오류 정보:

실패 원인: 알 수 없는 사용자 이름 이거나 암호가 틀립니다.
상태: 0xc000006d
하위 상태: 0xc000006a
...

자세한 인증 정보:

로그온 프로세스: NtLmSsp
인증 패키지: NTLM
전송 된 서비스:-
패키지 이름 (NTLM만):-
키 길이: 0

이 시나리오를 방지 하기 위해 클라이언트에서 명시적으로 올바른 도메인 이름을 포함 해야 합니다. 드라이브 매핑 작업 그룹 시나리오에 대 한 다음 것입니다.
Net를 사용 하 여 x: \\server-computer1\data /u:server-computer1\ntadmin *
SMB에 지정 된 도메인 서버에서 알 수 없는 경우-예를 들어, 도메인을 지정 했지만 하지 인식 서버에 의해 트러스트 된 도메인 또는 도메인 컨트롤러는 다음 알고리즘을 실행:
    It  will check its own account database for
        a matching account
    If  the server finds a matching account, then
        The SMB password is compared to the domain database password or the computer database password.
        If  the password matches, then
            The command completed successfully.
        If  the password does NOT match, then
            The user is prompted for a password.
                The password is retested as above.
            System error 1326 has occurred. Logon failure: unknown
            user name or bad password.
    End
    If  it does NOT find the account in the domain database then
        guest permissions are tested.
        If  the guest account is enabled
            The command completed successfully.
        If  the guest account is disabled
            System error 1326 has occurred. Logon failure:
            unknown user name or bad password.
    End
		
SMB에 지정 된 도메인이 NULL, 즉, 도메인이 지정, 다음 알고리즘을 실행:
    The server will treat this as a local network logon. The server
        will test for a matching account in its own database.
    If  it finds a matching account, then
        The SMB password is compared to the SAM database password.
        If  the password matches, then
            The command completed successfully.
        If  the password does NOT match, then
            The user is prompted for a password.
                The password is retested as above.
            System error 1326 has occurred. Logon failure: unknown
            user name or bad password.
    End
    If  it does NOT find the account in the local SAM database AND
      LsaLookupRestrictIsolatedNameLevel=0, then (* See Note d)
        The server will simultaneously ask each domain that it trusts whether it has account that
            matches the SMB account.
        The first trusted domain to reply is sent a request to
            perform pass-through authentication of the client
            information.
        The trusted domain will look in its own database.
        If  an account that matches the SMB account is found, then
            The trusted domain determines whether the account is a local or global
                account.
           Not for Windows 2000 and later versions:
            If  the account is local then
                Guest permissions on the original server are tested.
                If  the guest account is enabled
                    The command completed successfully.
                If  the guest account is disabled
                The user will be prompted for a password.
                Regardless of what password is entered, the user will receive
                    "Error 5: Access has been denied."
            End
            If  the account is global (the only option for Active Directory)
                The password that was specified in the SMB is compared
                    to the SAM database password.
                If  the password matches, then
                    The command completed successfully.
                If  the password does NOT match, then
                    The user is prompted for a password.
                        The password is retested as above.
                    System error 1326 has occurred. Logon failure:
                    unknown user name or bad password.
            End
    If  no trusted domains respond to the request to identify the
        account, then
        Guest permissions are tested on the original server,
            not the trusted server.
        If  the guest account is enabled
            The command completed successfully.
        If  the guest account is disabled
            System error 1326 has occurred. Logon failure:
            unknown user name or bad password.
    End
		

노트

  1. 게스트 계정을 사용 하지 않으면 사용자가 havean 계정이 아닌 경우 서버는 암호를 계속 요청 합니다. 있지만 없는 암호 willmeet 요구 사항 서버는 securitymeasure로 암호를 계속 요청 합니다. 이 보안 조치는 계정이 고 계정 doesnot 존재 하는 경우 권한이 없는 사용자 tellthe 경우 차이 없습니다 산정 합니다. 사용자 계정이 암호 없이 ofwhether 항상 입력 해야 합니다.
  2. 응답에서 트러스트 된 도메인에서 다음 정보를 반환 하는 시점에서: 도메인 SID, 사용자 ID, 글로벌 GroupsMemberships, 로그온 시간, 로그 오프 시간, KickOffTime, 전체 이름, 암호 LastSet, 암호 변경 플래그 수, 암호 해야 변경 플래그, 사용자 스크립트, 프로필 경로, 홈 디렉터리 및 잘못 된 암호 카운트 합니다.
  3. 트러스트 된 도메인 계정이 없는 발견 되 면 운영 체제 로컬 guest 계정 서버에 대해 일관성 있는 behaviorfor 인증을 보장 하기 위해 사용 해야 합니다.
  4. LsaLookupRestrictIsolatedNameLevel 레지스트리 항목을 사용 하 여 외부 트러스트 된 도메인의 격리 된 이름 조회 제한 하는 방법에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.
    818024  (http://support.microsoft.com/kb/818024/ ) LsaLookupRestrictIsolatedNameLevel 레지스트리 항목을 사용 하 여 외부 트러스트 된 도메인의 격리 된 이름 조회 제한 하는 방법
  • 트러스트 된 도메인의 게스트 계정을 beavailable는 하지 않습니다.
  • 실제, 내부 프로세스는 여기서 설명 하는 thealgorithms 보다 복잡 합니다.
  • 이러한 알고리즘 ofpass 통과 인증 실제 메커니즘을 설명 하지 않는. 자세한 내용을 보시려면, Microsoft 기술 자료의 다음 문서 번호를 클릭해 주십시오.
    102716  (http://support.microsoft.com/kb/102716/ ) Windows에서 NTLM 사용자 인증
  • 이러한 알고리즘 Windows Server 2003, Windows XP 및 Windows 2000에서 사용 되는 암호 encryptionprocess를 다루지 않습니다. Aone 방식으로 암호 해시에서 파생 된 이진 대형 개체 (BLOB) 인증 요청의 일부로 전송 됩니다. 이 BLOB의 Thecontent thelogon 위해 선택한 인증 프로토콜에 따라 달라 집니다.
  • TheMicrosoft 인증 모듈의 내부 작업은 다루지 않습니다.
  • 이러한 알고리즘은 whenenabled, 게스트 계정에 암호가 없는 가정 합니다. 기본적으로 guest 계정이 없는 Windows Server 2003, Windows XP 및 Windows 2000에서 apassword. Guestaccount 암호를 지정 하면 해당 게스트 SMB mustmatch에 보낸 사용자 암호를 계정 암호입니다.

예제

작업에서이 알고리즘의 예는 다음과 같습니다.

예제 1

동일한 계정 이름과 새로 도메인 도메인 계정 데이터베이스에 암호를 사용 하 여 컴퓨터에 로그온 됩니다. 처음 도메인의 도메인 컨트롤러에 대 한 NET USE \\SCRATCH 명령을 실행 하면 명령이 성공적으로 완료 됩니다. 처음 도메인을 트러스트 하는 도메인 컨트롤러에 대 한 \\NET NET USE 명령을 실행 하면, 다음과 같은 오류 메시지가 나타납니다.
1326 시스템 오류가 발생 했습니다. 로그온 실패: 알 수 없는 사용자 이름 이거나 암호가 틀립니다.
\\NET에서 \SCRATCH-DOMAIN\USER1 계정 권한이 있습니다.

참고 이 다음과 같은 구성을 가정합니다.

구성

로컬 보안 기관 컴퓨터:
  -Login account: USER1
  -Password:      PSW1
  -Login Domain:  LOCAL1
		
Active Directory 도메인 컨트롤러:
  -Server Name: NET</WWITEM>
  -Domain:      NET-DOMAIN</WWITEM>
  -Trust:       NET-DOMAIN Trust SCRATCH-DOMAIN (Therefore,
                accounts on SCRATCH-DOMAIN can be granted permissions 
                in the NET- DOMAIN).
		
NET 도메인 도메인:
  • 도메인 계정 데이터베이스 NET 도메인 도메인 doesnot에 USER1에 대 한 계정을 포함 합니다.
  • Guest 계정이 비활성화 됩니다.
Windows Server 2003:
  -Server Name:                       SCRATCH
  -Domain:                            SCRATCH-DOMAIN
  -Domain Database contains account:  USER1
  -Domain Database contains password: PSW1
		
이 예제는 로컬 컴퓨터의 도메인 계정이 있는 도메인 처음 도메인이 아닌 도메인에 컴퓨터에 기록 됩니다.

예제 2

NET USE x: \\NET\share 명령을 실행 하면 다음 단계가 수행 됩니다.
  1. Thecomputer에서 "세션 설정" SMB 다음 보냅니다.
    계정을 "USER1" =
    암호 = "PSW1"
    도메인 = "LOCAL1"
  2. \\NET 서버는 SMB 받아서 accountname의 고찰.
  3. 서버는 로컬 도메인 계정 데이터베이스 anddoes 없습니다 찾을 일치 하는 검사합니다.
  4. 서버는 다음 SMB 도메인 이름을 검사합니다.
  5. 서버가 트러스트 된 도메인의 notcheck가 있으므로 서버 "LOCAL1,"를 신뢰 하지 않습니다.
  6. 서버는 게스트 계정을 확인합니다.
  7. 게스트 계정을 사용할 수 있도록 "시스템 오류 1326 hasoccurred. 로그온 실패: 알 수 없는 사용자 이름 또는 잘못 된 암호입니다. "오류 메시지 isgenerated.

예제 3

NET USE x: \\SCRATCH\share명령을 실행 하면 다음 단계가 수행 됩니다.
  1. Thecomputer에서 "세션 설정" SMB 다음 보냅니다.
    계정을 "USER1" =
    암호 = "PSW1"
    도메인 = "LOCAL1"
  2. \\SCRATCH 서버는 SMB 받아서 theaccount 이름 검사.
  3. 서버에서는 해당 로컬 도메인 계정 데이터베이스에 일치 하는 andfinds를 검사합니다.
  4. 서버는 domainaccount 암호 SMB 암호를 비교합니다.
  5. 암호가 일치 합니다. 따라서 "명령 CompletesSuccessfully" 메시지가 생성 됩니다.
예제 2 및 예제 3 트러스트 관계를 사용할 수 없습니다. 컴퓨터는 처음 도메인에 로그온 NET USE x: \\NET\share 명령이 성공한 것입니다.

도메인에 로그온 할 모든 컴퓨터 로그에 이상적인 솔루션이입니다. 로그온 하려면 사용자 도메인, 계정 및 암호를 지정 해야 합니다. 이렇게 후 모든 NET USE-형식 명령 올바른 도메인, 계정 및 암호 정보를 전달 합니다. 관리자는 컴퓨터와 여러 도메인을 중복 계정을 않도록 하십시오. Windows 2000 기반 컴퓨터와 Windows Server 2003 기반, Windows XP 기반 도메인 간의 트러스트 관계를 사용 하 여 한 도메인 데이터베이스를 사용할 수 있는 멤버를 사용 하 여이 구성을 방지 도움말.

해결 방법

이러한 경우에 사용할 수 있는 한 가지 해결 방법은 있습니다. 컴퓨터에서 다음 명령을 실행할 수 있습니다.
NET USE X: \\NET\SHARE /USER:SCRATCH-DOMAIN\USER1 PSW1
이 명령은 다음 참일:
  - \\NET = The computer name of the domain controller being accessed.
  - \SHARE = The share name.
  - /USER: command line parameter that lets you specify the domain,
    account and password that should be specified in the "Session Setup"
    SMB.
  - SCRATCH-DOMAIN = Domain name of the domain where the user
    account resides.
  - \USER1 = account to be validated against.
  - PSW1 = password that matches account on the domain.
		
이 명령에 대 한 자세한 내용은 명령 프롬프트에서 다음을 입력 합니다.
NET USE /?

NULL 도메인 이름

Windows Server 2003, Windows XP 및 Windows 2000에 포함 된 SMB 클라이언트는 세션 설치 SMB [x 73]에서 NULL 도메인 이름을 보내는 SMB. SMB 클라이언트 로그온 도메인 이름을 지정 하 고 NET USE 명령에 도메인 이름을 지정 하지 않으면 NULL 문자를 보내는 도메인 이름을 처리 합니다. SMB 클라이언트 예제 1에서 설명한 문제를 현상도 있습니다.

노트

  • LANMAN에 기본 도메인 이름이 지정 됩니다.INI fileon는 "도메인 =" 줄. 에 의해 재정의 될 수 있습니다이 /DOMAIN:NET 로그온 명령을 사용 하 여 전환.
  • 일반적으로 "NULL"에 대 한 두 가지 표현에에서 있는 theSMB: thequestion로 구성 된 1 바이트 도메인 이름 및 빈 도메인 이름 (?) 문자를 표시 합니다. SMB 서버 물음표를 포착 하 고 itto NULL 로컬 보안 기관 (LSA)로 전달 하기 전에 변환 합니다.

문제 해결

네트워크 액세스 문제를 해결 하는 데 유용한 팁 다음과 같이 감사를 활성화 하는 것입니다.

Windows 2000 및 이후 버전의 Windows 2000 기반 도메인 컨트롤러

  1. StartActive Directory 사용자 및 컴퓨터를 도메인 컨트롤러에 관리 도구입니다.
  2. Andthen은 도메인 컨트롤러 OU마우스 오른쪽 단추로, 속성을 클릭 합니다.
  3. 그룹 정책 탭에서기본 도메인 컨트롤러 정책을 두 번 클릭 합니다.
  4. 정책 편집기에서 시스템 설정, Windows설정,보안 설정, 로컬 정책클릭 andthen 감사 정책을 클릭 합니다.
  5. 로그온 및 계정 로그온 성공옵션과 실패 옵션을 선택 합니다.

Windows 2000 서버 및 구성원에 대해 도메인 설정

  1. StartActive Directory 사용자 및 컴퓨터를 도메인 컨트롤러에 관리 도구입니다.
  2. 도메인 이름을 마우스 오른쪽 단추로 클릭 한 다음속성을 클릭 합니다.
  3. 그룹 정책 탭에서기본 도메인 정책을두 번 클릭 합니다.
  4. 정책 편집기에서 시스템 설정, Windows 설정,보안 설정, 로컬 정책클릭 andthen 감사 정책을 클릭 합니다.
  5. 로그온 및 계정 로그온 성공옵션과 실패 옵션을 선택 합니다.

Windows 2000 서버 및 멤버에 대 한 로컬 설정

  1. 관리 도구에서 로컬 SecurityPolicy 시작 합니다.
  2. 감사 정책을 엽니다.
  3. 로그온 및 계정 로그온 성공옵션과 실패 옵션을 선택 합니다.
이제 네트워크 사용자이 서버를 원격으로 액세스할 때마다 감사 내역이 기록 됩니다 이벤트 뷰어에서. 이벤트 뷰어에서 이러한 이벤트를 보려면 로그 메뉴에서 보안 을 클릭 합니다.

트러스트 관계, 통과 인증, 사용자 권한 및 도메인 로그인에 대 한 자세한 내용은 "기술 개요 Windows Server 2003 보안 서비스의."를 참조 하십시오. 이렇게 하려면, 다음 Microsoft 웹 사이트를 방문하십시오.
http://www.microsoft.com/windowsserver2003/techinfo/overview/security.mspx (http://www.microsoft.com/windowsserver2003/techinfo/overview/security.mspx)

추가 정보

기본적으로, 알고리즘은 네트워크 액세스 유효성 Windows Server 2008, Windows Server 2008 R2, Windows Server 2012, R2 Windows Server 2012에 적용 됩니다.

이러한 운영 체제 SMB에서 여러 가지 새로운 기능이 추가 되었습니다.

Windows Server 2008

http://technet.microsoft.com/en-us/library/ff625695 (v=ws.10).aspx (http://technet.microsoft.com/en-us/library/ff625695(v=ws.10).aspx)

http://technet.microsoft.com/en-us/library/cc770740 (v=ws.10).aspx (http://technet.microsoft.com/en-us/library/cc770740(v=ws.10).aspx)


Windows Server 2012

http://technet.microsoft.com/en-us/library/hh831795.aspx (http://technet.microsoft.com/en-us/library/hh831795.aspx)

본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Web Edition
  • Microsoft Windows XP Professional
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
키워드: 
kbnetwork kbmt KB103390 KbMtko
기계 번역된 문서기계 번역된 문서
이 문서는 Microsoft 기계 번역 소프트웨어를 이용하여 번역되었으며 Microsoft Community에 의한 Community Translation Framework(CTF) 기술 혹은 사람이 번역한 내용에 의하여 사후 편집될 수 있습니다. Microsoft는 Knowledge Base에 있는 모든 문서에 다양한 언어로 접근할 수 있도록 하기 위하여 기계 번역, 사람에 의한 번역 및 커뮤니티가 편집한 내용을 모두 제공합니다. 번역된 문서는 어휘, 구문 및/혹은 문법에 오류가 있을 수 있습니다. Microsoft는 번역 오류로 인한 부정확성, 오류 및/또는 손해와 이를 고객이 사용하는 데에 대하여 책임을 지지 않습니다.
이 문서의 영문 버전 보기:103390  (http://support.microsoft.com/kb/103390/en-us/ )
공유
추가 지원 옵션
Microsoft Community 지원 포럼
직접 문의하기
Microsoft Certified Partner 찾기
Microsoft Store
소기업이 아닙니까?
다음에서 팔로우하십시오.