Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
cve-2026-31431-algif-aead-remediator — Kubernetes DaemonSet para detetar e remediar o CVE-2026-31431 (GHSA-2274-3hgr-wxv6) — LPE do algif_aead via blacklist do modprobe | Kitploit
Ferramentas/GitHubGitHub/boliu83/cve-2026-31431-algif-aead-remediator
Segurança de Infraestrutura em NuvemFerramentas DefensivasSegurança de ContêineresAnálise de VulnerabilidadesAuditoria de ConfiguraçãoResposta a Incidentes
GitHubboliu83/cve-2026-31431-algif-aead-remediator

cve-2026-31431-algif-aead-remediator

Kubernetes DaemonSet para detetar e remediar o CVE-2026-31431 (GHSA-2274-3hgr-wxv6) — LPE do algif_aead via blacklist do modprobe

Ver Repositório
há 3 mesesAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

CVE-2026-31431 / GHSA-2274-3hgr-wxv6 — Remediador algif_aead

Gravidade: Alta (CVSS 7.8 — CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H)

Contexto

CVE-2026-31431 é uma vulnerabilidade de escalonamento de privilégio local no módulo algif_aead do kernel Linux (interface de socket criptográfico AF_ALG AEAD). Um usuário local com privilégios baixos pode explorar operações incorretas de buffer in-place para obter acesso total de root. Todos os node pools do AKS que executam kernels Linux anteriores ao patch upstream são potencialmente afetados.

O módulo algif_aead não é necessário para cargas de trabalho normais do Kubernetes ou AKS. Bloqueá-lo elimina completamente a superfície de ataque.


O que este DaemonSet faz

Um pod é executado em cada nó Linux. Na inicialização e depois a cada 60 segundos, cada pod:

  1. Grava /etc/modprobe.d/modprobe-CIS.conf no host com:

root@kitploit:~
install algif_aead /bin/false
blacklist algif_aead

