Adicionando algo que não vejo nas respostas dadas.
What would be the best way to find the service/machine responsible for this ?
Você não pode apenas examinar o log de Segurança no PDCe, porque, embora o PDCe tenha as informações mais atualizadas sobre os bloqueios de conta de todo o domínio, ele não ter as informações sobre a partir de qual cliente (IP ou hostname) as tentativas de logon com falha vieram, assumindo que as tentativas de logon com falha ocorreram em outro controlador de domínio, além do PDCe. O PDCe dirá que "Conta xyz foi bloqueada", mas não dirá de onde, se os logons com falha estavam ocorrendo em outro DC no domínio. Somente o controlador de domínio que realmente validou o logon registrará a falha de logon, incluindo o endereço do cliente. (Também não trazendo RODCs para esta discussão.)
Existem duas boas maneiras de descobrir de onde vêm as tentativas de logon com falha quando você tem vários controladores de domínio. Encaminhamento de eventos e as Ferramentas de bloqueio de conta da Microsoft.
Eu prefiro o encaminhamento de eventos para um local central. Encaminhar tentativas de logon com falha de todos os seus controladores de domínio para um servidor de log central. Então você só tem um lugar para procurar falhas no seu domínio inteiro. Na verdade, eu pessoalmente não amo muito as ferramentas de bloqueio de conta da Microsoft, então agora há um bom caminho.
Encaminhamento de eventos. Você vai adorar.
Assuming the infrastructure is pure, standard Windows with no additional management tool and few changes from default is there any way the process of finding the cause of such lockout could be accelerated or improved?
Veja acima. Você pode então ter seu sistema de monitoramento, como o SCOM ou o Nagios ou o que você usar, vasculhar esse único registro de evento e explodir o seu celular com mensagens de texto ou qualquer outra coisa. Não fica mais acelerado do que isso.
What could be done to improve the resilient of the system against such an account lockout DOS?
- Educação do usuário. Diga-lhes para parar de configurar os serviços do Windows para serem executados em suas contas de usuário de domínio, faça logoff das sessões RDP quando elas forem concluídas, ensine-as a limpar a Segurança de Credenciais do Windows das senhas armazenadas em cache do Outlook etc.
- Use as Contas de serviço gerenciadas onde você pode fazer com que os usuários não precisem mais gerenciar senhas para essas contas de usuário. Usuários estragam tudo. Se você der uma escolha ao usuário, ele sempre fará a escolha errada. Então não lhes dê uma escolha.
- Impondo tempos limite de sessão remota por meio do GPO. Se um usuário estiver ocioso em uma sessão RDP por 6 horas, inicie-o.