Os clientes da plataforma de nube Microsoft Azure que usan Linux en máquinas virtuais atopáronse cunha vulnerabilidade crítica (CVE-2021-38647) que permite a execución remota de código como root. A vulnerabilidade recibiu o nome en clave OMIGOD e destaca polo feito de que o problema está presente na aplicación OMI Agent, que se instala silenciosamente en ambientes Linux.
O axente OMI instálase e actívase automaticamente cando se utilizan servizos como Azure Automation, Azure Automatic Update, Azure Operations Management Suite, Azure Log Analytics, Azure Configuration Management, Azure Diagnostics e Azure Container Insights. Por exemplo, os ambientes Linux en Azure para os que a supervisión está activada están suxeitos ao ataque. O axente forma parte do paquete aberto OMI (Open Management Infrastructure Agent) coa implementación da pila DMTF CIM/WBEM para a xestión da infraestrutura de TI.
O axente OMI está instalado no sistema baixo o usuario omsagent e crea axustes en /etc/sudoers para executar unha serie de scripts como root. Durante o funcionamento dalgúns servizos, créanse sockets de rede de escoita nos portos de rede 5985, 5986 e 1270. A dixitalización no servizo Shodan mostra a presenza de máis de 15 mil contornas Linux vulnerables na rede. Actualmente, xa se colocou un prototipo funcional do exploit no dominio público, o que lle permite executar o seu código como root nestes sistemas.
O problema vese agravado polo feito de que Azure non documenta explícitamente o uso de OMI e o axente OMI está instalado sen previo aviso; é suficiente con aceptar os termos do servizo seleccionado ao configurar o ambiente e o axente OMI activarase automaticamente. é dicir. a maioría dos usuarios nin sequera son conscientes da súa presenza.
O método de explotación é trivial: é suficiente enviar unha solicitude XML ao axente, eliminando a cabeceira responsable da autenticación. OMI usa a autenticación cando recibe mensaxes de control, verificando que o cliente estea autorizado para enviar un comando en particular. A esencia da vulnerabilidade é que cando se elimina a cabeceira "Autenticación" responsable da autenticación da mensaxe, o servidor considera que a verificación é exitosa, acepta a mensaxe de control e permite a execución de comandos con dereitos de root. Para executar comandos arbitrarios no sistema, abonda con usar o comando estándar ExecuteShellCommand_INPUT na mensaxe. Por exemplo, para executar a utilidade "id", abonda con enviar unha solicitude: curl -H "Content-Type: application/soap+xml;charset=UTF-8" -k --data-binary "@http_body. txt" https://10.0.0.5:5986/wsman … id 3
Microsoft xa lanzou a actualización de OMI 1.6.8.1 coa corrección da vulnerabilidade, pero aínda non se presentou aos usuarios de Microsoft Azure (en novos contornos, aínda se está instalando a versión antiga de OMI). A actualización automática do axente non é compatible, polo que os usuarios deben actualizar manualmente o paquete usando "dpkg -l omi" en Debian/Ubuntu ou "rpm -qa omi" en Fedora/RHEL. Como solución de seguridade, recoméndase bloquear o acceso aos portos de rede 5985, 5986 e 1270.
Ademais de CVE-2021-38647, OMI 1.6.8.1 tamén corrixe tres vulnerabilidades (CVE-2021-38648, CVE-2021-38645 e CVE-2021-38649) que poderían permitir que un usuario local sen privilexios execute o seu código como root. .
Fonte: opennet.ru