Docker corrigiu uma falha crítica de 5 anos

Em uma atualização recente, o Docker corrigiu uma falha crítica de 5 anos. Confira os detalhes desse importante correção.

Docker é uma tecnologia bastante popular no cenários dos sysadmin. Ele entrega uma mudança completa na maneira como as imagens e os aplicativos são distribuídos.

E, recentemente, a Docker emitiu atualizações de segurança para solucionar uma vulnerabilidade crítica que afeta certas versões do Docker Engine e que poderia permitir que um invasor ignorasse plug-ins de autorização (AuthZ) sob determinadas circunstâncias.

Docker corrigiu uma falha crítica de 5 anos

Docker corrigiu uma falha crítica de 5 anos
Docker corrigiu uma falha crítica de 5 anos

Sim. O Docker corrigiu uma falha crítica de 5 anos. A falha foi inicialmente descoberta e corrigida no Docker Engine v18.09.1, lançado em janeiro de 2019, mas por algum motivo, a correção não foi levada adiante em versões posteriores, então a falha reapareceu.

Essa regressão perigosa foi identificada apenas em abril de 2024, e os patches foram finalmente lançados para todas as versões suportadas do Docker Engine.

Embora isso tenha deixado aos invasores um período confortável de 5 anos para aproveitar a falha, não está claro se ela já foi explorada para obter acesso não autorizado às instâncias do Docker.

A falha, agora rastreada como CVE-2024-41110, é um problema de gravidade crítica (pontuação CVSS: 10,0) que permite que um invasor envie uma solicitação de API especialmente criada com comprimento de conteúdo 0, para enganar o daemon Docker para encaminhar para o plugin AuthZ.

Em cenários típicos, as solicitações de API incluem um corpo que contém os dados necessários para a solicitação, e o plugin de autorização inspeciona esse corpo para tomar decisões de controle de acesso.

Quando Content-Length é definido como 0, a solicitação é encaminhada para o plugin AuthZ sem o corpo, portanto o plugin não pode realizar a validação adequada. Isto implica o risco de aprovação de solicitações de ações não autorizadas, incluindo escalonamento de privilégios.

CVE-2024-41110 afeta versões do Docker Engine até v19.03.15, v20.10.27, v23.0.14, v24.0.9, v25.0.5, v26.0.2, v26.1.4, v27.0.3 e v27.1.0, para usuários que usam plug-ins de autorização para controle de acesso.

Os usuários que não dependem de plug-ins para autorização, usuários do Mirantis Container Runtime e usuários de produtos comerciais do Docker não são afetados pelo CVE-2024-41110, independentemente da versão que executem.

As versões corrigidas que os usuários afetados são aconselhados a migrar o mais rápido possível são v23.0.14 e v27.1.0.

Observa-se também que a versão mais recente do Docker Desktop, 4.32.0, inclui um Docker Engine vulnerável, mas o impacto é limitado, pois a exploração requer acesso à API do Docker e qualquer ação de escalonamento de privilégios seria limitada à VM.

O próximo Docker Desktop v4.33.0 resolverá o problema, mas ainda não foi lançado.

Os usuários que não conseguem migrar para uma versão segura são aconselhados a desabilitar os plug-ins AuthZ e restringir o acesso à API Docker apenas a usuários confiáveis.

Sobre o Edivaldo Brito

Edivaldo Brito é analista de sistemas, gestor de TI, blogueiro e também um grande fã de sistemas operacionais, banco de dados, software livre, redes, programação, dispositivos móveis e tudo mais que envolve tecnologia.