Restauração e criação do primeiro administrador permitem acesso sem autenticação
O endpoint /api/restore aceita a restauração de um backup sem autenticação durante a configuração inicial. Nas versões afetadas, um atacante com acesso pela rede pode enviar um arquivo preparado para substituir o banco do Portainer por outro com credenciais administrativas sob seu controle. O endpoint /api/users/admin/init também permite criar diretamente o primeiro administrador nesse período. A exploração exige uma instância ainda sem administrador e uma requisição dentro dos cinco minutos após a inicialização, sem precisar de senha ou participação sua. O acesso administrativo obtido pode alcançar o servidor quando o Portainer CE tem acesso ao socket do Docker, como /var/run/docker.sock. Também permite acessar os ambientes e as credenciais registrados na instância. As versões corrigidas exigem um token de configuração no cabeçalho X-Setup-Token para essas duas rotas quando ainda não existe administrador e nenhuma senha administrativa foi fornecida na configuração.
Casos de uso afetados
- Você inicia uma instalação nova em uma versão afetada e libera o acesso pela rede sem provisionar o administrador. Durante os cinco minutos iniciais, um atacante que alcance a API pode criar esse administrador ou restaurar um banco com suas próprias credenciais.
- Uma instalação continua sem administrador depois que o prazo de configuração expira. Cada reinicialização abre outra janela de cinco minutos, então reiniciar o serviço com a API acessível pela rede renova a oportunidade de exploração.
- Você inicia o Portainer CE com o socket do Docker disponível para gerenciar o servidor. Se um atacante assumir o acesso administrativo durante a configuração inicial, poderá usar a criação de containers para acessar o sistema de arquivos do host e executar comandos como root.
Confira na sua instância
Confira a versão efetivamente executada pelo Portainer e compare-a com cada faixa abaixo. Revise os argumentos de inicialização para verificar se você fornece a senha administrativa por --admin-password ou --admin-password-file. Quando a versão corrigida inicia sem administrador e sem essa senha, confira nos logs a geração do token de configuração e verifique se --no-setup-token foi usado, pois essa opção desativa a exigência. O comportamento documentado para /api/restore e /api/users/admin/init nessa condição é responder 403 Forbidden às requisições sem o X-Setup-Token correto. Confira também se o firewall ou o proxy restringe o acesso de redes não confiáveis durante a configuração inicial. Se a instalação esteve acessível nesse período, revise a lista de administradores para identificar acessos não autorizados e troque todas as credenciais conforme a orientação do comunicado. Alterar apenas a senha principal pela interface pode deixar outros acessos administrativos mantidos pelo atacante.
Versões afetadas e correções
| Linha | Afetadas | Corrigidas |
|---|---|---|
| github.com/portainer/portainer: 2.39.x (LTS) | >= 2.39.0, < 2.39.4 | 2.39.4 |
| github.com/portainer/portainer: 2.40.0 a 2.42.x (STS) | >= 2.40.0, < 2.43.0 | 2.43.0 |
O aviso também identifica esta falha como CVE-2026-55761. A pontuação 7,1 corresponde ao CVSS 4.0. A correção está disponível no projeto, mas você precisa confirmar sua instalação. Provisionar o administrador na implantação e restringir o acesso pela rede são medidas alternativas descritas no comunicado, que não substituem a atualização. Versões anteriores à 2.39.0, incluindo a linha 2.33.x, encerraram o suporte e não receberão correção. O comunicado orienta migrar essas instalações para uma linha suportada.
