Faz pouco atualizações de fix pack foram lançadas para várias versões do Samba, quais eram as versões 4.15.2, 4.14.10 e 4.13.14, neles foram implementadas as mudanças que incluem a eliminação de 8 vulnerabilidades, a maioria das quais pode levar a um comprometimento total do domínio do Active Directory.
Deve-se notar que um dos problemas foi corrigido em 2016, e cinco, a partir de 2020, embora uma correção resultou na incapacidade de executar o winbindd nas configurações de presença «permitir domínios confiáveis = não»(Os desenvolvedores pretendem lançar imediatamente outra atualização para reparo).
Essas funções podem ser muito perigosas nas mãos erradas, pois o usuário qQuem quer que crie essas contas tem amplos privilégios não apenas para criá-las e definir suas senhas, mas para renomeá-los posteriormente com a única restrição é que eles podem não corresponder a um samAccountName existente.
Quando o Samba atua como membro do domínio AD e aceita um tíquete Kerberos, ele deve mapeie as informações encontradas lá para um ID de usuário UNIX local (uid). Está é feito atualmente através do nome da conta no Active Directory Certificado de Atributo Privilegiado Kerberos Gerado (PAC), ou o nome da conta no tíquete (se não houver PAC).
Por exemplo, o Samba tentará encontrar um usuário "DOMÍNIO \ usuário" antes recorrendo à tentativa de encontrar o usuário "usuário". Se a busca por DOMAIN \ usuário falhar, então um privilégio escalar é possível.
Para quem não conhece o Samba, saiba que este é um projeto que dá continuidade ao desenvolvimento do branch Samba 4.x com uma implementação completa de um controlador de domínio e serviço Active Directory, compatível com a implementação do Windows 2000 e capaz de atender a todas as versões de clientes Windows suportados pela Microsoft, incluindo Windows 10.
Samba 4, é um produto de servidor multifuncional, que também fornece a implementação de um servidor de arquivos, serviço de impressão e servidor de autenticação (winbind).
Das vulnerabilidades que foram eliminadas nas atualizações lançadas, as seguintes são mencionadas:
- CVE-2020-25717- Devido a uma falha na lógica de mapeamento de usuários de domínio para usuários do sistema local, um usuário de domínio do Active Directory que tem a capacidade de criar novas contas em seu sistema, gerenciado por ms-DS-MachineAccountQuota, pode obter acesso root a outros sistemas incluídos no domínio.
- CVE-2021-3738- Acesso a uma área de memória já liberada (Use after free) na implementação do servidor Samba AD DC RPC (dsdb), o que pode levar ao aumento de privilégios ao manipular as configurações de conexão.
CVE-2016-2124- As conexões de cliente estabelecidas usando o protocolo SMB1 podem ser passadas para transmitir parâmetros de autenticação em texto simples ou usando NTLM (por exemplo, para determinar credenciais para ataques MITM), mesmo se o usuário ou aplicativo estiver configurado como autenticação Obrigatória através do Kerberos. - CVE-2020-25722- Verificações adequadas de acesso ao armazenamento não foram realizadas em um controlador de domínio do Active Directory baseado em Samba, permitindo que qualquer usuário ignore as credenciais e comprometa completamente o domínio.
- CVE-2020-25718- Os tíquetes Kerberos emitidos pelo RODC (controlador de domínio somente leitura) não foram isolados adequadamente para o controlador de domínio do Active Directory baseado em Samba, que poderia ser usado para obter tíquetes de administrador do RODC sem ter autoridade para fazer isso.
- CVE-2020-25719- O controlador de domínio do Active Directory baseado em Samba nem sempre levou em consideração os campos SID e PAC nos tíquetes Kerberos no pacote (ao definir "gensec: require_pac = true", apenas o nome e o PAC não foram levados em consideração), o que permitiu ao usuário, que o direito de criar contas no sistema local, para representar outro usuário de domínio, incluindo um privilegiado.
- CVE-2020-25721: Para usuários autenticados usando Kerberos, identificadores exclusivos para Active Directory (objectSid) nem sempre eram emitidos, o que poderia levar a interseções usuário-usuário.
- CVE-2021-23192- Durante o ataque MITM, foi possível falsificar fragmentos em grandes solicitações DCE / RPC que foram divididas em várias partes.
Por fim, se você tiver interesse em saber mais sobre o assunto, pode consultar os detalhes em o seguinte link.