Nova falha no PHP pode permitir que invasores invadam sites rodando em servidores Nginx

Se você estiver executando qualquer site baseado em PHP no servidor NGINX e tiver o recurso PHP-FPM ativado para obter melhor desempenho, tenha cuidado com uma vulnerabilidade recentemente divulgada que pode permitir que invasores não autorizados invadam seu servidor remotamente.

A vulnerabilidade, rastreada como CVE-2019-11043, afeta sites com determinadas configurações de PHP-FPM que, segundo informações, não são incomuns e podem ser exploradas facilmente como uma exploração de prova de conceito (PoC) para a falha divulgado publicamente.

O PHP-FPM é uma implementação alternativa do PHP FastCGI que oferece processamento avançado e altamente eficiente para scripts escritos na linguagem de programação PHP.

A principal vulnerabilidade é um problema de corrupção de memória “env_path_info” no módulo PHP-FPM, e encadeá-lo a outros problemas pode permitir que invasores executem remotamente código arbitrário em servidores Web vulneráveis.

A vulnerabilidade foi identificada por Andrew Danau, pesquisador de segurança em Wallarm, enquanto procurava por bugs no concurso Capture The Flag, que foi armado por dois de seus colegas pesquisadores, Omar Ganiev e Emil Lerner, para desenvolver uma exploração de execução remota de código totalmente funcional .

Quais sites baseados em PHP são vulneráveis ​​a hackers?

Embora a exploração PoC lançada publicamente seja projetada para direcionar especificamente servidores vulneráveis ​​executando versões do PHP 7+, o bug de fluxo insuficiente do PHP-FPM também afeta as versões anteriores do PHP e pode ser armado de uma maneira diferente.

Em resumo, um site é vulnerável, se:

  • O NGINX está configurado para encaminhar solicitações de páginas PHP para o processador PHP-FPM,
  • A diretiva fastcgi_split_path_info está presente na configuração e inclui uma expressão regular começando com um símbolo ‘^’ e terminando com um símbolo ‘$’,
  • A variável PATH_INFO é definida com a diretiva fastcgi_param,
  • Não há verificações como try_files $ uri = 404 ou if (-f $ uri) para determinar se um arquivo existe ou não.

Essa configuração vulnerável de NGINX e PHP-FPM se parece com o seguinte exemplo:

hackers nginx php-fpm

Aqui, a diretiva fastcgi_split_path_info é usada para dividir o URL das páginas da Web PHP em duas partes, o valor de uma ajuda ao mecanismo PHP-FPM para aprender o nome do script e a outra contém as informações do caminho.

De acordo com os pesquisadores, a expressão regular de amostra, que define a diretiva fastcgi_split_path_info, como mostrado, pode ser manipulada usando o caractere de nova linha, de forma que a função de divisão eventualmente esvazie as informações do caminho.

Em seguida, como existe um ponteiro aritmético no código FPM que pressupõe incorretamente que env_path_info tenha um prefixo igual ao caminho para o script php sem realmente verificar a existência do arquivo no servidor, o problema pode ser explorado por um invasor para substituir dados na memória solicitando URLs especialmente criados dos sites de destino.

hackers php-fpm
Hack de execução de código php-fpm

Em segundo plano, os pesquisadores do PoC exploit [ 1  (PHuiP-FPizdaM), 2 ] lançaram cadeias juntos esses dois problemas para manipular a memória e adicionar valores personalizados do php.ini, conforme mostrado na captura de tela, no arquivo de configuração PHP-FPM de um servidor de destino, permitindo que os invasores executem código arbitrário usando um shell da web.

“Usando um comprimento cuidadosamente escolhido do caminho da URL e da string de consulta, um invasor pode fazer o path_info apontar precisamente para o primeiro byte da estrutura _fcgi_data_seg. Colocar zero nele move o campo` char * pos` para trás e depois FCGI_PUTENV substitui alguns dados (incluindo outras variáveis ​​rápidas do cgi) com o caminho do script “, disseram os pesquisadores em um relatório de bug enviado ao projeto PHP.

“Usando esta técnica, eu consegui criar uma variável falsa do PHP_VALUE fcgi e depois usar uma cadeia de valores de configuração cuidadosamente escolhidos para obter a execução do código.”

Atualizações do PHP 7 lançadas para corrigir falha do FPM

A lista de pré-condições para uma exploração bem-sucedida, como mencionado acima, não é incomum, porque as configurações vulneráveis ​​estão sendo usadas por alguns dos provedores de hospedagem na web e estão disponíveis na Internet como parte de muitos tutoriais sobre PHP FPM.

Um tal provedor de web hosting afetada é Nextcloud que lançou um consultivo ontem alertando seus usuários que “a configuração Nextcloud NGINX padrão também é vulnerável a este ataque” e recomendando os administradores de sistema a tomar medidas imediatas.

Um patch para esta vulnerabilidade foi lançada semana passada, quase um mês depois que os pesquisadores o reportaram à equipe de desenvolvedores do PHP.

Como a exploração do PoC já está disponível e o patch foi lançado ontem, é provável que os hackers já tenham começado a verificar a Internet em busca de sites vulneráveis.

Portanto, é altamente recomendável que os usuários atualizem o PHP para os mais recentes PHP 7.3.11 e PHP 7.2.24. Faça isso, mesmo se você não estiver usando a configuração vulnerável.

O post Nova falha no PHP pode permitir que invasores invadam sites rodando em servidores Nginx apareceu primeiro em Mundo Hacker.




Fonte: http://feedproxy.google.com/~r/mundohackeroficial/~3/NCDdMJ-E9MA/
Nova falha no PHP pode permitir que invasores invadam sites rodando em servidores Nginx Nova falha no PHP pode permitir que invasores invadam sites rodando em servidores Nginx Reviewed by MeuSPY on outubro 29, 2019 Rating: 5

Nenhum comentário:

Antes de deixar um comentário, acesse o site meuspy.com e veja como é fácil espionar celulares.

Tecnologia do Blogger.