7.2.27
7.3.14
7.4.2
A vulnerabilidade CVE-2020-7059 refere-se a um buffer overflow na função fgetss() do PHP. Ao processar dados com remoção de tags, é possível fornecer dados que levam a função a ler além do buffer alocado, resultando em possível divulgação de informações ou falha do sistema. As versões afetadas são as 7.2.0 até 7.2.27, 7.3.x até 7.3.14 e 7.4.x até 7.4.2. A correção foi implementada na versão 7.4.2 do PHP.
A vulnerabilidade CVE-2020-7059 no PHP afeta as versões 7.2.x anteriores a 7.2.27, 7.3.x anteriores a 7.3.14 e 7.4.x anteriores a 7.4.2. Ela é explorada ao usar a função fgetss() para ler dados com a remoção de tags habilitada. Um atacante pode fornecer dados especialmente elaborados que fazem com que fgetss() leia além do buffer alocado. Isso pode levar à divulgação de informações (dados sensíveis sendo expostos) ou ao travamento da aplicação PHP. A pontuação CVSS para esta vulnerabilidade é 6.5, indicando um problema de gravidade média. O cerne do problema reside em como fgetss() lida com tags e limites de buffer, permitindo leituras fora dos limites sob condições específicas.
A vulnerabilidade é acionada quando fgetss() recebe entrada controlada pelo atacante contendo tags que, quando processadas, fazem com que ocorra uma leitura além do buffer alocado. Isso requer que a aplicação PHP aceite entrada que seja subsequentemente processada com fgetss() e strip_tags(). A exploração bem-sucedida pode permitir que um atacante leia dados confidenciais da memória do servidor, incluindo potencialmente senhas, chaves de API ou outras informações confidenciais. A complexidade da exploração depende da estrutura dos dados de entrada e da configuração do servidor PHP.
Web applications relying on PHP versions 7.2.x, 7.3.x, or 7.4.x, particularly those that process user-supplied data with tag stripping enabled, are at risk. Shared hosting environments where multiple applications share the same PHP installation are also at increased risk, as a vulnerability in one application could potentially impact others.
• php: Examine PHP error logs for stack traces indicating buffer overflows or memory access violations when using fgetss() with tag stripping.
grep -i 'fgetss' /var/log/php_errors.log• linux / server: Monitor system resource usage (CPU, memory) for sudden spikes that could indicate a denial-of-service attack triggered by the vulnerability. Use top or htop to observe resource consumption.
• generic web: Inspect web application logs for unusual requests or error messages related to data processing or tag stripping. Use tools like tcpdump or Wireshark to analyze network traffic for suspicious patterns.
disclosure
Status do Exploit
EPSS
2.37% (percentil 85%)
Vetor CVSS
A mitigação mais eficaz para CVE-2020-7059 é atualizar para uma versão corrigida do PHP. Isso significa atualizar para o PHP 7.2.27 ou posterior, PHP 7.3.14 ou posterior ou PHP 7.4.2 ou posterior. Se uma atualização imediata não for possível, revise o código que utiliza fgetss() para identificar possíveis vetores de ataque. A implementação de validação e higienização rigorosas de entrada pode ajudar a prevenir a exploração, embora não seja uma solução completa. Monitore regularmente os logs do servidor em busca de comportamento incomum, o que também pode ajudar a detectar tentativas de exploração.
Actualice a la última versión de PHP. Si está utilizando las versiones 7.2.x, actualice a la versión 7.2.27 o superior. Si está utilizando las versiones 7.3.x, actualice a la versión 7.3.14 o superior. Si está utilizando las versiones 7.4.x, actualice a la versión 7.4.2 o superior.
Análise de vulnerabilidades e alertas críticos diretamente no seu e-mail.
fgetss() é uma função PHP que lê uma linha de um fluxo de dados, removendo tags HTML. É útil para limpar dados de entrada, mas, neste caso, sua implementação é vulnerável.
As atualizações do PHP geralmente incluem correções de segurança críticas. Atualizar é a melhor maneira de proteger sua aplicação contra vulnerabilidades conhecidas como CVE-2020-7059.
Sim, existem funções alternativas para ler linhas de um fluxo de dados, como fgets(), embora possam exigir processamento adicional para remover tags.
Revise seu código para identificar qualquer uso de fgetss() em versões vulneráveis do PHP. Você também pode usar ferramentas de verificação de segurança para detectar vulnerabilidades.
Isole imediatamente o servidor afetado, realize uma auditoria de segurança completa e restaure a partir de um backup limpo.
Envie seu arquivo de dependências e descubra na hora se esta e outras CVEs te atingem.