O blog de segurança da Microsoft relata que a plataforma OpenMetadata tem vulnerabilidades críticas que permitem que invasores explorem cargas de trabalho do Kubernetes para mineração de criptografia. Cinco vulnerabilidades permitem que invasores ignorem a autenticação e executem execução remota de código. A Microsoft recomenda atualizar para OpenMetadata e empregar medidas robustas de autenticação.
Vulnerabilidades do OpenMetadata ameaçam cargas de trabalho do Kubernetes, Explorado ativamente
De acordo com o recente blog de segurança da Microsoft, invasores cibernéticos aproveitam vulnerabilidades críticas na plataforma OpenMetadata para se infiltrar em cargas de trabalho do Kubernetes. Essas vulnerabilidades (CVE-2024-28255, CVE-2024-28847, CVE-2024-28253, CVE-2024-28848, e CVE-2024-28254) versões de impacto anteriores 1.3.1. Todas essas vulnerabilidades têm diferentes níveis de CVSS, com o ser mais elevado 9.8 e 9.4 (mais tarde sobre eles). Exploração bem sucedida permite que invasores ignorem a autenticação e obtenham execução remota de código (RCE).
OpenMetadata é uma descoberta, observabilidade, e plataforma de governança com um repositório central de metadados, linhagem profunda, e colaboração em equipe. Possui esquemas de metadados, um armazenamento de metadados, APIs, e uma estrutura de ingestão. Os principais recursos incluem descoberta de dados. No entanto, subseqüentemente, essas cargas de trabalho comprometidas tornam-se canais para atividades ilícitas atividades de mineração de criptografia.
Identificando vulnerabilidades críticas
CVE-2024-28255 é uma vulnerabilidade crítica (CVSS: 9.8) na plataforma OpenMetadata, afetando seu mecanismo de autenticação de API. Em resumo, o `JwtFilter` lida com a autenticação da API verificando os tokens JWT. No entanto, os invasores podem ignorar o mecanismo de autenticação solicitando endpoints excluídos usando parâmetros de caminho. No entanto, os desenvolvedores corrigiram o problema na versão 1.2.4.
CVE-2024-28255 é uma segunda vulnerabilidade com 9.4 CVSS resultante de deficiências de validação de token JWT no JwtFilter. Uma verificação de autorização chamada `authorizer.authorize()` tem o nome de `prepareInternal()`, que é executado e avalia a expressão SpEL. Para explorar esta vulnerabilidade, um invasor pode enviar uma solicitação PUT para `/api/v1/policies`. O problema pode levar à execução remota de código e foi corrigido na versão 1.3.1.
Como funciona o ataque?
A seguir descreve-se a sequência de ataque observada em instâncias em que cargas de trabalho Kubernetes de OpenMetadata acessíveis pela Internet foram comprometidas. Os invasores identificam versões vulneráveis e exploram as vulnerabilidades para obter execução de código dentro do contêiner que hospeda a imagem OpenMetadata comprometida, obtendo assim acesso inicial.
Pós-infiltração, os invasores validam sua intrusão e avaliam o controle usando um serviço acessível ao público. Eles utilizam solicitações de ping para domínios que terminam com oast[.]eu e o leste[.]pró—associado ao Interactsh — para confirmar a exploração bem-sucedida e validar a conectividade antes de estabelecer um canal de comando e controle e implantação de cargas maliciosas.
Após confirmação de acesso bem-sucedida, invasores baixam malware de mineração de criptografia de um servidor remoto para mineração de XMR, executado com permissões elevadas. Vale ressaltar que a Microsoft identificou a localização do servidor do invasor como China. Adicionalmente, outro malware direcionado aos sistemas operacionais Linux e Windows foi descoberto no servidor do invasor.
Medidas de Prevenção e Mitigação
Para reduzir o risco de vulnerabilidades potenciais, é altamente recomendável atualizar a versão da imagem dos clusters que hospedam cargas de trabalho do OpenMetadata para a versão mais recente, especificamente a versão 1.3.1 ou mais recente. Adicionalmente, se você estiver tornando o OpenMetadata acessível pela Internet, é crucial empregar mecanismos de autenticação fortes e evite usar credenciais padrão.