As contas de serviço desempenham um papel fundamental para permitir a comunicação máquina-a-máquina em ambientes do Active Diretory (AD). Por exemplo, as plataformas de correio eletrónico, as bases de dados e as aplicações internas e viradas para a Internet dependem destas contas para se autenticarem noutras aplicações e serviços de back-end. São também amplamente utilizadas por ferramentas de segurança para se integrarem em plataformas monitorizadas como o AD.
Como as contas de serviço estão omnipresentes em quase todas as operações comerciais, oferecem aos agentes maliciosos uma superfície de ataque tentadoramente ampla, com inúmeros pontos de entrada potenciais. Inúmeros ciberataques de alto perfil começaram com o comprometimento de uma conta de serviço.
Um exemplo notável - o ataque NotPetya ao gigante farmacêutico Merck em 2017 - é um dos mais dispendiosos da história, com danos que totalizam 1,4 mil milhões de dólares. De forma assustadora, o ponto inicial de comprometimento foi uma conta de serviço usada pelo System Center Configuration Manager (SCCM) para aplicação de patches de software. (Exploramos esse ataque em detalhes em um episódio dedicado do nosso podcast sobre Proteção de Identidade Híbrida.)
Porque é que continuamos a viver com um ponto de exposição tão óbvio no nosso sistema de identidade? A resposta: É complicado.
Porque é que as contas de serviço são tão difíceis de proteger?
A utilização generalizada de contas de serviço torna-as notoriamente difíceis de encontrar, gerir e proteger. Os desafios resultam de vários factores.
As contas de serviço são críticas para a empresa
Se uma conta de serviço não conseguir aceder ao AD - por exemplo, devido a um bloqueio de conta ou a uma alteração de palavra-passe - a aplicação associada deixa frequentemente de funcionar, provocando a interrupção das operações comerciais.
Dada a criticidade da maioria das aplicações e serviços empresariais, muitos profissionais de segurança hesitam em efetuar quaisquer alterações relacionadas com a segurança que possam perturbar uma conta de serviço e interromper a atividade, pelo que as contas permanecem intocadas e vulneráveis.
As contas de serviço têm pouca visibilidade
A maioria dos ambientes AD está em vigor há muitos anos, por vezes há décadas. Durante esse tempo, inúmeros serviços integrados no AD foram integrados, actualizados e retirados. E cada um deles introduz o seu próprio conjunto de contas de serviço com permissões específicas.
Ao contrário das contas de utilizadores humanos, que são normalmente geridas através de processos estruturados de integração e desinstalação, as contas de serviço carecem frequentemente de uma gestão formal do ciclo de vida. Como resultado, quando as aplicações são desactivadas, as contas de serviço associadas são frequentemente deixadas para trás.
Com o tempo, essas contas de serviço legadas se acumulam. As organizações podem ter centenas ou mesmo milhares de contas obsoletas e não geridas no ambiente, cada uma delas um potencial risco de segurança.
As palavras-passe de contas de serviço estáticas estão em todo o lado
As contas de serviço utilizam frequentemente palavras-passe estáticas que raramente mudam e que, por vezes, são codificadas em scripts ou aplicações. Estas credenciais são difíceis de rodar e, uma vez expostas - através de fugas de código-fonte, ficheiros de configuração ou despejos de memória - podem ser exploradas por atacantes que depois se deslocam lateralmente ou aumentam os privilégios no ambiente.
As palavras-passe estáticas fracas são especialmente vulneráveis a ataques de pulverização de palavras-passe. Uma vez que as contas de serviço não podem utilizar a autenticação multifactor, falta-lhes uma camada essencial de proteção. Em ambientes AD, são também susceptíveis de Kerberoasting, em que os atacantes extraem e decifram bilhetes de serviço para obter palavras-passe em texto simples.
As contas de serviço têm frequentemente privilégios excessivos
As equipas de aplicações e de programadores atribuem frequentemente permissões excessivas a contas de serviço porque não têm um conhecimento profundo dos modelos de permissão e delegação do Active Diretory. Em vez de adoptarem uma abordagem diferenciada, podem criar rotineiramente contas com privilégios elevados com permissões que excedem largamente o necessário.
Esta prática oferece uma enorme oportunidade para os atacantes aproveitarem qualquer uma das inúmeras técnicas de ataque para assumir o controlo de uma conta de serviço e aumentar rapidamente os privilégios. Além disso, a maior parte da atividade da conta de serviço não é normalmente monitorizada e o comprometimento da conta não é frequentemente detectado até ser demasiado tarde.
Como colmatar a lacuna de segurança das contas de serviço
Juntos, estes desafios representam um problema quase intransponível para as equipas de segurança, deixando as contas de serviço como uma lacuna crítica na maioria dos programas de segurança de identidade.
Vejamos uma abordagem em camadas para resolver este problema difícil.
Inventariar e classificar
O primeiro passo é descobrir todas as contas de serviço no seu ambiente do Active Diretory. Normalmente, isso significa usar ferramentas como scripts do PowerShell ou plataformas de governança de identidade.
Em seguida, identifique o proprietário, a finalidade e os sistemas associados a cada conta. Categorize-as por nível de privilégio, unidade organizacional e método de autenticação. Remova todas as contas órfãs ou não utilizadas e mantenha um inventário centralizado e atualizado regularmente.
Aplicar o privilégio mínimo
Atribua apenas as permissões necessárias para o funcionamento de cada conta de serviço. Evite conceder direitos de Administrador do domínio ou Administrador da empresa, exceto se for absolutamente necessário.
Sempre que possível, utilize contas de serviço geridas em grupo (gMSAs) para simplificar a gestão de permissões e reduzir os riscos.
Eliminar as credenciais codificadas
Examine scripts, tarefas agendadas e aplicativos em busca de credenciais incorporadas. Sempre que possível, substitua as palavras-passe codificadas por soluções de armazenamento seguras, como o Gestor de Credenciais do Windows ou gMSAs, para evitar fugas de credenciais.
Para algumas contas, não é possível evitar as palavras-passe codificadas. Nesses casos, certifique-se de que utiliza uma palavra-passe segura de elevada entropia com o comprimento máximo de caracteres permitido.
Monitorizar e alertar
A atividade da conta de serviço deve seguir padrões previsíveis e locais de início de sessão. Active a auditoria para eventos de início de sessão da conta de serviço e monitorize comportamentos invulgares, como inícios de sessão a partir de anfitriões inesperados ou a horas estranhas.
Integre os registos com uma plataforma de gestão de eventos e informações de segurança (SIEM) para centralizar a monitorização e gerar alertas para actividades suspeitas.
Restringir o início de sessão e o acesso
Utilize a Política de Grupo para negar direitos de início de sessão interactivos às contas de serviço. Restrinja onde as contas podem autenticar usando a configuração Estações de trabalho de logon, permitindo que os logons ocorram apenas nos servidores necessários.
Automatização da segurança da conta de serviço em camadas
Como provavelmente já se apercebeu, a abordagem tradicional à gestão de contas de serviço e à atenuação de vulnerabilidades é proibitivamente intensiva em termos de tempo e recursos. Naturalmente, é com isso que os ciberataques estão a contar.
E é por isso que a Semperis surgiu com uma alternativa.
O nosso módulo Service Accounts Protection melhora as capacidades do Directory Services Protector DSP)ajudando a simplificar o processo de proteção das contas de serviço e reduzindo significativamente o tempo e o esforço necessários nos passos que descrevemos.
Este módulo descobre continuamente contas de serviço desconhecidas e deslocadas, detecta configurações incorrectas de contas de serviço e revela configurações de risco e exposições críticas, ao mesmo tempo que o alerta para comportamentos maliciosos e anómalos.
As contas de serviço são há muito tempo o calcanhar de Aquiles da segurança de identidade - uma lacuna crítica que os atacantes estão sempre a tentar atingir. DSP ajuda-o a defendê-las.