Akamai adquirirá a LayerX para implementar o controle de uso de IA em qualquer navegador. Veja os detalhes

CVE-2025-14847: Tudo o que você precisa saber sobre a MongoBleed

Os clientes do Akamai Hunt que foram afetados já receberam um mapeamento detalhado dos ativos vulneráveis, com as etapas de mitigação necessárias.

Compartilhe

Resumo executivo

  • Em 19 de dezembro de 2025, uma nova vulnerabilidade que afeta a maioria das implantações do MongoDB foi divulgada publicamente nas instâncias do MongoDB.

  • A vulnerabilidade, chamada MongoBleed, está relacionada à forma como o MongoDB processa mensagens compactadas com zlib e permite que clientes não autenticados vazem memória heap não inicializada a partir do banco de dados.

  • Esta CVE (Common Vulnerability and Exposure) recebeu a pontuação 8,7 no sistema CVSSv4 (Common Vulnerability Scoring System).

  • Em 29 de dezembro de 2025, a CISA (Cybersecurity and Infrastructure Security Agency) adicionou a CVE-2025-14847 ao seu catálogo de KEV (Known Exploited Vulnerabilities), confirmando que a exploração está ativa. Em paralelo, a telemetria da Akamai indicou que o MongoDB se comunica com aproximadamente 62% das redes corporativas.

Nesta publicação do blog, trazemos uma análise técnica da MongoBleed, uma visão geral das versões afetadas do MongoDB (com a análise de correções) e orientações práticas de mitigação, incluindo as Insight queries da Akamai Guardicore Segmentation para ajudar a identificar ativos vulneráveis.

Detalhes da vulnerabilidade

A MongoBleed tem origem na forma como o MongoDB processa mensagens compactadas do Wire Protocol, um recurso ativado por padrão.

O MongoDB se comunica por mensagens sinalizadas com o opcode OP_MSG, em que as cargas úteis de solicitação são codificadas no formato BSON (binary JSON). Quando uma mensagem compactada é enviada, a carga útil de OP_MSG original é encapsulada em uma estrutura OP_COMPRESSED.

Uma mensagem OP_COMPRESSED inclui a carga útil de OP_MSG e o tamanho esperado da carga útil não compactada.


struct OP_COMPRESSED {
    struct MsgHeader {
        int32  messageLength;
        int32  requestID;
        int32  responseTo;
        int32  opCode;
    };
    int32_t  originalOpcode;
    int32_t  uncompressedSize;
    uint8_t  compressorId;
    char     *compressedMessage;
};

Um invasor pode manipular o campo uncompressedSize para torná-lo maior do que o tamanho real da carga compactada. Como esse valor não é validado, a manipulação leva a uma alocação de buffer maior do que o esperado, preenchida com memória heap não inicializada.

Essa memória vazada pode incluir trechos de senhas em texto não criptografado, credenciais, chaves de API ou outros dados confidenciais mantidos na memória, dependendo do que ocupava a heap antes.

O vazamento é agravado pela lógica de tratamento de erros do MongoDB. Quando o objeto BSON malformado que foi enviado não contém um terminador nulo, o servidor analisa a memória até encontrar um. Quando a análise falha, o servidor retorna uma resposta de erro que inclui a mensagem original e o conteúdo vazado da heap.

Até o momento em que este texto foi escrito, a Shodan relatou mais de 213 mil instâncias do MongoDB expostas à Internet, enquanto a Censys mencionou mais de 87 mil, destacando a ampla exposição da vulnerabilidade.

Exploit público disponível

Poucos dias após a divulgação, um exploit funcional foi publicado no GitHub. Esse exploit depende do envio repetido de solicitações compactadas malformadas, permitindo que invasores vazem grandes porções da memória heap de maneira progressiva.

Versões afetadas

A MongoBleed afeta as seguintes versões do MongoDB:

  • 8.2.0 a 8.2.2

  • 8.0.0 a 8.0.16

  • 7.0.0 a 7.0.27

  • 6.0.0 a 6.0.26

  • 5.0.0 a 5.0.31

  • 4.4.0 a 4.4.29

  • Todas as versões v3.6, v4.0 e v4.2

Análise de patches

A correção de uma linha calcula o tamanho da mensagem com base no tamanho da saída, em vez de simplesmente confiar no valor informado pelo BSON OP_COMPRESSED. Isso garante que nenhuma memória adicional seja alocada além do tamanho real da mensagem.

-    return {output.length()};
+    return length;

Mitigação

Atualização para uma versão corrigida

Uma correção foi introduzida nas seguintes versões: 8.2.3, 8.0.17, 7.0.28, 6.0.27, 5.0.32 e 4.4.30.
A atualização para uma dessas versões elimina a vulnerabilidade por completo.

Redução da exposição com segmentação de rede

Até que uma correção seja aplicada, é possível reduzir bastante a exposição usando a segmentação ao:

  • Bloquear o acesso de entrada da Internet às instâncias do MongoDB na porta TCP/27017

  • Permitir conexões apenas de fontes claramente confiáveis

Identificação de hosts vulneráveis com a Akamai Guardicore Segmentation

As seguintes Insight queries da Akamai Guardicore Segmentation identificam hosts que estão executando instâncias vulneráveis do MongoDB.

Ativos do Linux

