Cloudanix VulnDB

CVE-2024-23450

Medium · 4.9

CVSS

4.9

EPSS

1.3%

Published

Mar 27, 2024

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A bug in how Elasticsearch handles very complicated nested data can make parts of the system stop working until restarted.

Exploitation
Remote Authenticated
Attacker needs
High Privilege
Complexity
Low
Impact
Denial Of Service
Component
Application
Class
Denial of service
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Processing a document containing excessive nesting depth through an ingest pipeline causes the Elasticsearch ingest node to terminate unexpectedly due to unhandled resource exhaustion or recursion limits.

Why it matters to the business

Adversaries with administrative ingest privileges can trigger repeated node crashes, resulting in indexing and search outages that disrupt data ingestion pipelines and dependent applications.

How an attack unfolds

An attacker with high-privileged access crafts a document with extreme nesting levels and submits it to an ingest pipeline on an Elasticsearch node; the node processes the document without sufficient depth validation and crashes, requiring manual restart.

How to fix it

Upgrade Elasticsearch to a build containing commit 09df99393193b2c53d92899662a8b8b3c55b45cd or later; disable or restrict ingest pipelines from untrusted sources until patched.

How to confirm the fix worked

Verify the running version includes the referenced commit, then attempt ingestion of a test document with controlled high nesting depth to confirm the node remains stable.

Typical attack path

  1. Obtain high-privileged credentials or API access to an ingest node
  2. Construct a document containing deeply nested objects or arrays
  3. Submit the document to a pipeline configured on the ingest node
  4. Observe node termination and repeat to sustain denial of service

How to detect it

Review Elasticsearch logs on ingest nodes for sudden terminations or stack traces occurring during pipeline document processing; correlate with API requests that trigger ingest operations.

What your security team should do

  • Apply the fixed commit or subsequent release immediately on all ingest nodes
  • Audit and restrict ingest pipeline permissions to the minimum required roles
  • Implement resource limits and monitoring for ingest node stability

The record

A flaw was discovered in Elasticsearch, where processing a document in a deeply nested pipeline on an ingest node could cause the Elasticsearch node to crash.

Affected packages

