ASA-2019-00363 – Samba: Negação de serviço no servidor de gerenciamento do DNS (dnsserver) no AD DC


For the English version of this alert, click here.

Allele Security Alert

ASA-2019-00363

Identificador(es)

ASA-2019-00363, CVE-2019-12435

Título

Negação de serviço no servidor de gerenciamento do DNS (dnsserver) no AD DC

Fabricante(s)

The Samba Project

Produto(s)

Samba

Versão(ões) afetada(s)

Samba 4.9 versão anterior a 4.9.9
Samba 4.10 versão anterior a 4.10.5

Versão(ões) corrigida(s)

Samba 4.9.9
Samba 4.10.5

Prova de conceito

Desconhecido

Descrição

O pipe RPC dnsserver (mal nomeado) fornece recursos administrativos para modificar registros e zonas DNS.

Um usuário autenticado pode causar um crash no processo do servidor RPC por meio de um NULL pointer dereference.

Detalhes técnicos

Em alguns lugares no servidor DNS RPC, fazemos o seguinte:

z = dnsserver_find_zone(dsstate->zones, r->in.pszZone);
if (z == NULL && request_filter == 0) {
return WERR_DNS_ERROR_ZONE_DOES_NOT_EXIST;
}

ret = dnsserver_operate_zone(dsstate, mem_ctx, z, ...);

onde z pode ser feito para ser NULL definindo r->in.pszZone como uma zona inexistente, e request_filter pode ser diferente de zero definindo r->in.dwContext como diferente de zero.

A combinação de z == NULL && request_filter != 0 resulta em referência NULL em dnsserver_operate_zone().

O conteúdo de r->in.pszZone e r->in.dwContext são passados pela rede pelo cliente. Esta função parece ser alcançada apenas por usuários autenticados – mas o usuário não precisa ter direitos para executar a operação que está fingindo pedir.

No modo prefork, há vários servidores prc que voltam à vida após um atraso, mas é muito fácil para um atacante continuar matando todos eles.

Isto foi encontrado via Coverity CID 1418127.

Solução alternativa

A tarefa dnsserver pode ser interrompida configurando ‘dcerpc endpoint servers = -dnsserver’ no smb.conf e reiniciando o Samba.

Créditos

Andrew Bartlett (Catalyst) e the Samba Team

Referência(s)

Samba AD DC Denial of Service in DNS management server (dnsserver)
https://www.samba.org/samba/security/CVE-2019-12435.html

[Announce] Samba 4.10.5 and 4.9.9 Security Releases Available
https://lists.samba.org/archive/samba-announce/2019/000481.html

Bug 13922 – (CVE-2019-12435) CVE-2019-12435 [SECURITY] zone operations can crash rpc server
https://bugzilla.samba.org/show_bug.cgi?id=13922

samba-4.10.4-security-2019-06-19.patch
https://download.samba.org/pub/samba/patches/security/samba-4.10.4-security-2019-06-19.patch

samba-4.9.8-security-2019-06-19.patch
https://download.samba.org/pub/samba/patches/security/samba-4.9.8-security-2019-06-19.patch

CVE-2019-12435 rpc/dns: avoid NULL deference if zone not found in DnssrvOperation
https://github.com/samba-team/samba/commit/0b9da247534f735fa96141e9285fd22e0f2bb442

CVE-2019-12435 rpc/dns: avoid NULL deference if zone not found in DnssrvOperation2
https://github.com/samba-team/samba/commit/d32b96aeff0022c7a9052f15adbc7cd36643ca22

CVE-2019-12435
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-12435

CVE-2019-12435
https://nvd.nist.gov/vuln/detail/CVE-2019-12435

Se encontrou algum erro neste alerta ou deseja uma análise compreensiva, entre em contato.

Última modificação: 8 dezembro 2019

Não somos responsáveis por qualquer perda de dados, corrupção de dispositivos ou qualquer outro tipo de problema devido ao uso de qualquer informação mencionada em nossos alertas de segurança.