Rintracciare quale processo / programma sta causando l'errore di pre-autenticazione Kerberos (codice 0x18)


12

Abbiamo un account di dominio bloccato da 1 su 2 server. Il controllo integrato ci dice solo molto (bloccato da SERVER1, SERVER2).

L'account viene bloccato entro 5 minuti, a quanto pare circa 1 richiesta al minuto.

Inizialmente ho provato a eseguire procmon (da sysinternals) per vedere se venivano generati nuovi PROCESS START dopo aver sbloccato l'account. Non emerge nulla di sospetto. Dopo aver eseguito ProcMon sulla mia workstation ed elevando ad un UAC shell (conscent.exe) sembra che dalla pila che ntdll.dlle rpct4.dllvengono chiamati quando si tenta di autenticarsi verso dC (non sono sicuro).

Esiste un modo per restringere il processo che sta causando una richiesta di autenticazione al nostro controller di dominio? È sempre lo stesso controller di dominio, quindi sappiamo che deve essere un server in quel sito. Potrei provare a cercare le chiamate in WireShark, ma non sono sicuro che restringerebbe il processo che lo sta effettivamente attivando.

Nessun servizio, mapping di unità o attività pianificate sta utilizzando quell'account di dominio, quindi deve essere qualcosa in cui sono memorizzati i crediti di dominio. Non ci sono sessioni RDP aperte con quell'account di dominio su nessun server (abbiamo controllato).

Ulteriori note

Sì, i controlli di accesso "Success / Failure" sono abilitati sul controller di dominio in questione - non vengono registrati eventi di errore fino a quando l'account non viene effettivamente bloccato.

Ulteriori ricerche mostrano che LSASS.exeeffettua una KERBEROSchiamata al DC in questione una volta sbloccato l'account. È preceduto (generalmente) da Java che sembra essere chiamato da vpxd.exequale è un processo vCenter. MA, quando guardo l'altro "server2" da cui può verificarsi (anche) il blocco dell'account, non vedo mai una chiamata lsass.exee vengono generati solo processi apache. L'unica relazione tra loro è che SERVER2 fa parte del cluster vSphere di SERVER1 (il server1 è un sistema operativo vSphere).

Errore su DC

Quindi, sembra che tutto ciò che mi verrà detto da AD è che si tratta di un errore Kerberos pre-autorizzazione. Ho controllato e non c'erano biglietti con kliste ho fatto comunque un flush per ogni evenienza. Non ho ancora idea di cosa stia causando questo errore 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.

Risposte:


5

Gli eventi di accesso registrano il processo che sta tentando l'accesso. Abilitare il controllo di accesso non riuscito (Impostazioni sicurezza> Criteri locali> Politica di controllo> Controlla eventi di accesso) nella Politica di sicurezza locale (secpol.msc), quindi cercare un evento nel registro eventi di sicurezza. Puoi anche abilitarlo tramite Criteri di gruppo, se preferibile.

Ci sarà una sezione Informazioni processo che registra sia il percorso eseguibile che l'ID processo.

Esempio:

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

Sembra che questo fosse già nei nostri oggetti Criteri di gruppo. Posso vedere quando l'oggetto viene modificato / sbloccato nel registro di sicurezza, ma dopo non vedo tentativi sbagliati.
Jaigene Kang,

@JaiKang, a meno che i server in questione non siano controller di dominio, non sarebbero interessati dall'impostazione "Verifica accessi non riusciti" nella Politica sui controller di dominio predefiniti. L'evento di accesso non riuscito verrebbe registrato dal server che tenta l'autenticazione e verrebbe impostato dalla "Politica di dominio predefinita" o da un'altra politica del computer che si applica a quel server.
Mitch

In realtà l'ho capito. Ho dovuto configurare alcune impostazioni nella sezione "Avanzate" delle impostazioni di controllo. Ho aggiornato il mio post originale con gli eventi.
Jaigene Kang,

@JaiKang, la pre-autenticazione è solo il processo utilizzato per verificare le credenziali prima di restituire un token. Dovrebbe esserci ancora un controllo degli errori sul server che tenta l'autenticazione che include l'id del processo.
Mitch

Puoi approfondire quali impostazioni "Avanzate" hai dovuto configurare?
skinneejoe,

2

Ho trovato questa vecchia domanda durante la ricerca di un problema diverso, ma per chiunque abbia un problema simile:

Il codice di errore 0x18 indica che l'account era già disabilitato o bloccato quando il client ha tentato di autenticarsi.

È necessario trovare lo stesso ID evento con codice errore 0x24 , che identificherà i tentativi di accesso non riusciti che hanno causato il blocco dell'account. (Ciò presuppone che si stia verificando a causa di una password memorizzata nella cache errata da qualche parte.)

È quindi possibile guardare l'indirizzo client su quegli eventi per vedere quale sistema sta passando le credenziali errate. Da lì, dovresti capire se si tratta di un servizio con una vecchia password, un'unità di rete mappata, ecc.

Esistono numerosi codici di errore, quindi dovresti cercare qualsiasi cosa oltre a 0x18 per determinare cosa ha causato il blocco dell'account se non ci sono eventi con codici 0x24. Credo che l'unico tipo di errore che porterà a un blocco sia 0x24 (password errata), ma potrei sbagliarmi.


Ci scusiamo per il post di Necro e mi scuso per non aver inserito un commento ... Non ho ancora guadagnato il mio 50p. :-) Il codice di errore 0x18 è un errore Pre-Auth e non indica un account bloccato. Un account bloccato potrebbe attivare anche un codice 0x18, ma mi aspetterei invece uno 0x12 per le credenziali revocate.
Sjm


1

Ho trascorso molto tempo oggi e scoprire la causa principale. Ho sbagliato strada - dalle informazioni acquisite con lo sniffer di rete (ID processo errore Kerberos era 566 = lsass.exe). Vorrei riassumere le informazioni.

  1. Accedere al PC problematico, eseguire PowerShell con diritti elevati

  2. Abilita accesso di controllo

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

  3. Controlla la fonte

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

Se tu vedi:

Informazioni sul processo:

ID processo chiamante: 0x140

Nome processo chiamante: C: \ Windows \ System32 \ services.exe

Significa che hai un servizio in esecuzione dall'account problematico con la vecchia password


0

Questo è dalle note sopra. Sembra che l'iniziatore di questo post dichiarato sul suo ultimo commento. Java chiama il processo vpxd.exe.

Ulteriori note Sì, i controlli di accesso "Success / Failure" sono abilitati sul controller di dominio in questione - non vengono registrati eventi di errore fino a quando l'account non viene effettivamente bloccato.

Ulteriori ricerche mostrano che LSASS.exe effettua una chiamata KERBEROS al controller di dominio in questione una volta sbloccato l'account. È preceduto (generalmente) da Java che sembra essere chiamato da vpxd.exe che è un processo vCenter. MA, quando guardo l'altro "server2" da cui può verificarsi (anche) il blocco dell'account, non vedo mai una chiamata a lsass.exe e vengono generati solo processi apache. L'unica relazione tra loro è che SERVER2 fa parte del cluster vSphere di SERVER1 (il server1 è un sistema operativo vSphere).

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.