CVEs do PHP, Node, certificados e confusão na lista do Linux

Mais uma daquelas semanas onde anos de vulnerabilidades acumuladas são jogados na nossa cabeça de uma vez e a gente precisa correr pra atualizar nossos sistemas. Vamos falar de PHP, Node, certificados e Linux.

Veja também no canal:

Errata: no vídeo eu me refiro ao bug dos certificados como sendo do NodeJS, mas ele é de todos os navegadores, sistemas operacionais e etc… 🤡

PHP2Shell

Explicação Simples:

  • Duas vulnerabilidades críticas (CVSS v4.0 9,2), CVE-2026-109618 e CVE-2026-109619, permitem que um atacante execute código remotamente, sem autenticação. Os detalhes vazaram antes da divulgação coordenada e pesquisadores já reproduziram o CVE-2026-109618, o que torna a urgência alta.

  • As falhas envolvem corrupção de memória: após uma requisição interrompida (por exemplo, por falta de memória ou erro fatal), o PHP mantém dados inválidos no buffer e depois os acessa. Um dos vetores confirmados usa o recurso session.upload_progress, ativado por padrão. Podem afetar aplicações como WordPress, Drupal e Joomla quando executadas em versões vulneráveis do PHP.

    NHS England Digital

Sistemas afetados:

  • PHP 8.5 anterior à 8.5.12.
  • PHP 8.4 anterior à 8.4.27.
  • PHP 8.3 anterior à 8.3.36.
  • PHP 8.2 anterior à 8.2.35.
  • PHP 8.1 e anteriores (desde o PHP 5) também são vulneráveis, mas estão fora do suporte oficial. Para o PHP 7.4, 8.0 e 8.1, a equipe do PHP publicou backports mínimos de código-fonte, para quem compila manualmente.

Em Debian, Ubuntu e derivados:

sudo apt update
sudo apt upgrade
php -v

Confira se a versão instalada contém a correção. Distribuições podem aplicar correções retroativas sem alterar o número principal da versão. Reinicie o PHP-FPM ou o servidor web para que os processos carreguem o código corrigido. Em contêineres, atualize a imagem PHP e recrie os contêineres.

Mitigações:

  • Como medida apenas parcial, desative session.upload_progress.enabled = Off no php.ini e recarregue o PHP; isso não impede a execução remota. Se não puder atualizar imediatamente, restrinja o acesso público ao serviço vulnerável ou retire-o temporariamente da internet.

  • Atualizar para uma versão corrigida é a única solução definitiva; desenvolvedores do núcleo do PHP afirmam que não há outra mitigação completa. CERT-EU

  • Um pouco sobre a maneira loucurada que o negócio foi liberado:

https://www.theverge.com/tech/1016798/php-vulnerabilities-exploit-patch


Node.js: execução remota de código via Brotli

Explicação Simples:

  • A vulnerabilidade CVE-2026-111497, na biblioteca Brotli embutida no Node.js, permite que dados Brotli maliciosos provoquem uma escrita fora dos limites da memória durante a decodificação. A exploração exige que a aplicação descompacte dados Brotli controlados pelo atacante.
  • Em condições exploráveis, um atacante pode causar corrupção de memória e executar código com as permissões do processo Node.js.
  • A atualização de 21/10/2026 corrige 10 vulnerabilidades (quatro de alta severidade), incluindo bypass da validação de hostname em certificados TLS (CVE-2026-105483 e CVE-2026-106069), e remove do repositório de CAs a confiança ligada ao comprometimento da CA intermediária eMudhra. Não há exploração ativa reportada. Node.js

Sistemas afetados:

Versões anteriores às seguintes correções:

  • Node.js 22.23.4
  • Node.js 24.22.1
  • Node.js 26.12.1

Versões fora de suporte, como o Node.js 20 (fim da vida em 30/04/2026) e o 25 (01/06/2026), também devem ser consideradas vulneráveis.

Como atualizar:

Se utiliza NVM:

nvm install 22.23.4
nvm use 22.23.4
nvm alias default 22.23.4
node -v

Se utiliza Node.js 24 ou 26, instale a versão corrigida correspondente à sua linha. Reinicie os processos e serviços Node.js para que utilizem a versão atualizada. Em contêineres, reconstrua a imagem e refaça o deploy.

Se utiliza PM2, atualize também o ambiente dos processos gerenciados:

pm2 update
pm2 restart all

Mitigações:

  • Evite processar conteúdo Brotli não confiável enquanto não puder atualizar.
  • Restrinja o acesso às aplicações expostas à internet.
  • Na Vercel eles fizeram deploy de um WAF que bloqueia padrões conhecidos de exploração, mas não substitui a atualização. Vercel

Vulnerabilidades críticas no Kernel do Linux:

  • Notícia sobre e discussão:

https://www.phoronix.com/news/LKML-New-Trend-Vulnerabilities

  • Comentário que MAIS OU MENOS e de maneira um pouco jocosa explica cada uma delas:

ZDI-CAN-33549 & ZDI-CAN-33774 affects KSMBD. It only affects you if you're a degenerate speed freak that runs Samba in the kernel.

ZDI-CAN-33367 only affects you if you have unprivileged user namespaces enabled. Rootless containers and Flatpak use them.

ZDI-CAN-34068 only affects you if you use VMware, which is used by baby boomers.

ZDI-CAN-32005 affects connman in Ubuntu. Why is this a Linux bug?

ZDI-CAN-34076 can be mitigated by blocking loading of nvmet* modules.

  • As correções definitivas até a data de hoje (23/10/26) ainda não estão no kernel. Quem usa KSMBD, vmware, nvmet