Discovering 9 DoS Vulnerabilities in Elastic Beats

Author

AISLE Research Team

Published

Elastic Beats

See what AISLE can find and fix autonomously in your own code.

Sovereign AI CybersecurityTalk to Us

After finding dozens of zero-days in libraries such as OpenSSL and Amazon’s crypto stack, we wondered what vulnerabilities might be lurking in other critical software infrastructure. That led us to Elastic’s ELK stack (Elasticsearch, Logstash, and Kibana), which is one of the most widely deployed logging, search, and observability platforms in use today. With $1.5 billion in revenue, Elastic is trusted by thousands of organizations, so vulnerabilities in the ELK stack have a wide blast radius.

Focusing our efforts on Elastic's lightweight data shippers, or Beats, we used the AISLE analyzer to discover 9 denial-of-service (DoS) vulnerabilities in the ELK stack. Eight of these vulnerabilities have since been fixed, and one more is pending a final patch. Left unaddressed, each of these nine vulnerabilities could have been exploited to create blind spots in the security pipelines of Fortune 10 enterprises and government agencies.

In this blog, we’ll give a high-level overview of our findings.


The Findings at a Glance

Packetbeat

Title

Protocol

CVE

Fixed Versions

IPv4 fragment cache resource exhaustion

IPv4 fragment reassembly

CVE-2025-68388

8.19.9, 9.1.9, 9.2.3

AMQP parser out-of-bounds panic

AMQP

CVE-2026-26933

8.19.10, 9.1.10, 9.2.4

MongoDB buffer overflow and allocation flaws

MongoDB

CVE-2026-0529

8.19.9, 9.1.9, 9.2.3

NFS/XDR buffer overflow and allocation flaws

NFS / ONC RPC / XDR

CVE-2025-68382

8.19.11, 9.2.5

PostgreSQL DataRow parser panic

PostgreSQL

CVE-2026-26932

8.19.11, 9.2.5

Redacted unbounded allocation

Redacted

CVE pending

Fix pending.

Filebeat

Title

Protocol

CVE

Fixed Versions

http_endpoint chunked transfer and gzip bomb

HTTP / JSON / gzip

CVE pending (fix)

8.19.12, 9.2.6, 9.3.1

NetFlow fixed-length template allocation abuse

NetFlow v1 / v5 / v6 / v7 / v8

CVE pending (fix)

8.19.9, 9.1.9, 9.2.3, and 9.3.0

Metricbeat

Title

Protocol

CVE

Fixed Versions

Prometheus remote_write Snappy allocation bomb

Prometheus remote_write / Snappy

CVE-2026-0528

8.19.10, 9.1.10, 9.2.4

Elastic Beats: The Basics

Elastic Beats are open-source agents that collect and ship operational data such as network traffic, logs, and metrics to Elasticsearch or other destinations. They are commonly deployed on production hosts, in containers, and at network boundaries:

  • Packetbeat passively captures and decodes network protocols (DNS, HTTP, MongoDB, PostgreSQL, AMQP, NFS, and many others).
  • Filebeat ships log data and can expose HTTP endpoints for webhook ingestion or listen for NetFlow/IPFIX streams.
  • Metricbeat collects system and service metrics, including a Prometheus remote_write receiver.

The availability of a system's logging capabilities is paramount to the security of the system. Any ability to halt or restrict the logging of events creates a serious security risk because tamper-evident logs provide little assurance when relevant events are entirely missing. Even a few seconds of missing logs can mean the difference between a serious security incident being detected and understood, or going unnoticed altogether. If logs do not exist in the first place, the audit trail is incomplete and the chain of custody is compromised, undermining accountability, detection, and forensic investigation.

Two Classes of Denial of Service

While all nine vulnerabilities result in denial of service, they divide cleanly into two categories based on how the attacker takes down the process and how much effort it requires.

Resource exhaustion

These vulnerabilities let a remote attacker drive sustained memory or CPU growth until the Beat process is killed by the OS' out-of-memory killer, or simply becomes completely unresponsive. Some require a sustained stream of packets but others need just a single request.

  • Packetbeat IPv4 fragment reassembly — By sending incomplete IPv4 fragments with high TTLs and varying IDs, an attacker can make Packetbeat retain copied fragment payloads in a cache with no per-flow or global byte limit. The result is sustained memory and CPU exhaustion, along with the possibility of telemetry being misattributed across flows.
  • Metricbeat Prometheus remote_write — An attacker uses a small Snappy payload can advertise an enormous decoded size, and because Metricbeat trusts that size when it passes the body into snappy.Decode(nil, data), this leads to an attacker-controlled allocation and an immediate OOM crash.
  • Filebeat http_endpoint — Chunked, gzip-compressed requests exploit two separate gaps: Filebeat misaccounts for max_in_flight_bytes when ContentLength is -1, and it decompresses the body without a size cap. Together, those behaviors let an attacker bypass limits and drive the process into memory exhaustion.
  • Filebeat NetFlow — Here the attacker only needs to forge a large record count in a small NetFlow packet. Filebeat trusts that count when pre-allocating flow records for fixed-length templates, producing repeated multi-megabyte allocations and steadily rising RSS.
  • Packetbeat Redacted decoder — Details redacted until fix.

