Uma vulnerabilidade explorável remotamente no agente OMI, imposto em ambientes Linux da Microsoft Azure.

Os clientes da plataforma de nuvem Microsoft Azure que utilizam Linux em máquinas virtuais enfrentaram uma vulnerabilidade crítica (CVE-2021-38647) que permite a execução remota de código com privilégios de root. A vulnerabilidade foi nomeada de OMIGOD e é notável pelo fato de que o problema está presente no aplicativo OMI Agent, que é instalado silenciosamente em ambientes Linux.

O OMI Agent é instalado e ativado automaticamente ao usar serviços como Azure Automation, Azure Automatic Update, Azure Operations Management Suite, Azure Log Analytics, Azure Configuration Management, Azure Diagnostics e Azure Container Insights. Por exemplo, ambientes Linux no Azure que têm monitoramento ativado são vulneráveis. O agente faz parte do pacote de código aberto OMI (Open Management Infrastructure Agent) que implementa a pilha DMTF CIM/WBEM para gerenciar a infraestrutura de TI.

O OMI Agent é instalado no sistema sob o usuário omsagent e cria configurações em /etc/sudoers para executar uma série de scripts com privilégios de root. Durante a operação de alguns serviços, são criados sockets de rede escutando nas portas 5985, 5986 e 1270. Uma varredura no serviço Shodan mostra a presença de mais de 15 mil ambientes Linux vulneráveis na rede. Atualmente, um protótipo funcional de um exploit já está disponível, permitindo executar código com privilégios de root nesses sistemas.

O problema é agravado pelo fato de que a utilização do OMI no Azure não é documentada de forma clara, e o OMI Agent é instalado sem aviso — basta concordar com os termos do serviço escolhido ao configurar o ambiente e o OMI Agent será ativado automaticamente, ou seja, a maioria dos usuários nem suspeita de sua presença.

O método de exploração é trivial — basta enviar uma solicitação XML ao agente, removendo o cabeçalho responsável pela autenticação. O OMI utiliza autenticação ao receber mensagens de controle, verificando se o cliente tem permissão para enviar determinado comando. A essência da vulnerabilidade está em que, ao remover o cabeçalho ‘Authentication’ da mensagem, servidor Considera a passagem da verificação como bem-sucedida, aceita a mensagem de controle e permite a execução de comandos com permissões de root. Para executar comandos arbitrários no sistema, basta usar o comando padrão ExecuteShellCommand_INPUT na mensagem. Por exemplo, para iniciar a utilidade "id", é suficiente enviar a solicitação: curl -H "Content-Type: application/soap+xml;charset=UTF-8" -k --data-binary "@http_body.txt" https://10.0.0.5:5986/wsman …

id

0

A Microsoft já lançou uma atualização OMI 1.6.8.1 que corrige a vulnerabilidade, mas ainda não foi disponibilizada para os usuários do Microsoft Azure (em novos ambientes, a versão antiga do OMI ainda está sendo instalada). A autoatualização do agente não é suportada, portanto os usuários precisam atualizar o pacote manualmente, utilizando os comandos "dpkg -l omi" no Debian/Ubuntu ou "rpm -qa omi" no Fedora/RHEL. Como uma solução alternativa de proteção, recomenda-se bloquear o acesso às portas de rede 5985, 5986 e 1270.

Além da CVE-2021-38647, o OMI 1.6.8.1 também corrige três vulnerabilidades (CVE-2021-38648, CVE-2021-38645 e CVE-2021-38649) que permitem que um usuário local não privilegiado execute seu código com permissões de root.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster