Kerberos 사전 인증 오류 (코드 0x18)를 일으키는 프로세스 / 프로그램 추적


12

서버 2 개 중 1 개를 통해 잠긴 도메인 계정이 있습니다. 내장 감사 기능은 그 정도를 알려줍니다 (SERVER1, SERVER2에서 잠김).

계정은 5 분 내에 잠기 며, 분당 약 1 건의 요청으로 보입니다.

처음에는 sysinternals에서 procmon을 실행하여 계정 잠금을 해제 한 후 새로운 PROCESS START가 생성되는지 확인했습니다. 의심스러운 것은 없습니다. 내 워크 스테이션에서 procmon을 실행하고 UAC 쉘 (conscent.exe)로 상승 후에는 것을 스택에서처럼 보인다 ntdll.dll그리고는 rpct4.dll당신이 (확실하지) AD에 정식 할 때 호출되는.

DC에 인증 요청을 일으키는 프로세스를 좁히는 방법이 있습니까? 항상 같은 DC이므로 해당 사이트에 서버가 있어야 함을 알고 있습니다. wireshark에서 전화를 찾아 볼 수는 있지만 실제로 어떤 프로세스가 실제로 트리거되는지 좁힐지는 확실하지 않습니다.

서비스, ​​드라이브 매핑 또는 예약 된 작업이 해당 도메인 계정을 사용하고 있지 않으므로 도메인 자격 증명이 저장되어 있어야합니다. 어떤 서버에서도 해당 도메인 계정에 대한 공개 RDP 세션이 없습니다 (확인했습니다).

추가 메모

예, "성공 / 실패"로그온 감사는 해당 DC에서 활성화됩니다. 계정이 실제로 잠길 때까지 실패 이벤트가 기록되지 않습니다.

또한 파고 쇼 LSASS.exe하게 KERBEROS계정 잠금이 해제되면 문제의 DC에 전화를. vpxd.exevCenter 프로세스 인 이라고 불리는 java가 앞에옵니다 (일반적으로) . 그러나 다른 "server2"를 살펴보면 계정 잠금이 발생할 수 있다는 것입니다. 전화를 보지 않고 lsass.exe아파치 프로세스 만 생성됩니다. 두 사람의 유일한 관계는 SERVER2가 SERVER1의 vSphere 클러스터 (server1이 vSphere OS 임)의 일부라는 것입니다.

DC 오류

따라서 AD에서 알 수있는 것은 사전 인증 Kerberos 오류라는 것입니다. 나는 확인하고 티켓이 없었고 klist어쨌든 플러시를했다. 여전히이 kerberos 오류의 원인을 모릅니다.

Index              : 202500597
EntryType          : FailureAudit
InstanceId         : 4771
Message            : Kerberos pre-authentication failed.

                     Account Information:
                         Security ID:        S-1-5-21-3381590919-2827822839-3002869273-5848
                         Account Name:        USER

                     Service Information:
                         Service Name:        krbtgt/DOMAIN

                     Network Information:
                         Client Address:        ::ffff:x.x.x.x
                         Client Port:        61450

                     Additional Information:
                         Ticket Options:        0x40810010
                         Failure Code:        0x18
                         Pre-Authentication Type:    2

                     Certificate Information:
                         Certificate Issuer Name:
                         Certificate Serial Number:
                         Certificate Thumbprint:

                     Certificate information is only provided if a certificate was used for pre-authentication.

                     Pre-authentication types, ticket options and failure codes are defined in RFC 4120.

                     If the ticket was malformed or damaged during transit and could not be decrypted, then many fields
                      in this event might not be present.

답변:


5

로그온 이벤트는 로그온을 시도하는 프로세스를 기록합니다. 로컬 보안 정책 (secpol.msc)에서 실패한 로그온 감사 (보안 설정> 로컬 정책> 감사 정책> 감사 이벤트)를 활성화 한 다음 보안 이벤트 로그에서 이벤트를 찾으십시오. 원하는 경우 그룹 정책을 통해 활성화 할 수도 있습니다.

실행 파일 경로와 프로세스 ID를 모두 기록하는 프로세스 정보 섹션이 있습니다.

예:

Process Information:
    Process ID:         0x2a4
    Process Name:       C:\Windows\System32\services.exe

이것이 이미 GPO에있는 것 같습니다. 보안 로그에서 개체가 언제 수정 / 잠금 해제되는지 확인할 수 있지만 그 이후에는 잘못된 시도가 표시되지 않습니다.
Jaigene Kang

@JaiKang은 문제의 서버가 DC가 아닌 경우 기본 도메인 컨트롤러 정책의 "감사 실패 로그온"설정의 영향을받지 않습니다. 실패한 로그온 이벤트는 인증을 시도하는 서버에 의해 기록되며 "기본 도메인 정책"또는 해당 서버에 적용되는 다른 컴퓨터 정책에 의해 설정됩니다.
Mitch

나는 실제로 그것을 알아 냈습니다. 감사 설정의 "고급"섹션에서 일부 설정을 설정해야했습니다. 원래 게시물을 이벤트로 업데이트했습니다.
Jaigene Kang

@JaiKang, 사전 인증은 토큰을 반환하기 전에 자격 증명을 확인하는 데 사용되는 프로세스 일뿐입니다. 프로세스 ID를 포함하여 인증을 시도하는 서버에 여전히 실패 감사가 있어야합니다.
Mitch

어떤 "고급"설정을 정해야합니까?
skinneejoe

2

다른 문제를 연구하는 동안이 오래된 질문을 찾았지만 비슷한 문제가있는 사람에게는

실패 코드 0x18은 클라이언트가 인증을 시도 할 때 계정이 이미 비활성화되었거나 잠겨 있다는 것을 의미합니다.

실패 코드가 0x24동일한 이벤트 ID를 찾아야합니다.이 ID 는 실패한 로그인 시도로 인해 계정이 잠겼습니다. (이것은 어딘가에 캐시 된 암호가 잘못되어 발생한다고 가정합니다.)

그런 다음 해당 이벤트에서 클라이언트 주소 를보고 어떤 시스템이 잘못된 자격 증명을 전달하는지 확인할 수 있습니다. 여기에서 이전 비밀번호, 매핑 된 네트워크 드라이브 등이있는 서비스인지 알아 내야합니다.

다양한 오류 코드가 있으므로 0x24 코드가 포함 된 이벤트가없는 경우 0x18 이외의 항목을 찾아 계정 잠금을 유발 한 원인을 확인해야합니다. 잠금으로 이어지는 유일한 유형의 실패는 0x24 (잘못된 암호)라고 생각하지만 잘못되었을 수 있습니다.


Necro 게시물과 댓글로 삽입하지 않아서 죄송합니다 ... 아직 50p를 얻지 못했습니다. :-) 실패 코드 0x18은 사전 인증 실패이며 잠긴 계정을 나타내지 않습니다. 잠긴 계정은 0x18 코드를 트리거 할 수도 있지만 취소 된 자격 증명 대신 0x12가 필요합니다.
Sjm


1

나는 오늘 많은 시간을 보냈고 근본 원인을 찾아 냈습니다. 네트워크 스니퍼로 캡처 된 정보에서 잘못되었습니다 (kerberos 오류 프로세스 ID는 566 = lsass.exe였습니다). 정보를 요약하겠습니다.

  1. 문제가있는 PC에 로그온하여 높은 권한으로 powershell 실행

  2. 감사 로그온 사용

    auditpol /set /subcategory:"logon" /failure:enable

  3. 소스 확인

    Get-WinEvent -Logname 'Security' -FilterXPath "*[System[EventID=4625]]" -MaxEvents 2 | fl

당신이 볼 경우:

공정 정보 :

발신자 프로세스 ID : 0x140

호출자 프로세스 이름 : C : \ Windows \ System32 \ services.exe

이전 비밀번호로 문제 계정에서 일부 서비스를 실행하고 있음을 의미합니다.


0

이것은 위의 메모에서 온 것입니다. 이 게시물의 개시자가 그의 마지막 의견에 언급 된 것 같습니다. Java 호출 vpxd.exe 프로세스

추가 참고 사항 예, "성공 / 실패"로그온 감사는 해당 DC에서 활성화됩니다. 계정이 실제로 잠길 때까지 실패 이벤트가 기록되지 않습니다.

자세한 내용은 계정을 잠금 해제하면 LSASS.exe가 문제의 DC에 대해 KERBEROS 호출을한다는 것을 보여줍니다. vCenter 프로세스 인 vpxd.exe에 의해 호출되는 것 같습니다. 그러나 다른 "server2"를 보면 계정 잠금이 발생할 수 있다는 것입니다. lsass.exe에 대한 호출은 결코 보지 않으며 아파치 프로세스 만 생성됩니다. 두 사람의 유일한 관계는 SERVER2가 SERVER1의 vSphere 클러스터 (server1이 vSphere OS 임)의 일부라는 것입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.