In each of these vulnerabilities, the code reads a length, count, or size field from untrusted input and uses it to allocate memory or accumulate data without checking whether the declared size is plausible. Fixes thus involve clamping declared sizes against the bytes that are actually available and enforcing hard upper bounds before allocation.

Unchecked input crashes

These vulnerabilities let a remote attacker crash the Beat process instantly with a single malformed packet. In each of them, parsers index or slice into byte buffers using attacker-controlled offsets or counts without verifying that enough data exists. In Go, this causes a runtime panic. Because none of the affected parsers have panic recovery, the panic propagates to the top-level runner, which logs a fatal message and exits.

  • Packetbeat AMQP — An attacker sends a truncated AMQP frame, which is parsed by Packetbeat through property and field-table branches that index into buffers without checking len(data), resulting in an out-of-bounds panic.
  • Packetbeat PostgreSQL — An attacker sends a DataRow that claims more fields than an earlier RowDescription declared, which is indexed by Packetbeat into m.fieldsFormat without validating the count, resulting in a runtime panic and process crash.
  • Packetbeat MongoDB — An attacker sends a forged MongoDB message with negative or oversized length fields that are trusted by Packetbeat during truncation, BSON slicing, and reply allocation, leading to a panic or OOM from a single TCP segment.
  • Packetbeat NFS — An attacker sends a truncated RPC/NFS fragment that is consumed by Packetbeat's XDR helpers without checking that enough bytes remain in the buffer, resulting in an immediate crash and, in some paths, unbounded allocation.

The Fixes

AISLE provided fixes for all nine issues which were then iterated on by Elastic. In each case, the vulnerabilities were fixed with proper bounds checking.

Note that AISLE’s autonomous system found other security vulnerabilities in Elastic software, which we’ll be reviewing in a future post. In each case, we followed responsible disclosure practices in collaboration with the Elastic maintainers.

Talk to Us

AISLE's analyzer found nine High-severity vulnerabilities in one of the most widely deployed observability stacks in the world. Want to know what it would find in yours? Get in touch


Our sincere appreciation goes to the Elastic maintainers for their collaboration and support. These issues were discovered and reported by Pavel Kohout using AISLE’s analyzer.

Keep reading

More from AISLE

FeaturedCompanyAISLE and Cohere to Join ForcesAISLE is joining Cohere to unite autonomous security systems and sovereign foundation models. Learn about the future of both companies.Ondrej Vlcek, Jaya Baloo, and Stanislav FortOctober 15, 2026ResearchAISLE Found Compromised LiteLLM Package 3 Minutes After ReleaseOn 21 October 2026, someone published litellm 1.107.0 to PyPI. AISLE's dependency firewall found a credential stealer in the wheels in just 3 minutes.AISLE Research Team October 21, 2026ProductRolling Out in October: Prove It, Fix It, Block ItSee how AISLE gets you from finding to fix faster: proof of exploitability, memory-safety proofs, an MCP server, and an AI package firewall.Jiri TumaOctober 14, 2026ResearchBefore the CVE: Mining Open-Source Commits for Negative-Day VulnerabilitiesLearn what happened when AISLE researchers tested LLMs to find the best way to identify negative-day vulnerabilities at scale.Dmitrijs TriznaOctober 2, 2026ResearchAISLE Discovers 16 CVEs in Wireshark, the World’s Most Popular Network Protocol AnalyzerLearn about the 16 CVEs AISLE received in Wireshark, and what these discoveries say about the state of AI cybersecurity. AISLE Research Team September 16, 2026ResearchAISLE Discovers 6 High and Critical CVEs in FFmpegAISLE's AI-native engine found six high and critical CVEs in FFmpeg, including a 9.8 remote heap overflow and a stack overflow that survived 19 years.AISLE Research Team August 27, 2026ResearchAttackers Are Using AI to Find Vulnerabilities in Your Code. Your SAST Was Never Even Looking for ThemCan AI-native code analysis replace SAST, or is it just a complement. Here's what data from real-world results shows.Ondrej VlcekAugust 12, 2026ResearchAISLE Finds 21 Security Issues in FFmpeg, Including 6 New CVEsAISLE uncovered 21 issues in FFmpeg, including 6 new CVEs spanning code execution and out-of-bounds reads. All patched, with commit links inside.AISLE Research Team August 5, 2026ResearchAISLE Discovers a One-Click RCE Vulnerability in Cursor, VS Code, and Google AntigravityLearn how our AI found a one-click RCE vulnerability in 3 code editors: Cursor, VS Code, and Google Antigravity.Stanislav FortJuly 31, 2026