A CVE-2026-31431 é uma vulnerabilidade de escalonamento local de privilégios no kernel Linux (CVSS 7.8, Alta). Um atacante com poucos privilégios pode explorar a interface criptográfica AF_ALG com a chamada de sistema splice() para gravar quatro bytes controlados no cache de páginas de qualquer arquivo legível, adulterar binários setuid e obter privilégios de root. Consulte o registro da CVE-2026-31431, o GitHub Security Advisory e o Alibaba Cloud Security Bulletin.
e o
Escopo de impacto
A CVE-2026-31431 permite que um atacante local sem privilégios grave no cache de páginas, o que pode resultar em escalonamento local de privilégios e escape de contêiner. Os recursos afetados incluem:
Nós Linux em pools de nós de clusters gerenciados pelo ACK, incluindo pools de nós, pools de nós Lingjun e pools de nós de nuvem híbrida.
Resolução
Siga a Solução 1: Alterar o sistema operacional (recomendado) para corrigir essa vulnerabilidade. Até o lançamento de imagens corrigidas, utilize a Solução 2: Mitigação provisória (política seccomp) para reduzir os riscos.
Solução 1: Alterar o sistema operacional (recomendado)
Pools de nós
Novos nós: Crie pools de nós com as versões de imagem corrigidas listadas na tabela a seguir.
-
Nós existentes: Use o recurso de alterar o sistema operacional para atualizar os nós para a imagem corrigida mais recente.
Essa correção exige a reinicialização do nó. O processo de atualização drena o nó antes da reinicialização, causando o reinício das cargas de trabalho. Avalie o impacto e execute essa atualização fora dos horários de pico.
A tabela a seguir apresenta o status das correções para as imagens de pools de nós do ACK.
As informações da tabela a seguir estão atualizadas até as 15:00 (UTC+8) de 8 de maio de 2026. Consulte as notas de versão de imagens de SO.
Tipo de SO | Nome do SO | Versão corrigida e status de lançamento |
Imagem pública | Alibaba Cloud Linux 4 LTS 64-bit Container-Optimized | aliyun_4_x64_20G_container_optimized_alibase_20260430.vhd (Lançada) |
Alibaba Cloud Linux 4 LTS 64-bit Container-Optimized for ARM | aliyun_4_arm64_20G_container_optimized_alibase_20260430.vhd (Lançada) | |
Alibaba Cloud Linux 3.2104 LTS 64-bit Container-Optimized | aliyun_3_x64_20G_container_optimized_alibase_20260503.vhd (Lançada) | |
Alibaba Cloud Linux 3.2104 Container-Optimized for ARM | aliyun_3_arm64_20G_container_optimized_alibase_20260503.vhd (Lançada) | |
ContainerOS | lifsea_3_x64_5G_alibase_20260507.qcow2 (Lançada) | |
ContainerOS GPU | lifsea_3_x64_10G_alibase_nvidia_570_20260507.qcow2 (Lançada) | |
Ubuntu 24.04 | A ser lançada | |
Ubuntu 22.04 ARM | A ser lançada | |
Imagem personalizada | Atualize suas imagens seguindo as orientações oficiais do fornecedor do seu SO Linux. | |
Imagem do Marketplace | A correção depende de atualizações dos provedores de imagens Linux. Monitore as imagens ECS no Alibaba Cloud Marketplace para obter atualizações. | |
Pools de nós de nuvem híbrida
Avalie os riscos ao negócio e atualize os nós conforme as orientações do fornecedor do seu SO Linux.
Pools de nós Lingjun
Este aviso será atualizado com detalhes sobre impacto e resolução para pools de nós Lingjun assim que estiverem disponíveis. Entre em contato com a equipe do ACK em caso de dúvidas.
Solução 2: Mitigação provisória (política seccomp)
Solução 1 Priorize a Solução 1 para corrigir totalmente essa vulnerabilidade. Enquanto não houver imagens corrigidas disponíveis para o seu SO, aplique as etapas a seguir como mitigação provisória.
Uma política seccomp bloqueia a criação de sockets AF_ALG, eliminando o vetor de ataque no nível do kernel.
Pré-requisitos
Antes de começar, confirme os seguintes pontos:
Suas cargas de trabalho não dependem do módulo de kernel
AF_ALG(usado para aceleração criptográfica em espaço de kernel, como IPsec ou libkcapi).Nenhum outro perfil
seccompdo tipo Localhost está configurado no camposecurityContext.seccompProfiledos Pods da sua carga de trabalho.
1. Implantar o DaemonSet seccomp
Este DaemonSet grava um arquivo de política seccomp em cada nó Linux do seu cluster. Após a criação do arquivo, aplique a política referenciando-a nos Pods da sua carga de trabalho, conforme descrito na Etapa 2.
-
Salve o manifesto YAML a seguir como
seccomp-block-AF_ALG.yaml.O DaemonSet grava o arquivo
seccomp-block-af_alg.jsonno caminho/var/lib/kubelet/seccomp/profiles/de todos os nós Linux. -
Aplique o manifesto para implantar o DaemonSet.
kubectl apply -f seccomp-block-AF_ALG.yaml -
Após a implantação, verifique se o arquivo de política foi gravado em cada nó.
# Verify that the DaemonSet is ready on all nodes. kubectl -n kube-system get daemonset ack-cve-2026-31431-mitigate # Check the logs to confirm the policy was written. The output should include "Mitigation complete". kubectl -n kube-system logs -l app=ack-cve-2026-31431-mitigate --tail=3
2. Configurar um perfil seccomp para um Pod de aplicação
O arquivo de política não é aplicado automaticamente aos Pods. Referencie-o explicitamente no securityContext de cada Pod da carga de trabalho.
-
Configure o perfil
seccomp.No
securityContextdo Pod da sua carga de trabalho, defina o tipo deseccompProfilecomoLocalhoste uselocalhostProfilepara especificar o caminho relativo ao diretório raiz seccomp do nó (/var/lib/kubelet/seccomp).securityContext: seccompProfile: type: Localhost localhostProfile: profiles/seccomp-block-af_alg.json Após aplicar as alterações, reinicie os Pods da sua carga de trabalho.
-
Monitore os Pods da carga de trabalho para confirmar a execução correta:
Se os Pods iniciarem com sucesso, o perfil
seccompestará ativo e a mitigação em vigor.Caso os Pods falhem ao iniciar ou apresentem erros, reverta as alterações imediatamente.