← voltar
CVE-2023-1389highsob ataqueCWE-77

CVE-2023-1389

100Vexday Risk Score

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

ssvc Actcvss 8.8epss 100%
da publicação à arma0 dias
Publicada no NVD15 de mar.
1ª PoC26 de abr.
CISA KEV+47d
probabilidade de exploração
100%top 1% das CVEs
exploração observada
simCISA + VulnCheck
7 exploit(s) público(s)
Ação exigida pela CISAprazo federal: 2023-05-22

Apply updates per vendor instructions.

Resumo

Falha de command injection não autenticada na interface de administração web do TP-Link Archer AX21 (AX1800), que permite execução de comandos como root através do parâmetro country de um endpoint de configuração de localidade. O CVSS de 8.8 pressupõe acesso à rede adjacente (AV:A) — ou seja, por padrão o atacante precisa estar na LAN ou ter acesso à interface de gerência, não é explorável direto da internet a menos que combinada com outra falha que exponha a interface via WAN. Está no catálogo KEV da CISA e foi incorporada a variantes do botnet Mirai.

Detalhamento técnico

A vulnerabilidade (CWE-77, command injection) está no callback de escrita ('write') do formulário 'country', acessado em /cgi-bin/luci/;stok=/locale?form=country. O parâmetro country enviado nessa operação é passado sem sanitização para uma chamada popen() no lado do dispositivo, que executa com privilégios de root.

O detalhe técnico relevante — e frequentemente omitido nos resumos — é que a execução não é imediata. O payload injetado no parâmetro country é apenas armazenado na primeira requisição (operation=write); a execução via popen() só ocorre quando esse valor é processado numa chamada subsequente ao mesmo endpoint. Isso exige duas requisições HTTP consecutivas para completar a exploração, não uma única.

O atacante controla integralmente o conteúdo do parâmetro country, o que permite injetar substituição de comando shell (por exemplo, sintaxe $(...)) que será interpretada pelo shell invocado via popen(). Como o processo roda como root, qualquer comando injetado herda esse privilégio, dando controle total do sistema operacional subjacente do roteador.

Como é explorada

O vetor de exploração é uma sequência de duas requisições POST para o endpoint /cgi-bin/luci/;stok=/locale?form=country, sem necessidade de autenticação — o token 'stok' vazio nesse caminho específico ('/locale') não exige sessão válida. A primeira requisição define o valor malicioso no parâmetro country; a segunda dispara a execução via popen(). Isso foi demonstrado publicamente com um PoC trivial que grava a saída do comando id em /tmp/out, confirmando execução como root.

O pré-requisito real que a manchete de CVSS 8.8 esconde: o vetor é AV:A (rede adjacente), ou seja, o atacante precisa ter acesso à rede local do roteador ou à interface de gerência exposta — não é, por si só, explorável remotamente pela internet. Isso muda drasticamente quando combinada com CVE-2023-27359 (ZDI-23-452): pesquisadores da ZDI documentaram que a combinação das duas falhas permite disparar o command injection através da interface WAN, sem exigir posição na LAN, o que eleva o risco de exposição direta à internet.

Há exploração ativa confirmada: a vulnerabilidade foi incorporada a variantes do botnet Mirai (conforme blog da Zero Day Initiative de abril de 2023), o que motivou sua inclusão no catálogo KEV da CISA com prazo de correção de 22 de maio de 2023. Existem template Nuclei e PoC pública, o que reduz a barreira de exploração automatizada em massa para dispositivos com a interface de gerência exposta.

Versões

Afetadas
TP-Link Archer AX21 (AX1800), todas as versões de firmware anteriores a 1.1.4 Build 20230219.
Corrigidas em
1.1.4 Build 20230219 e versões posteriores.

Como se proteger

A correção definitiva é atualizar o firmware do Archer AX21 (AX1800) para a versão 1.1.4 Build 20230219 ou posterior, disponível na página de firmware do fabricante. O TP-Link corrigiu removendo o callback vulnerável — não é uma sanitização parcial, é remoção da função afetada.

Se a atualização não for possível de imediato, o paliativo real é impedir acesso à interface de administração web: desabilitar gerenciamento remoto/WAN (se estiver habilitado, é a condição que, combinada com CVE-2023-27359, permite exploração direta da internet) e restringir acesso à interface de gerência apenas à LAN confiável, idealmente segmentada de outros dispositivos IoT. Isso reduz a superfície mas não elimina o risco para qualquer host que tenha acesso à LAN do roteador.

Não existe mitigação por configuração de firewall no próprio roteador que neutralize a falha em si, já que o vetor é a própria interface de gerência do dispositivo — não há como filtrar seletivamente o parâmetro country sem alterar o firmware.

Como detectar

Dispositivos SOHO como o Archer AX21 tipicamente não mantêm logs de acesso web acessíveis ou centralizados, o que limita a detecção retroativa em ambientes domésticos. Onde há visibilidade de tráfego (por exemplo, monitoramento de rede voltado à LAN do dispositivo ou logs de proxy/gateway), o sinal a procurar é requisições POST repetidas para /cgi-bin/luci/;stok=/locale?form=country com o parâmetro country contendo metacaracteres de shell (cifrão, parênteses, ponto e vírgula, crase, pipe) e o padrão de duas requisições consecutivas idênticas ou correlacionadas ao mesmo endpoint em curto intervalo, característico do PoC público e das varreduras automatizadas de botnets como Mirai.

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.
TP-Link Archer AX21 (AX1800) firmware versions before 1.1.4 Build 20230219 contained a command injection vulnerability in the country form of the /cgi-bin/luci;stok=/locale endpoint on the web management interface. Specifically, the country parameter of the write operation was not sanitized before being used in a call to popen(), allowing an unauthenticated attacker to inject commands, which would be run as root, with a simple POST request.
CVSS:3.1/AV:A/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.