Isso impede que o módulo seja carregado na reinicialização ou via modprobe.

  • Verifica /proc/modules (a lista de módulos do kernel do host em tempo real — compartilhada com todos os contêineres) em busca de algif_aead.

  • Rotula o nó do Kubernetes com o resultado para que você possa consultar em todo o cluster:

    Valor do rótuloSignificado
    mitigatedMódulo não carregado; configuração de blacklist aplicada
    module-loadedMódulo está atualmente carregado — investigue imediatamente

  • Arquivos

    ArquivoFinalidade
    rbac.yamlNamespace, ServiceAccount, ClusterRole (get/patch em nós), ClusterRoleBinding
    configmap.yamlScript de remediação em shell montado em cada pod
    daemonset.yamlDefinição do DaemonSet — um pod por nó Linux

    Pré-requisitos

    • kubectl configurado para o cluster AKS de destino
    • Permissões de cluster-admin (necessárias para criar um ClusterRole e um namespace privilegiado)

    Implantação

    Aplique os manifests em ordem:

    root@kitploit:~
    kubectl apply -f rbac.yaml
    kubectl apply -f configmap.yaml
    kubectl apply -f daemonset.yaml
    

    Aguarde a conclusão da implantação em todos os nós:

    root@kitploit:~
    kubectl -n security-remediation rollout status daemonset/cve-2026-31431-remediator
    

    Verificação

    Verifique o status de remediação dos nós de uma só vez

    root@kitploit:~
    kubectl get nodes -L vulnerability.aks.io/CVE-2026-31431
    

    Saída esperada em um cluster limpo:

    root@kitploit:~
    NAME                                STATUS   ROLES    AGE   VERSION   CVE-2026-31431
    aks-nodepool1-xxxxx-vmss000000      Ready    <none>   4d    v1.33.7   mitigated
    aks-nodepool1-xxxxx-vmss000001      Ready    <none>   4d    v1.33.7   mitigated
    

    Verifique os logs em um pod específico

    root@kitploit:~
    # Liste os pods e seus nós atribuídos
    kubectl -n security-remediation get pods -o wide
    
    # Acompanhe os logs de um pod específico
    kubectl -n security-remediation logs <pod-name> -f
    

    Saída de log esperada:

    root@kitploit:~
    2026-05-01T01:33:36Z [INFO    ] CVE-2026-31431 remediator starting on node: aks-nodepool1-...
    2026-05-01T01:33:36Z [INFO    ] Blacklist config written → /host/etc/modprobe.d/modprobe-CIS.conf
    2026-05-01T01:33:36Z [INFO    ] Node aks-nodepool1-...: 'algif_aead' is NOT loaded — blacklist config applied, node is mitigated.
    2026-05-01T01:33:36Z [INFO    ] Labeled node aks-nodepool1-...: vulnerability.aks.io/CVE-2026-31431=mitigated
    2026-05-01T01:33:36Z [INFO    ] Entering monitoring loop (interval: 60s)
    

    Verifique se a configuração do modprobe foi gravada no host

    root@kitploit:~
    kubectl -n security-remediation exec <pod-name> -- cat /host/etc/modprobe.d/modprobe-CIS.conf
    

    Conteúdo esperado:

    root@kitploit:~
    # CIS hardening – mitigate CVE-2026-31431 (GHSA-2274-3hgr-wxv6)
    # Prevents algif_aead (AF_ALG AEAD) LPE from being loaded or exploited.
    install algif_aead /bin/false
    blacklist algif_aead
    

    Alerta: nós com módulo carregado

    Se um nó exibir module-loaded, o módulo do kernel está atualmente ativo e o nó pode já estar comprometido. Isole (cordon) e drene o nó imediatamente para análise forense:

    root@kitploit:~
    # Encontre os nós afetados
    kubectl get nodes -l vulnerability.aks.io/CVE-2026-31431=module-loaded
    
    # Isole e drene para investigação
    kubectl cordon <node-name>
    kubectl drain <node-name> --ignore-daemonsets --delete-emptydir-data
    

    Desinstalação

    Nota: Remover o DaemonSet não remove o arquivo /etc/modprobe.d/modprobe-CIS.conf dos nós do host. Esse arquivo é intencionalmente deixado no lugar como uma medida persistente de endurecimento do kernel.

    Remova os recursos do Kubernetes

    root@kitploit:~
    kubectl delete -f daemonset.yaml
    kubectl delete -f configmap.yaml
    kubectl delete -f rbac.yaml
    

    Isso exclui o DaemonSet, todos os seus pods, o ConfigMap, o ServiceAccount, o ClusterRole, o ClusterRoleBinding e o namespace.

    Remova os rótulos dos nós (opcional)

    root@kitploit:~
    kubectl label nodes --all vulnerability.aks.io/CVE-2026-31431-
    

    Remova a configuração do modprobe dos nós (não recomendado)

    Faça isso somente se você tiver uma mitigação alternativa (kernel corrigido). Execute em cada nó ou por meio de um pod privilegiado:

    root@kitploit:~
    rm -f /etc/modprobe.d/modprobe-CIS.conf
    

    Notas de segurança

    • O pod é executado como root (runAsUser: 0) — necessário para gravar em /etc/modprobe.d/ no host.
    • Todas as capabilities do Linux são removidas (capabilities.drop: ["ALL"]). Nenhuma capability do kernel é necessária.
    • O contêiner principal é executado com readOnlyRootFilesystem: true. Apenas os volumes montados hostPath e emptyDir são graváveis.
    • Apenas /etc/modprobe.d/ é montado via bind a partir do host — não /etc, /proc ou qualquer caminho mais amplo.
    • O binário curl e suas bibliotecas compartilhadas são preparados pelo contêiner init em um emptyDir (/tools) para que o contêiner principal possa chamar a API do Kubernetes sem precisar de acesso de gravação ao rootfs.
    • A conta de serviço tem as permissões mínimas de RBAC necessárias: apenas get e patch em nodes.
    Baixar ferramenta