Vulnerabilidades no strongSwan podem comprometer sua VPN no openSUSE. Aprenda a verificar, corrigir e mitigar falhas com comandos reais, script de automação e estratégias de contingência. Proteja seu servidor agora — e daqui a anos. Guia prático para administradores Linux.
Em junho de 2026, a SUSE divulgou o aviso de segurança SUSE-SU-2026:2459-1, que trouxe à tona oito vulnerabilidades no strongSwan — o popular daemon IPsec usado em VPNs e roteadores Linux.
Duas delas, CVE-2026-35328 (loop infinito na extensão TLS) e CVE-2026-47895 (dupla liberação de memória), receberam classificação de gravidade importante.
Mas este artigo não é sobre a data. É sobre o que você faz agora — e daqui a seis meses, quando outra vulnerabilidade aparecer. O objetivo é que você saia daqui com comandos, scripts e estratégias para proteger seu openSUSE contra falhas no strongSwan, sejam elas de 2026, 2027 ou 2030.
1. O que aconteceu (contexto histórico)
Em 18 de junho de 2026, a SUSE lançou um pacote atualizado do strongSwan (versão 5.9.11-150500.5.23.2) para corrigir oito CVEs em produtos como openSUSE Leap 15.5 e SUSE Linux Enterprise Server 15 SP5. As falhas incluem:
CVE Descrição resumida
CVE-2026-35328 Loop infinito ao processar extensão TLS
CVE-2026-35329 Desreferência de ponteiro nulo no PKCS#7
CVE-2026-35330 Estouro de inteiro em atributos EAP-SIM/AKA
CVE-2026-35331 Aceitação de certificados que violam restrições de nome
CVE-2026-35332 Ponteiro nulo no valor ECDH do TLS
CVE-2026-35333 Estouro de inteiro em atributos RADIUS
CVE-2026-35334 Possível ponteiro nulo na descriptografia RSA
CVE-2026-47895 Dupla liberação ao destruir identidades clonadas
O impacto prático? Um atacante remoto pode derrubar seu serviço VPN (DoS) ou, em cenários mais graves, executar código arbitrário.
2. Como verificar se você está vulnerável
Antes de aplicar qualquer correção, descubra se seu sistema está na linha de tiro.
2.1. Verifique a versão do strongSwan
strongswan version
Ou, para sistemas baseados em RPM:
rpm -qi strongswan | grep Version
Se a versão for anterior à 5.9.11-150500.5.23.2 e você estiver no openSUSE Leap 15.5 ou SUSE SLES 15 SP5, seu sistema está vulnerável.
2.2. Verifique se o patch já foi aplicado
zypper patches | grep -i strongswan
A saída deve mostrar o patch SUSE-2026-2459 se já estiver instalado
2.3. Teste rápido com um script de diagnóstico
#!/bin/bash # check_strongswan.sh - Verifica versão e status do patch no openSUSE echo "=== DIAGNÓSTICO strongSwan ===" # Versão instalada VERSION=$(rpm -qi strongswan 2>/dev/null | grep -i version | head -1 | awk '{print $3}') if [ -z "$VERSION" ]; then echo "[ERRO] strongSwan não está instalado." exit 1 fi echo "[OK] Versão instalada: $VERSION" # Comparação com a versão segura (openSUSE Leap 15.5) SAFE="5.9.11-150500.5.23.2" if [ "$VERSION" == "$SAFE" ]; then echo "[OK] Versão segura (patch aplicado)." elif [[ "$VERSION" < "5.9.11" ]]; then echo "[ALERTA] Versão ANTIGA - VULNERÁVEL!" else echo "[INFO] Versão diferente da referência. Verifique manualmente." fi # Verifica se o patch específico está instalado if zypper patches 2>/dev/null | grep -q "SUSE-2026-2459"; then echo "[OK] Patch SUSE-2026-2459 encontrado." else echo "[ALERTA] Patch SUSE-2026-2459 NÃO encontrado." fi echo "================================"
Dê permissão de execução e rode:
chmod +x check_strongswan.sh
./check_strongswan.sh#!/bin/bash # fix_strongswan.sh - Aplica a correção de segurança do strongSwan no openSUSE # Uso: sudo ./fix_strongswan.sh set -e # Para o script se algum comando falhar LOG_FILE="/var/log/strongswan_fix_$(date +%Y%m%d_%H%M%S).log" echo "=== INÍCIO DA CORREÇÃO strongSwan ===" | tee -a "$LOG_FILE" echo "Data: $(date)" | tee -a "$LOG_FILE" # 1. Verifica se o usuário tem privilégios if [ "$EUID" -ne 0 ]; then echo "[ERRO] Execute com sudo." | tee -a "$LOG_FILE" exit 1 fi # 2. Faz backup da configuração atual echo "[BACKUP] Salvando configurações em /etc/strongswan.backup.$(date +%Y%m%d)" | tee -a "$LOG_FILE" cp -r /etc/strongswan "/etc/strongswan.backup.$(date +%Y%m%d)" 2>/dev/null || echo "[AVISO] Diretório /etc/strongswan não encontrado." # 3. Atualiza os repositórios echo "[ZYPPER] Atualizando repositórios..." | tee -a "$LOG_FILE" zypper refresh | tee -a "$LOG_FILE" # 4. Aplica o patch específico (openSUSE Leap 15.5) echo "[PATCH] Aplicando SUSE-2026-2459..." | tee -a "$LOG_FILE" zypper in -t patch SUSE-2026-2459=1 2>&1 | tee -a "$LOG_FILE" # 5. Verifica se a instalação foi bem-sucedida if [ $? -eq 0 ]; then echo "[SUCESSO] Patch aplicado com sucesso!" | tee -a "$LOG_FILE" else echo "[ERRO] Falha na aplicação do patch. Verifique o log." | tee -a "$LOG_FILE" exit 1 fi # 6. Reinicia o serviço (se estiver em execução) if systemctl is-active --quiet strongswan; then echo "[SERVIÇO] Reiniciando strongSwan..." | tee -a "$LOG_FILE" systemctl restart strongswan | tee -a "$LOG_FILE" else echo "[SERVIÇO] strongSwan não estava em execução. Inicie manualmente se necessário." fi # 7. Verifica a versão final FINAL_VERSION=$(rpm -qi strongswan | grep -i version | head -1 | awk '{print $3}') echo "[VERIFICAÇÃO] Versão atual: $FINAL_VERSION" | tee -a "$LOG_FILE" echo "=== FIM DA CORREÇÃO ===" | tee -a "$LOG_FILE" echo "Log salvo em: $LOG_FILE"
Como usar:
chmod +x fix_strongswan.sh sudo ./fix_strongswan.sh
O script faz backup automático das configurações, aplica o patch, reinicia o serviço e gera um log completo em /var/log/. Se algo der errado, você tem o backup para restaurar.
📗 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.
4. Mitigação alternativa (caso não possa atualizar agora)
Nem sempre é possível reiniciar um servidor em produção ou aplicar um patch imediatamente. Se você precisa de uma solução temporária, aqui estão três abordagens.
4.1. Restringir acesso via iptables
Impede que atacantes externos explorem as falhas antes da atualização:
# Bloqueia conexões novas para a porta IPsec (500/4500) vindas de fora da rede interna iptables -A INPUT -p udp --dport 500 -s 192.168.0.0/16 -j ACCEPT iptables -A INPUT -p udp --dport 500 -j DROP iptables -A INPUT -p udp --dport 4500 -s 192.168.0.0/16 -j ACCEPT iptables -A INPUT -p udp --dport 4500 -j DROP
Ajuste a rede (192.168.0.0/16) para sua realidade. Isso reduz drasticamente a superfície de ataque.
4.2. Desabilitar extensões TLS vulneráveis (se aplicável)
Algumas CVEs afetam o manuseio de extensões TLS. Você pode desabilitar TLS no strongSwan temporariamente:
# No arquivo /etc/strongswan/strongswan.conf charon { # Desabilita TLS para autenticação EAP tls { enable = no } }
Reinicie o serviço: systemctl restart strongswan.
4.3. Usar AppArmor para limitar o processo
# Cria um perfil em modo reclamação aa-genprof /usr/sbin/strongswan # Depois de gerar, coloque em modo enforce aa-enforce /usr/sbin/strongswan
Isso não corrige as falhas, mas limita o dano caso um atacante consiga explorá-las.
Conclusão
Vulnerabilidades no strongSwan não são novidade — e não serão a última. O que muda é a sua preparação:
- Mantenha um processo de atualização automatizado (use o script acima).
- Monitore versões com diagnósticos periódicos.
- Tenha mitigações de contingência (iptables, AppArmor) para os dias em que o patch demora.
- Invista em conhecimento — livros e labs práticos valem mais do que qualquer correção emergencial.
A data de 2026 é apenas um marco. O importante é que, daqui a dois anos, você continue seguro.

Nenhum comentário:
Postar um comentário