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