← voltar
CVE-2024-3272criticalsob ataqueCWE-798

D-Link DNS-320L/DNS-325/DNS-327L/DNS-340L HTTP GET Request nas_sharing.cgi hard-coded credentials

100Vexday Risk Score

Corrija agora. Ela está sob exploração confirmada pelo CISA e tem exploit funcional público.

ssvc Actcvss 9.8epss 98%
da publicação à arma47 dias
Publicada no NVD4 de abr.
1ª PoC+47d
CISA KEV+7d
probabilidade de exploração
98%top 1% das CVEs
exploração observada
simCISA + VulnCheck
3 exploit(s) público(s)
Ação exigida pela CISAprazo federal: 2024-05-02

This vulnerability affects legacy D-Link products. All associated hardware revisions have reached their end-of-life (EOL) or end-of-service (EOS) life cycle and should be retired and replaced per vendor instructions.

Resumo

Falha de credenciais fixas no cgi-bin/nas_sharing.cgi de NAS D-Link legados (DNS-320L, DNS-325, DNS-327L, DNS-340L) permite bypass total de autenticação usando o usuário embutido "messagebus" com senha vazia. Isolada, ela já concede acesso autenticado à interface de compartilhamento; combinada com a injeção de comando explorada em paralelo (CVE-2024-3273, mesmo endpoint), resulta em execução remota de código sem qualquer credencial legítima. O CVSS 9.8 é coerente porque não há pré-condição de rede especial nem interação do usuário — só alcançar a porta HTTP do dispositivo.

Detalhamento técnico

A vulnerabilidade está no script CGI /cgi-bin/nas_sharing.cgi, que processa requisições HTTP GET para operações de compartilhamento de arquivos nos NAS D-Link. O binário contém uma conta hard-coded: ao enviar o parâmetro user=messagebus com passwd vazio, o script trata a requisição como autenticada, ignorando qualquer mecanismo real de login. Classifica-se como CWE-798 (Use of Hard-coded Credentials).

O pesquisador que publicou o achado (netsecfish) documentou que esse mesmo endpoint aceita, através do parâmetro cmd, códigos de operação que disparam ações administrativas, e que o parâmetro system recebe um valor codificado em base64 interpretado como comando de sistema (essa parte específica de injeção de comando é rastreada como CVE-2024-3273, CWE-77, mas as duas falhas convivem no mesmo binário e são exploradas juntas na prática).

O atacante não controla lógica de negócio complexa: controla inteiramente a querystring da requisição GET — usuário, senha (vazia) e, quando presente, o payload de comando codificado. Não há validação de origem, token CSRF ou verificação de sessão que bloqueie a chamada direta ao CGI.

Como é explorada

O vetor é uma única requisição HTTP GET não autenticada contra /cgi-bin/nas_sharing.cgi, acessível a qualquer atacante com conectividade de rede à interface de administração do dispositivo — não exige VPN, credencial prévia nem interação do usuário-vítima. A complexidade de exploração é baixa: o PoC público do descobridor mostra a estrutura exata da requisição (parâmetros user, passwd e, no caso combinado, cmd e system), e há template Nuclei disponível, o que reduz a exploração a scan automatizado em massa.

Na prática documentada pelos pesquisadores, o encadeamento das duas falhas (credencial fixa + injeção via parâmetro system) permite execução arbitrária de comando com privilégios do processo CGI, tipicamente root nesses NAS. O relato original menciona mais de 92 mil dispositivos expostos na internet no momento da divulgação, o que explica a inclusão imediata no catálogo KEV da CISA — há confirmação de exploração ativa in the wild.

Versões

Afetadas
DNS-320L (firmwares até 20240403, incluindo versões 1.11, 1.03.0904.2013 e 1.01.0702.2013), DNS-325 (versão 1.01), DNS-327L (versões 1.09 e 1.00.0409.2013), DNS-340L (versão 1.08) — todos os hardware revisions, conforme listado pelo fornecedor no SAP10383.
Corrigidas em
Nenhuma. Todos os modelos afetados estão em End of Service Life/End of Life confirmado pelo fornecedor; não há e não haverá firmware corrigido.

Como se proteger

Não existe patch. O fornecedor confirmou que DNS-320L, DNS-325, DNS-327L e DNS-340L (e toda a linha legada listada no SAP10383) atingiram fim de suporte (EOS/EOL) antes da divulgação e não receberão firmware corrigido. A recomendação oficial da D-Link é retirar e substituir o equipamento — não há versão de firmware que remova a credencial hard-coded.

Como controle compensatório real, para quem não pode substituir o dispositivo de imediato: isolar o NAS da internet (nunca expor a interface de gerência/CGI diretamente), bloquear acesso à porta HTTP/HTTPS de administração por firewall restringindo a IPs de gerência confiáveis, e desligar qualquer recurso de acesso remoto/DDNS habilitado no dispositivo. Trocar a senha do usuário administrativo do painel não mitiga nada, porque a falha está numa conta de sistema paralela embutida no binário — esse é o mito a descartar: não é uma senha padrão que se troca pela interface, é uma credencial fixa no código do CGI.

O due date do CISA KEV (2024-05-02) reforça a urgência: para redes federais dos EUA a ação exigida também foi retirada do equipamento, não atualização, porque não existe update disponível.

Como detectar

Procurar em logs de acesso HTTP/web do dispositivo (quando existentes) por requisições GET para /cgi-bin/nas_sharing.cgi contendo user=messagebus na querystring, especialmente acompanhadas de cmd= e de um parâmetro system= com valor longo em base64 — esse padrão é a assinatura do PoC público e do template Nuclei em circulação. Como os dispositivos em questão têm logging local limitado e raramente enviam logs a um SIEM central, a ausência de log não indica ausência de tentativa; monitorar no perímetro de rede (proxy, firewall, IDS) por essa string de requisição é mais confiável do que depender do log do próprio NAS.

Pesquisado e redigido com IA a partir do advisory do fornecedor e de análises públicas, com as fontes acima. Confira sempre a versão corrigida no advisory oficial antes de agir.
** UNSUPPORTED WHEN ASSIGNED ** A vulnerability, which was classified as very critical, has been found in D-Link DNS-320L, DNS-325, DNS-327L and DNS-340L up to 20240403. This issue affects some unknown processing of the file /cgi-bin/nas_sharing.cgi of the component HTTP GET Request Handler. The manipulation of the argument user with the input messagebus leads to hard-coded credentials. The attack may be initiated remotely. The exploit has been disclosed to the public and may be used. The associated identifier of this vulnerability is VDB-259283. NOTE: This vulnerability only affects products that are no longer supported by the maintainer. NOTE: Vendor was contacted early and confirmed immediately that the product is end-of-life. It should be retired and replaced.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
⚠ Recursos públicos, para você avaliar a exposição de sistemas que controla ou está autorizado a testar. Teste apenas com autorização.