Vulnerabilidades na interface web de dispositivos de rede Juniper, fornecidos com JunOS

No web interface J-Web, que é usado em dispositivos de rede da Juniper equipados com o sistema operacional JunOS, foram identificadas várias vulnerabilidades, sendo a mais grave (CVE-2022-22241) que permite a execução remota de código na sistema sem autenticação através do envio de uma solicitação HTTP especialmente formatada. Recomenda-se que os usuários do equipamento Juniper instalem as atualizações de firmware; caso isso não seja possível, devem garantir que o acesso à interface web esteja bloqueado de redes externas e limitado apenas a hosts confiáveis.

A essência da vulnerabilidade está no fato de que o caminho de arquivo fornecido pelo usuário é processado no script /jsdm/ajax/logging_browse.php sem a filtragem do prefixo do tipo de conteúdo antes da verificação de autenticação. Um invasor pode enviar um arquivo phar malicioso disfarçado como uma imagem e conseguir executar o código PHP contido no arquivo phar, utilizando o método de ataque de "desserialização Phar" (por exemplo, especificando na solicitação "filepath=phar:/caminho/pharfile.jpg").

O problema é que, ao verificar o arquivo enviado utilizando a função PHP is_dir(), essa função automaticamente desserializa os metadados do arquivo Phar (PHP Archive) ao processar caminhos que começam com "phar://". Um efeito semelhante é observado ao processar os caminhos de arquivo fornecidos pelo usuário nas funções file_get_contents(), fopen(), file(), file_exists(), md5_file(), filemtime() e filesize().

O ataque é complicado pelo fato de que, além de iniciar a execução do arquivo phar, o invasor deve encontrar uma forma de carregá-lo no dispositivo (através da chamada a /jsdm/ajax/logging_browse.php, ele pode apenas especificar o caminho para executar um arquivo já existente). Entre os cenários possíveis para a infiltração de arquivos no dispositivo estão o carregamento de um arquivo phar disfarçado como uma imagem via um serviço de transferência de imagens e a injeção de arquivo no cache do conteúdo web.

Outras vulnerabilidades:

  • CVE-2022-22242 — injeção de parâmetros externos não filtrados na saída do script error.php, permitindo a exploração de script entre sites e a execução de código JavaScript arbitrário no navegador do usuário ao acessar o link (por exemplo, "https://JUNOS_IP/error.php?SERVER_NAME=<script>alert(0)<\/script>"). A vulnerabilidade pode ser utilizada para interceptar parâmetros de sessão do administrador, se o invasor conseguir forçar o administrador a abrir um link especificamente formatado.
  • CVE-2022-22243, CVE-2022-22244 – a injeção de expressões XPATH através dos scripts jsdm/ajax/wizards/setup/setup.php e /modules/monitor/interfaces/interface.php, permite que um usuário autenticado não privilegiado manipule sessões de administrador.
  • CVE-2022-22245 – a falta de limpeza adequada da sequência ".." nos caminhos processados no script Upload.php permite que um usuário autenticado carregue seu arquivo PHP em um diretório que permite a execução de scripts PHP (por exemplo, passando o caminho "fileName=\..\..\..\..\www\dir\new\shell.php").
  • CVE-2022-22246 – a possibilidade de execução de um arquivo PHP local arbitrário através da manipulação do script jrest.php por um usuário autenticado, onde parâmetros externos são utilizados para formar o nome do arquivo carregado pela função "require_once()" (por exemplo, "/jrest.php?payload=alol/lol/any\..\..\..\..\any\file").

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster