SecBoard
Zurück zur CVE-Übersicht

CVE-2026-88900

HIGH(8.8)

CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Risk Signal Score22/100 — NIEDRIG
  • CVSS 8.8 — Hoch

Erwähnungen (letzte 60 Tage)

Artikel

EPSS-Score

0.7%

Exploit-Wahrscheinlichkeit (30 Tage)

CVSS Score

8.8

Technische Schwere

Beschreibung

Deserialization of Untrusted Data vulnerability in Apache Camel Camel-Jgroups component. This issue affects Apache Camel: from 4.0.0 before 4.18.5, from 4.19.0 before 4.22.1. JGroupsEndpoint.createExchange(Message), which CamelJGroupsReceiver calls for every message the jgroups consumer receives before the exchange is routed, set the exchange body from org.jgroups.Message.getObject(). For an ObjectMessage, which is the message type the Camel jgroups producer sends, JGroups Java-deserializes the payload through an ObjectInputStream on its own receive thread as the message arrives, and getObject() returns the resulting object. No java.io.ObjectInputFilter was applied on that path unless the deployment had set a JVM-wide serialization filter: camel-jgroups installed none, and the JGroups versions shipped with the affected releases apply none of their own, so any serializable class on the application classpath could be instantiated and its deserialization callbacks run. Unless a channel or the channelProperties option is configured, the consumer creates its channel with new JChannel(), the stock JGroups protocol stack, which multicasts over UDP without the AUTH protocol and without encryption, so any host able to reach the cluster's multicast group or bind port can join the cluster and send messages to the consumer without credentials. Such a host could send a crafted serialized object that leads to remote code execution in the Camel process when a usable deserialization gadget chain is present on the classpath, and no non-default option was required on the consumer. Because JGroups materializes the object before Camel's receiver runs, a check performed by Camel can only inspect the deserialized result and cannot stop code that runs during deserialization, so closing the issue also requires a control that applies before the payload is read, as described in the mitigation. Exploitation requires network access to the cluster's multicast group or bind port, which with the default UDP multicast transport means a host on an adjacent network, and a usable gadget chain on the classpath, which is why the severity is assessed as high rather than critical. Users are recommended to upgrade to version 4.23.0, which fixes the issue. If users are on the 4.22.x releases stream, then they are suggested to upgrade to 4.22.1. If users are on the 4.18.x releases stream, then they are suggested to upgrade to 4.18.5. The 4.14.x releases stream and earlier, and the 4.15.x to 4.17.x and 4.19.x to 4.21.x release lines, reached end of life before this issue was resolved and will not receive a fix, so deployments on those lines must move to a supported release.

Erkennung & Indikatoren

Ausnutzung

In den geprüften Quellen nicht genannt

Behobene Versionen

  • 4.18.5
  • 4.22.1
  • 4.23.0

Threat-Hunting-Queries

Exploitation requires network access to the cluster's multicast group or bind port and a usable gadget chain on the classpath. Detection should focus on unusual process creation or network activity originating from the Apache Camel process.

Sentinel/Defender KQL

DeviceProcessEvents
| where InitiatingProcessFileName contains "java"
| where FileName in ("sh", "bash", "powershell.exe", "cmd.exe")
| where ProcessCommandLine contains "jgroups"
| project Timestamp, DeviceName, InitiatingProcessCommandLine, ProcessCommandLine, FolderPath

Splunk SPL

sourcetype=WinEventLog OR sourcetype=linux_audit
| (ParentProcessName="java" OR ParentProcessName="java.exe")
| (ProcessName IN ("sh", "bash", "powershell.exe", "cmd.exe"))
| CommandLine=*jgroups*
| table _time, host, ParentProcessName, CommandLine, ProcessName

Sigma

title: Apache Camel JGroups Deserialization RCE
id: 00000000-0000-0000-0000-000000000000
status: experimental
description: Detects potential Remote Code Execution via unsafe deserialization in Apache Camel JGroups component.
author: SecBoard
date: 2026/11/02
logsource:
  category: process_creation
  product: windows
  service: security
detection:
  selection:
    ParentImage|endswith: '\java.exe'
    Image|endswith:
      - '\cmd.exe'
      - '\powershell.exe'
      - '\bash'
      - '\sh'
    CommandLine|contains: 'jgroups'
  condition: selection
fields:
  - CommandLine
  - ParentCommandLine
tags:
  - attack.execution
  - cve.2026.88900

Elastic ES|QL

FROM process WHERE event.type == "start" AND process.parent.executable == "java" AND process.executable IN ("sh", "bash", "powershell.exe", "cmd.exe") AND process.args LIKE "%jgroups%"

SecBoard-generated · behavioral · requires customization — Von SecBoard erzeugt und nicht in einer Zielumgebung validiert. Vor dem Einsatz an die eigene Protokollierung anpassen.

Betroffene Produkte

  • cpe:2.3:a:apache:camel:*:*:*:*:*:*:*:*
  • cpe:2.3:a:apache:camel:*:*:*:*:*:*:*:*

Referenzen