WITH LINUX AS (
  SELECT DISTINCT name, version, source
  FROM deb_packages 
  WHERE name = 'mongodb-org-server'
  UNION ALL
  SELECT DISTINCT name, version, source
  FROM rpm_packages
  WHERE name = 'mongodb-org-server'
),
PARSED AS (
  SELECT name, source, version,
    CAST(REGEX_MATCH(version, '([0-9]+)\.([0-9]+)\.([0-9]+)', 1) AS INTEGER) AS major,
    CAST(REGEX_MATCH(version, '([0-9]+)\.([0-9]+)\.([0-9]+)', 2) AS INTEGER) AS minor,
    CAST(REGEX_MATCH(version, '([0-9]+)\.([0-9]+)\.([0-9]+)', 3) AS INTEGER) AS patch
  FROM LINUX
)
SELECT name, source, version
FROM PARSED
WHERE
    (major = 8 AND minor = 2 AND patch BETWEEN 0 AND 2)
    OR
    (major = 8 AND minor = 0 AND patch BETWEEN 0 AND 16)
    OR
    (major = 7 AND minor = 0 AND patch BETWEEN 0 AND 27)
    OR
    (major = 6 AND minor = 0 AND patch BETWEEN 0 AND 26)
    OR
    (major = 5 AND minor = 0 AND patch BETWEEN 0 AND 31)
    OR
    (major = 4 AND minor = 4 AND patch BETWEEN 0 AND 29)
    OR
    (major = 3 AND minor = 6)
    OR
    (major = 4 AND minor IN (0, 2))

Ativos do Windows

WITH WINDOWS AS (
  WITH MONGO_PROGRAMS AS (
  SELECT DISTINCT name, version, install_source AS source, REGEX_MATCH(name, 'MongoDB [0-9].*', 0) AS mongo_match
  FROM programs
  WHERE name LIKE "MongoDB%"
  )
  SELECT DISTINCT name, version, source
  FROM MONGO_PROGRAMS
  WHERE LENGTH(mongo_match) > 0
),
PARSED AS (
  SELECT name, source, version,
    CAST(REGEX_MATCH(version, '([0-9]+)\.([0-9]+)\.([0-9]+)', 1) AS INTEGER) AS major,
    CAST(REGEX_MATCH(version, '([0-9]+)\.([0-9]+)\.([0-9]+)', 2) AS INTEGER) AS minor,
    CAST(REGEX_MATCH(version, '([0-9]+)\.([0-9]+)\.([0-9]+)', 3) AS INTEGER) AS patch
  FROM WINDOWS
)
SELECT name, source, version
FROM PARSED
WHERE
    (major = 8 AND minor = 2 AND patch BETWEEN 0 AND 2)
    OR
    (major = 8 AND minor = 0 AND patch BETWEEN 0 AND 16)
    OR
    (major = 7 AND minor = 0 AND patch BETWEEN 0 AND 27)
    OR
    (major = 6 AND minor = 0 AND patch BETWEEN 0 AND 26)
    OR
    (major = 5 AND minor = 0 AND patch BETWEEN 0 AND 31)
    OR
    (major = 4 AND minor = 4 AND patch BETWEEN 0 AND 29)
    OR
    (major = 3 AND minor = 6)
    OR
    (major = 4 AND minor IN (0, 2))

Desativação de solicitações compactadas (mitigação temporária)

Se não for possível atualizar ou segmentar a instância, as solicitações compactadas com zlib podem ser desativadas para evitar a exploração. Veja instruções detalhadas no Issue Tracker oficial do MongoDB.

Resumo

A MongoBleed (CVE-2025-14847) é uma vulnerabilidade do MongoDB que pode ser explorada remotamente, permitindo que invasores não autenticados vazem memória heap não inicializada.

Com exploits públicos disponíveis e dezenas de milhares de instâncias expostas à Internet, o risco de vazamentos de dados confidenciais é imediato. As organizações que estiverem usando as versões afetadas deverão atualizar para uma versão corrigida ou aplicar as regras de segmentação de rede para minimizar a exposição.

Fique por dentro

O Akamai Security Intelligence Group continuará monitorando, notificando e criando mitigações quanto a ameaças como essas para nossos clientes e para a comunidade de segurança em geral. Para acompanhar as notícias mais recentes do Akamai Security Intelligence Group, confira nossa página inicial de pesquisa e siga nossos perfis nas redes sociais.

Tags

Compartilhe

Publicações de blog relacionadas

Pesquisas sobre segurança
Análise de domínios mal-intencionados da CrowdStrike: quem é afetado e o que pode vir em seguida
Os pesquisadores da Akamai analisam o tráfego de ataque dos sites supostamente associados à atenuação ou à assistência no incidente da tela azul da morte da CrowdStrike.
Cibersegurança
Perspectiva da Akamai sobre a Patch Tuesday de setembro de 2023
A Patch Tuesday está de volta, desta vez com um total de 65 CVEs. Dois eram críticos e dois eram explorados de forma geral, e estamos aqui para falar sobre os maiores.
Cibersegurança
Perspectiva da Akamai sobre a Patch Tuesday de setembro de 2024
Nada melhor do que um novo lote de CVEs: 79 CVEs totais e quatro vulnerabilidades exploradas livremente.