Ecosystem Package Introduced Fixed
Maven org.elasticsearch:elasticsearch 7.0.0 7.17.19
Maven org.elasticsearch:elasticsearch 8.0.0 8.13.0
Bitnami elasticsearch 7.0.0 7.17.19
Chainguard elasticsearch-8 0 8.13.1-r0
Chainguard elasticsearch-8-bitnami 0 8.13.1-r0
Chainguard elasticsearch-8-config 0 8.13.1-r0
Chainguard elasticsearch-8-iamguarded 0 8.13.1-r0
Chainguard elasticsearch-config 0 8.13.1-r0
Chainguard trino 0 444-r0
Chainguard trino-config 0 444-r0
Chainguard trino-oci-entrypoint 0 444-r0
Chainguard trino-plugin-accumulo 0 444-r0
Chainguard trino-plugin-ai-functions 0 444-r0
Chainguard trino-plugin-atop 0 444-r0
Chainguard trino-plugin-bigquery 0 444-r0
Chainguard trino-plugin-blackhole 0 444-r0
Chainguard trino-plugin-cassandra 0 444-r0
Chainguard trino-plugin-clickhouse 0 444-r0
Chainguard trino-plugin-delta-lake 0 444-r0
Chainguard trino-plugin-druid 0 444-r0
Chainguard trino-plugin-duckdb 0 444-r0
Chainguard trino-plugin-elasticsearch 0 444-r0
Chainguard trino-plugin-example-http 0 444-r0
Chainguard trino-plugin-exasol 0 444-r0
Chainguard trino-plugin-exchange-filesystem 0 444-r0
Chainguard trino-plugin-exchange-hdfs 0 444-r0
Chainguard trino-plugin-faker 0 444-r0
Chainguard trino-plugin-functions-python 0 444-r0
Chainguard trino-plugin-geospatial 0 444-r0
Chainguard trino-plugin-google-sheets 0 444-r0
Chainguard trino-plugin-hive 0 444-r0
Chainguard trino-plugin-http-event-listener 0 444-r0
Chainguard trino-plugin-http-server-event-listener 0 444-r0
Chainguard trino-plugin-hudi 0 444-r0
Chainguard trino-plugin-iceberg 0 444-r0
Chainguard trino-plugin-ignite 0 444-r0
Chainguard trino-plugin-jmx 0 444-r0
Chainguard trino-plugin-kafka 0 444-r0
Chainguard trino-plugin-kafka-event-listener 0 444-r0
Chainguard trino-plugin-kinesis 0 444-r0
Chainguard trino-plugin-kudu 0 444-r0
Chainguard trino-plugin-lakehouse 0 444-r0
Chainguard trino-plugin-ldap-group-provider 0 444-r0
Chainguard trino-plugin-local-file 0 444-r0
Chainguard trino-plugin-loki 0 444-r0
Chainguard trino-plugin-mariadb 0 444-r0
Chainguard trino-plugin-memory 0 444-r0
Chainguard trino-plugin-ml 0 444-r0
Chainguard trino-plugin-mongodb 0 444-r0
Chainguard trino-plugin-mysql 0 444-r0
Chainguard trino-plugin-mysql-event-listener 0 444-r0
Chainguard trino-plugin-opa 0 444-r0
Chainguard trino-plugin-openlineage 0 444-r0
Chainguard trino-plugin-opensearch 0 444-r0
Chainguard trino-plugin-oracle 0 444-r0
Chainguard trino-plugin-password-authenticators 0 444-r0
Chainguard trino-plugin-phoenix5 0 444-r0
Chainguard trino-plugin-pinot 0 444-r0
Chainguard trino-plugin-postgresql 0 444-r0
Chainguard trino-plugin-prometheus 0 444-r0
Chainguard trino-plugin-ranger 0 444-r0
Chainguard trino-plugin-raptor-legacy 0 444-r0
Chainguard trino-plugin-redis 0 444-r0
Chainguard trino-plugin-redshift 0 444-r0
Chainguard trino-plugin-resource-group-managers 0 444-r0
Chainguard trino-plugin-session-property-managers 0 444-r0
Chainguard trino-plugin-singlestore 0 444-r0
Chainguard trino-plugin-snowflake 0 444-r0
Chainguard trino-plugin-spooling-filesystem 0 444-r0
Chainguard trino-plugin-sqlserver 0 444-r0
Chainguard trino-plugin-teradata-functions 0 444-r0
Chainguard trino-plugin-thrift 0 444-r0
Chainguard trino-plugin-tpcds 0 444-r0
Chainguard trino-plugin-tpch 0 444-r0
Chainguard trino-plugin-vertica 0 444-r0
Ubuntu:16.04:LTS elasticsearch 0 No fix
Ubuntu:Pro:16.04:LTS elasticsearch 0 No fix
Wolfi trino 0 444-r0
Wolfi trino-config 0 444-r0
Wolfi trino-oci-entrypoint 0 444-r0
Wolfi trino-plugin-accumulo 0 444-r0
Wolfi trino-plugin-ai-functions 0 444-r0
Wolfi trino-plugin-atop 0 444-r0
Wolfi trino-plugin-bigquery 0 444-r0
Wolfi trino-plugin-blackhole 0 444-r0
Wolfi trino-plugin-cassandra 0 444-r0
Wolfi trino-plugin-clickhouse 0 444-r0
Wolfi trino-plugin-delta-lake 0 444-r0
Wolfi trino-plugin-druid 0 444-r0
Wolfi trino-plugin-duckdb 0 444-r0
Wolfi trino-plugin-elasticsearch 0 444-r0
Wolfi trino-plugin-example-http 0 444-r0
Wolfi trino-plugin-exasol 0 444-r0
Wolfi trino-plugin-exchange-filesystem 0 444-r0
Wolfi trino-plugin-exchange-hdfs 0 444-r0
Wolfi trino-plugin-faker 0 444-r0
Wolfi trino-plugin-functions-python 0 444-r0
Wolfi trino-plugin-geospatial 0 444-r0
Wolfi trino-plugin-google-sheets 0 444-r0
Wolfi trino-plugin-hive 0 444-r0
Wolfi trino-plugin-http-event-listener 0 444-r0
Wolfi trino-plugin-http-server-event-listener 0 444-r0
Wolfi trino-plugin-hudi 0 444-r0
Wolfi trino-plugin-iceberg 0 444-r0
Wolfi trino-plugin-ignite 0 444-r0
Wolfi trino-plugin-jmx 0 444-r0
Wolfi trino-plugin-kafka 0 444-r0
Wolfi trino-plugin-kafka-event-listener 0 444-r0
Wolfi trino-plugin-kinesis 0 444-r0
Wolfi trino-plugin-kudu 0 444-r0
Wolfi trino-plugin-lakehouse 0 444-r0
Wolfi trino-plugin-ldap-group-provider 0 444-r0
Wolfi trino-plugin-local-file 0 444-r0
Wolfi trino-plugin-loki 0 444-r0
Wolfi trino-plugin-mariadb 0 444-r0
Wolfi trino-plugin-memory 0 444-r0
Wolfi trino-plugin-ml 0 444-r0
Wolfi trino-plugin-mongodb 0 444-r0
Wolfi trino-plugin-mysql 0 444-r0
Wolfi trino-plugin-mysql-event-listener 0 444-r0
Wolfi trino-plugin-opa 0 444-r0
Wolfi trino-plugin-openlineage 0 444-r0
Wolfi trino-plugin-opensearch 0 444-r0
Wolfi trino-plugin-oracle 0 444-r0
Wolfi trino-plugin-password-authenticators 0 444-r0
Wolfi trino-plugin-phoenix5 0 444-r0
Wolfi trino-plugin-pinot 0 444-r0
Wolfi trino-plugin-postgresql 0 444-r0
Wolfi trino-plugin-prometheus 0 444-r0
Wolfi trino-plugin-ranger 0 444-r0
Wolfi trino-plugin-raptor-legacy 0 444-r0
Wolfi trino-plugin-redis 0 444-r0
Wolfi trino-plugin-redshift 0 444-r0
Wolfi trino-plugin-resource-group-managers 0 444-r0
Wolfi trino-plugin-session-property-managers 0 444-r0
Wolfi trino-plugin-singlestore 0 444-r0
Wolfi trino-plugin-snowflake 0 444-r0
Wolfi trino-plugin-spooling-filesystem 0 444-r0
Wolfi trino-plugin-sqlserver 0 444-r0
Wolfi trino-plugin-teradata-functions 0 444-r0
Wolfi trino-plugin-thrift 0 444-r0
Wolfi trino-plugin-tpcds 0 444-r0
Wolfi trino-plugin-tpch 0 444-r0
Wolfi trino-plugin-vertica 0 444-r0
maven org.elasticsearch/elasticsearch 7.0.0 7.17.19
maven org.elasticsearch/elasticsearch 8.0.0 8.13.0

Related vulnerabilities