CVE-2019-5021 é uma vulnerabilidade nas imagens Docker Oficial baseado na distro Alpine Linux. A falha tem sido há pelo menos três anos, permitindo o registo para a conta root através de uma senha em branco.
O bug foi inicialmente descoberto e corrigido em 2015 em construção 3.2 da imagem do Alpine Linux Docker, quando os testes de regressão foram incluídos para evitar explorações futuras. Contudo, um novo commit foi lançado mais tarde no mesmo ano com o objetivo de simplificar os testes de regressão, e é aqui que as coisas deram errado.
O que é CVE-2019-5021??
De acordo com a descrição oficial, versões das imagens oficiais Alpine Linux Docker (desde v3.3) contém uma senha NULL para o usuário `root`. A falha é provavelmente resultado de uma regressão introduzida em dezembro de 2015.
Devido à natureza deste problema, sistemas implantados usando versões afetadas do contêiner Alpine Linux que utilizam Linux PAM, ou algum outro mecanismo que usa o arquivo shadow do sistema como um banco de dados de autenticação, pode aceitar uma senha NULL para o usuário `root`, o conselho oficial diz.
O problema era redescoberto por Peter Adkins da Cisco Umbrella no início deste ano. O problema não deve ser esquecido, pois a imagem oficial do Alpine Linux Docker acabou 10 milhão de downloads.
Qual é a mitigação?
A conta root deve ser explicitamente desabilitada em imagens Docker construídas usando versões afetadas como base, diz Cisco Talos. Uma exploração bem-sucedida da vulnerabilidade depende do ambiente e requer que o serviço exposto utilize Linux RAM ou outro mecanismo que use o arquivo de sombra do sistema como um banco de dados de autenticação.
além do que, além do mais, as compilações suportadas foram atualizadas e são “agora gerado apenas a partir de tarballs minirootfs upstream,” revelado por um commit do Natanael Copa, o criador do Alpine Linux. Os scripts de lançamento e atualização foram reformulados e movidos para o repositório de imagens oficial Alpine Linux no portal Docker, disseram pesquisadores.