
Nosso SSO de instalação do WAC (por meio de delegação baseada em recursos) parou de funcionar na semana passada por motivos desconhecidos e isso está me deixando louco. O seguinte evento é registrado no servidor WAC ao tentar se conectar a um cliente gerenciado (qualquer um deles) na WebUI:
A Kerberos error message was received:
on logon session
Client Time:
Server Time: 19:6:29.0000 11/29/2021 Z
Error Code: 0x29 KRB_AP_ERR_MODIFIED
Extended Error: 0xc00000bb KLIN(0)
Client Realm:
Client Name:
Server Realm: DOMAIN.COM
Server Name: HTTP/accounting-02-m.domain.com
Target Name: HTTP/[email protected]
Error Text:
File: onecore\ds\security\protocols\kerberos\client2\kerbtick.cxx
Line: 128d
Error Data is in record data.
O erro correspondente 0x29 também é registrado no KDC de destino.
O acesso ao WAC WebUI funciona bem para usuários e o PowerShell remoto para direcionar máquinas fora do WAC também funciona para os mesmos usuários. Quando o acesso é negado à máquina de destino no WAC e as credenciais são solicitadas, inserir manualmente minhas credenciais permite o acesso. A WebUI diretamente no servidor WAC permite usá-la conforme pretendido para acessar máquinas de destino via SSO. Isto exclui problemas de permissão e parece apontar para um problema de delegação de salto duplo.
Uma captura do tráfego de rede mostra o TGS-REQ/REP para eu acessar a máquina WAC$ e então vejo o TGS-REQ para o serviço da máquina alvo (ou seja, HTTP/accounting-02-m.domain.com) com KRB- OPÇÃO "delegação restrita: True", seguida do KRB-ERROR para KRB5KRB_AP_ERR_MODIFIED...
Verifiquei a delegação para uma máquina de amostra e ela está conforme o esperado:
Path Owner Access
---- ----- ------
BUILTIN\Administrators DOMAIN\WAC$ Allow
Certifiquei-me de que o canal seguro esteja funcionando entre o servidor/destino e o DC (redefini a senha da máquina de qualquer maneira)
PS C:\> Test-ComputerSecureChannel
true
Eu verifico problemas de SPN:
PS C:\> setspn -L accounting-02-m Registered ServicePrincipalNames for CN=ACCOUNTING-02-M,OU=Workstations,OU=Domain Computers,DC=domain,DC=com:
WSMAN/ACCOUNTING-02-M
WSMAN/ACCOUNTING-02-M.domain.com
TERMSRV/ACCOUNTING-02-M
TERMSRV/ACCOUNTING-02-M.domain.com
RestrictedKrbHost/ACCOUNTING-02-M
HOST/ACCOUNTING-02-M
RestrictedKrbHost/ACCOUNTING-02-M.domain.com
HOST/ACCOUNTING-02-M.domain.com
PS C:\> setspn -Q HTTP/accounting-02-m
Checking domain DC=domain,DC=com
No such SPN found.
Acredito que o mapeamento SPN deve cuidar da equivalência HOST->HTTP:
host=alerter,appmgmt,cisvc,clipsrv,browser,dhcp,dnscache,replicator,eventlog,eventsystem,policyagent,oakley,dmserver,dns,mcsvc,fax,msiserver,ias,messenger,netlogon,netman,netdde,netddedsm,nmagent,plugplay,protectedstorage,rasman,rpclocator,rpc,rpcss,remoteaccess,rsvp,samss,scardsvr,scesrv,seclogon,scm,dcom,cifs,spooler,snmp,schedule,tapisrv,trksvr,trkwks,ups,time,wins,www,http,w3svc,iisadmin
Eu uso klist purge -li 0x3e7
para limpar tickets de máquinas antes de qualquer teste.
O servidor WAC é Win2019, serviço executado como "Serviço de Rede", KDCs são Win2019 e os clientes são uma mistura de Win10 e Win2012R2/2016/2019. O delta de tempo é no máximo 1s em todas as máquinas envolvidas (KDC, Servidor, Destino). Temos uma floresta de domínio único.
Suspeitei do KB5008380 devido a este erro logado no KDC:
During TGS processing, the KDC was unable to verify the signature on the PAC from WAC$. This indicates the PAC was modified.
Mas não foi possível encontrar a chave de registro em nenhum lugar do domínio (nem a atualização instalada nos KDCs).
Pelo que entendi dos RFCs Kerberos, a soma de verificação falha devido à alteração do ticket em trânsito (improvável) ou o serviço não consegue descriptografar o ticket devido a um problema de canal seguro ou configuração incorreta do SPN, mas todos parecem configurados corretamente.
O que estou perdendo aqui? O que está quebrado?
Responder1
Ok, a culpa é do KB5007206, mesmo que as notas iniciais não tenham mencionado o problema potencial ... não estou arriscando a atualização OOB, então desinstalar o KB5007206 nos DCs resolveu o problema.