Proteja seu Oracle Linux 9 contra as vulnerabilidades do kernel CVE-2026-31504, CVE-2026-31533, CVE-2026-31669 e outras. Guia completo com comandos para verificar sua versão, script de automação para atualização segura, mitigação alternativa com iptables sem reinicialização e recomendações de leitura para administradores de sistemas Linux.
O que você precisa saber sobre as falhas de segurança recentes
Em meados de 2026, a Oracle divulgou o boletim ELSA-2026-50318, corrigindo cinco vulnerabilidades críticas no kernel do Oracle Linux 9.
Embora a data específica do anúncio seja apenas um marco histórico, as lições e procedimentos deste guia permanecem válidos enquanto você estiver executando versões vulneráveis do kernel.
As falhas corrigidas incluem:
Todas essas vulnerabilidades compartilham um padrão comum: falhas de gerenciamento de memória que podem ser exploradas por um atacante local ou remoto para derrubar o sistema ou, em cenários piores, executar código arbitrário.
Como verificar se você está vulnerável
Antes de mais nada, descubra qual versão do kernel está rodando no seu sistema:
uname -r
Compare a saída com a versão corrigida: 5.15.0-321.202.5.2.el9uek. Se a sua versão for anterior a esta, você está vulnerável.
Para verificar pacotes específicos instalados:
rpm -q kernel-uek
Para sistemas com Ksplice (atualização sem reinicialização):
sudo ksplice -V sudo ksplice check
Verificação rápida com um comando único
echo "Kernel atual: $(uname -r)" && \ rpm -q kernel-uek --qf "Pacote instalado: %{VERSION}-%{RELEASE}\n" && \ echo "Versão segura: 5.15.0-321.202.5.2.el9uek"
Script de automação para aplicar a correção
O script abaixo verifica, baixa e instala a atualização do kernel de forma segura. Execute como root ou com sudo.
#!/bin/bash # Oracle Linux 9 Kernel Security Update Automation # ELSA-2026-50318 - Kernel vulnerability mitigation # Run as root or with sudo set -e RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' NC='\033[0m' echo "==============================================" echo " Oracle Linux 9 Kernel Security Update" echo " ELSA-2026-50318" echo "==============================================" # Check current kernel CURRENT_KERNEL=$(uname -r) echo -e "${YELLOW}[INFO]${NC} Current kernel: $CURRENT_KERNEL" # Target secure version SECURE_VERSION="5.15.0-321.202.5.2.el9uek" if [[ "$CURRENT_KERNEL" == "$SECURE_VERSION"* ]]; then echo -e "${GREEN}[OK]${NC} System is already running the secure kernel version." exit 0 fi echo -e "${YELLOW}[WARN]${NC} System is running an outdated kernel." # Check for available updates echo -e "${YELLOW}[INFO]${NC} Checking for available kernel updates..." sudo dnf check-update kernel-uek --refresh || true # Install the kernel update echo -e "${YELLOW}[INFO]${NC} Installing kernel-uek update..." sudo dnf update -y kernel-uek # Verify installation INSTALLED_VERSION=$(rpm -q kernel-uek --qf "%{VERSION}-%{RELEASE}\n" | head -1) echo -e "${YELLOW}[INFO]${NC} Installed package: $INSTALLED_VERSION" echo "==============================================" echo -e "${GREEN}[SUCCESS]${NC} Kernel package updated." echo -e "${YELLOW}[ACTION REQUIRED]${NC} Reboot the system to load the new kernel:" echo " sudo reboot" echo "=============================================="
chmod +x update-kernel.sh sudo ./update-kernel.sh
sudo reboot
uname -r # Deve mostrar: 5.15.0-321.202.5.2.el9uek ou superior
📗 Recomendação de Leitura
Segurança em servidores Linux: Ataque e Defesa (anúncio) -> https://amzn.to/4ewrCbr
Se você prefere estudar em português e quer aprender a "pensar como um hacker" para se antecipar a invasões, essa é a pedida! O livro ensina a usar as ferramentas prediletas dos invasores (como Nmap e Netcat) a seu favor, blindando seus sistemas.
Eu ganho uma comissão quando você faz uma compra.
Se você não pode reiniciar o sistema neste momento, algumas medidas paliativas podem reduzir o risco de exploração:
As vulnerabilidades afetam principalmente subsistemas de rede (TLS, packet sockets, MPTCP, tap). Bloquear tráfego não essencial pode dificultar a exploração:
# Bloquear pacotes raw (AF_PACKET) de fontes não confiáveis sudo iptables -A INPUT -p all -m owner ! --uid-owner root -m string --algo bm --string "PACKET" -j DROP 2>/dev/null || true # Restringir acesso a portas sensíveis sudo iptables -A INPUT -p tcp --dport 443 -m state --state NEW -m recent --set sudo iptables -A INPUT -p tcp --dport 443 -m state --state NEW -m recent --update --seconds 60 --hitcount 10 -j DROP # Bloquear tráfego MPTCP se não for utilizado sudo iptables -A INPUT -p tcp --mptcp -j DROP sudo iptables -A OUTPUT -p tcp --mptcp -j DROP # Salvar regras (persistente) sudo service iptables save
Desabilitar módulos do kernel não utilizados
# Desabilitar MPTCP echo "blacklist mptcp" | sudo tee /etc/modprobe.d/blacklist-mptcp.conf sudo modprobe -r mptcp 2>/dev/null || true # Desabilitar TLS (se não for utilizado) echo "blacklist tls" | sudo tee /etc/modprobe.d/blacklist-tls.conf
# Limitar conexões para reduzir superfície de ataque sudo sysctl -w net.core.somaxconn=256 sudo sysctl -w net.ipv4.tcp_max_syn_backlog=256 sudo sysctl -w net.ipv4.tcp_syncookies=1 # Tornar persistente echo "net.core.somaxconn=256" | sudo tee -a /etc/sysctl.conf echo "net.ipv4.tcp_max_syn_backlog=256" | sudo tee -a /etc/sysctl.conf echo "net.ipv4.tcp_syncookies=1" | sudo tee -a /etc/sysctl.conf
AppArmor/SELinux
sudo setenforce 1 sudo getenforce

Nenhum comentário:
Postar um comentário