==== 🚨 Introdução ==== Uma vulnerabilidade crítica identificada como **CVE-2026-31431 ("Copy Fail")** afeta diversas versões do kernel Linux utilizadas pelo **Proxmox VE**. A falha permite que um usuário local comum consiga realizar **escalação de privilégios até root**, explorando um problema relacionado ao mecanismo de cópia de memória no kernel Linux. ⚠️ Ambientes vulneráveis podem permitir comprometimento total do host Proxmox. Este procedimento demonstra: * Como identificar ambientes vulneráveis * Como validar a versão do kernel * Como atualizar corretamente * Cuidados antes da atualização * Processo recomendado de reboot e validação ==== 🚧 Motivação e Problemática ==== Mesmo ambientes totalmente funcionais podem estar vulneráveis silenciosamente. A falha "Copy Fail": * 🔓 Permite escalação local para root * ⚠️ Possui PoC pública funcional * 🧨 Afeta kernels antigos e recentes * ☁️ Impacta ambientes locais e cloud * 🖥️ Pode comprometer clusters completos 🎯 Em ambientes virtualizados, a atualização do kernel deve ser tratada como prioridade operacional. ---- ==== 📌 Versões potencialmente vulneráveis ==== A vulnerabilidade afeta kernels Linux desde: * Kernel **4.14** * Até versões anteriores a: * ✅ 6.17.12 * ✅ 6.19.12 * ✅ 7.0 ---- ==== 📊 Relação Proxmox VE x Kernel ==== ^ Proxmox VE ^ Kernel principal ^ Status ^ | PVE 6.x | 5.0 / 5.4 | ❌ Vulnerável | | PVE 7.x | 5.13 / 5.15 | ❌ Vulnerável | | PVE 8.0 | 6.2 | ❌ Vulnerável | | PVE 8.1 | 6.5 | ❌ Vulnerável | | PVE 8.2 / 8.3 / 8.4 | 6.8 | ⚠️ Vulnerável sem patch | | PVE 9.0 | 6.14 | ⚠️ Vulnerável sem patch | | PVE 9.1+ | 6.17+ | ✅ Corrigido | 📌 Mesmo usando kernels vulneráveis, o ambiente pode estar protegido caso o pacote do kernel tenha recebido backport da correção. ---- ==== 🔎 Como identificar se o host está vulnerável ==== ==== 🖥️ Verificar kernel atual ==== uname -r Exemplos: ^ Kernel ^ Status ^ | 5.15.x-pve | ❌ Vulnerável | | 6.8.x-pve | ❌ Vulnerável | | 6.14.x-pve | ❌ Vulnerável | | 6.17.12+ | ✅ Corrigido | | 7.0+ | ✅ Corrigido | ---- ==== 📦 Verificar pacote do kernel instalado ==== apt list --installed | grep pve-kernel 🎯 O ideal é manter sempre o pacote `proxmox-kernel` mais recente disponível no repositório oficial. ---- ==== 🧩 Atualização segura em ambientes de produção ==== Antes de iniciar qualquer atualização, é importante entender um ponto crítico: Este procedimento trata inicialmente da atualização do host Proxmox VE e do kernel Linux relacionado à vulnerabilidade CVE-2026-31431. Muitos ambientes corporativos possuem aplicações legadas ou críticas que: * Dependem de versões específicas * Não suportam upgrades de versão * Possuem risco de incompatibilidade * Não podem sofrer mudanças bruscas Exemplos comuns: * Apache * PHP * Banco de dados * ERP * Sistemas fiscais * Aplicações legadas * Middleware * Containers críticos ⚠️ Atualização de segurança NÃO significa obrigatoriamente upgrade de versão da aplicação. ---- ==== 🎯 Entendendo a diferença ==== ^ Tipo de atualização ^ Objetivo ^ Risco ^ | Security Patch | Corrigir falhas e CVEs | ✅ Baixo | | Upgrade de versão | Alterar versão da aplicação | ⚠️ Médio/alto | | Upgrade de distribuição | Migrar Debian/Ubuntu/Proxmox | 🚨 Alto | ---- ==== ✅ Estratégia recomendada ==== Quando o ambiente não pode sofrer mudanças de versão: * ✅ Atualize apenas pacotes de segurança * ✅ Mantenha versões homologadas * ✅ Evite upgrade de distribuição * ✅ Evite troca de major version * ✅ Trabalhe com backports oficiais * ✅ Faça homologação antes ---- ==== 📦 Atualização conservadora recomendada ==== ==== Atualizar índice de pacotes ==== apt update ---- ==== Aplicar atualizações seguras ==== apt upgrade -y 🎯 O comando `upgrade` aplica atualizações sem forçar remoções ou mudanças agressivas de dependência. ---- ==== 🚫 Evite inicialmente ==== apt full-upgrade Ou: do-release-upgrade Ou ainda: * Upgrade Debian 11 → 12 * Upgrade Proxmox 7 → 8 * Upgrade Proxmox 8 → 9 ⚠️ Upgrade de distribuição deve ser tratado como projeto separado de migração. ---- ==== 🔍 Sobre backport de segurança ==== Distribuições enterprise normalmente corrigem vulnerabilidades sem alterar a versão principal do software. Exemplo: * Apache continua Apache 2.4 * PHP continua PHP 8.1 * Kernel continua 6.8 * Mas recebem patches de segurança internamente Isso reduz: * Quebra de compatibilidade * Mudança de comportamento * Impacto operacional ---- ==== 🖥️ E as VMs Linux? ==== Além do host Proxmox, as VMs Linux também podem estar vulneráveis. Exemplos: * Debian * Ubuntu * AlmaLinux * Rocky Linux * Oracle Linux * CentOS Stream Nesse cenário: * O host precisa ser atualizado * As VMs Linux também precisam receber patches * O kernel interno das VMs pode exigir reboot ⚠️ Atualizar apenas o host Proxmox NÃO corrige kernels vulneráveis dentro das máquinas virtuais Linux. ---- ==== ☁️ Recomendação para clusters ==== Em ambientes clusterizados: * 🔄 Migrar VMs antes da manutenção * 🧪 Atualizar um host por vez * 📦 Validar HA e CEPH * 🚀 Utilizar Live Migration quando possível * 📋 Planejar janela de manutenção 🎯 O objetivo é reduzir indisponibilidade e evitar impacto operacional durante o reboot dos hosts. ---- ==== 🧠 Recomendações antes da atualização ==== Antes de atualizar: * 📋 Planeje uma janela de manutenção * 🧪 Valide em laboratório quando possível * 📦 Confirme snapshots e backups * 🖥️ Avalie impacto em VMs críticas * 🔄 Verifique status do cluster * 📡 Garanta acesso remoto alternativo (IPMI/iDRAC/iLO) ⚠️ Atualizações de kernel exigem reboot do host para aplicação completa da correção. ---- ==== 🚀 Atualização recomendada ==== ==== 📥 Atualizar repositórios ==== apt update ---- ==== ⬆️ Atualizar pacotes ==== apt upgrade -y 🎯 Utilize inicialmente `apt upgrade` para ambientes críticos e sensíveis. ---- ==== 🔍 Validar novo kernel instalado ==== proxmox-boot-tool kernel list Ou: dpkg --list | grep pve-kernel ---- ==== 🔄 Reiniciar o host ==== reboot ⚠️ Sem reboot o novo kernel NÃO será carregado. ---- ==== ✅ Validação após reboot ==== Após retornar: uname -r Confirme se o kernel carregado corresponde à versão corrigida. ---- ==== 🧪 Validar saúde do cluster ==== ==== Verificar status ==== pvecm status ---- ==== Validar serviços ==== systemctl status pveproxy systemctl status pvedaemon systemctl status pve-cluster ---- ==== 📌 Boas práticas adicionais ==== * 🔒 Restringir acesso shell local * 🛡️ Utilizar autenticação MFA * 📦 Manter repositórios oficiais ativos * 📈 Monitorar CVEs do Proxmox e Debian * 🔄 Atualizar periodicamente o cluster * 🧪 Testar updates primeiro em LAB 💡 Ambientes virtualizados devem possuir rotina periódica de atualização preventiva. ---- ==== ❓ FAQ ==== * **Preciso atualizar todos os nós do cluster?** ✅ Sim. Todos os hosts devem ser atualizados. * **A VM precisa reiniciar?** ⚠️ Sim, indiretamente. Como o reboot ocorre no host Proxmox, todas as VMs hospedadas nele serão impactadas. ✅ Em ambientes com cluster, recomenda-se: * Migrar as VMs para outro nó antes da manutenção * Utilizar Live Migration sempre que possível * Validar HA/CEPH antes da operação * Atualizar um host por vez ⚠️ Importante: Caso as VMs também utilizem Linux vulnerável ao CVE-2026-31431, será necessário atualizar e reiniciar o sistema operacional interno das VMs. Exemplos: * Debian * Ubuntu * Rocky Linux * AlmaLinux * Oracle Linux * CentOS Stream 🎯 Atualizar apenas o host Proxmox não corrige kernels vulneráveis dentro das máquinas virtuais Linux. * **Posso atualizar sem reboot?** ⚠️ Não. O kernel antigo continuará carregado. * **Quem usa PVE 6 ou 7 deve se preocupar?** 🚨 Sim. São os ambientes mais expostos. * **Backport protege mesmo em kernel antigo?** ✅ Sim, desde que o pacote atualizado esteja instalado. ---- ==== 📚 Sobre o Projeto Empresa Livre ==== Este conteúdo faz parte das trilhas práticas do **Projeto Empresa Livre**. * 🎓 Formação prática em Proxmox VE * 🖥️ Ambientes reais de laboratório * ☁️ Cluster, CEPH, Backup e HA * 📦 Atualizações e hardening * 💬 Comunidade e suporte técnico Instagram: [[https://instagram.com/caiomonteiro.ti|@caiomonteiro.ti]] Saiba mais: [[https://www.projetoempresalivre.com.br/projeto-empresa-livre|Projeto Empresa Livre]]