Skip to content

CVE-2026-67593: Apache ActiveMQ Artemis Pre-Authentication Queue Deletion via Openwire

HERMES

HERMES THREAT SCORE & ENTERPRISE BROKER DISRUPTION

Target: Apache ActiveMQ Artemis β€” Openwire Protocol Handler & Queue Manager
Confidence: 96%
92 / 100
CRITICAL

Measures real-world operational relevance, exploit weaponization, and active threat posture.

Dimension Breakdown
Exploitability 19 / 20
Threat Activity 18 / 20
Weaponization 18 / 20
Exposure 19 / 20
Prevalence 18 / 20
Impact 19 / 20
Exploit Maturity 18 / 20
Attack Chain Potential 19 / 20
βš–οΈ Divergence & Operational Rationale

CVSS v3.1 evaluates CVE-2026-67593 at 9.1 Critical (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H) with zero confidentiality impact. In enterprise distributed systems and asynchronous AI agent pipelines, Hermes Threat Score weighs this at 92 (CRITICAL). Artemis queues serve as the foundational backbone for transactional message exchange, audit logging, and agent tool execution queues. Because queue deletion is executed prior to connection authentication, remote unauthenticated attackers can silently destroy active destination queues without triggering failed login alarms, causing permanent data loss and state desynchronization.

HASS

HASS AGENTIC SEVERITY & PIPELINE DENIAL OF SERVICE

Target: Asynchronous Agent Task Queues, Telemetry Buses & Inter-Agent Coordination
Confidence: 94%
82 / 100
HIGH

Measures specific systemic risk arising from autonomy, tool authority, and cascading execution.

Dimension Breakdown
Autonomy 16 / 20
Tool Access 17 / 20
Privilege 12 / 15
Persistence 11 / 15
External Impact 14 / 15
Propagation 12 / 15
βš–οΈ Divergence & Operational Rationale

In modern multi-agent systems, message brokers function as the central nervous system decoupling planner agents, worker nodes, and execution tool workers. Exploiting CVE-2026-67593 severs agent communication channels instantaneously. Dropping durable queues causes distributed multi-agent workflows to stall indefinitely, inducing state deadlocks, lost feedback loops, and cascading execution failures across dependent enterprise microservices.

πŸ•ΈοΈ Connected Knowledge Graph & Provenance

CVE-2026-67593: Apache ActiveMQ Artemis Pre-Authentication Queue Deletion via OpenwireVULNERABILITY

Connected Nodes: 0

The OpenWire protocol operates as an optimized binary protocol where clients exchange structured commands (ConnectionInfo, SessionInfo, ConsumerInfo, RemoveSubscriptionInfo). Under standard configurations, authentication is enforced during ConnectionInfo processing:

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” TCP:61616 OpenWire β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Remote Attacker β”‚ ─────────────────────────────> β”‚ Apache ActiveMQ Artemis Host β”‚
β”‚ (Unauthenticatedβ”‚ β”‚ β”‚
β”‚ Raw Socket) β”‚ ─── RemoveSubscriptionInfo ──> β”‚ -> Protocol Packet Demux β”‚
β”‚ β”‚ (Bypasses Auth Filter) β”‚ -> Bypasses SecurityManager β”‚
β”‚ β”‚ β”‚ -> Deletes Target Queue! β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
ParameterTechnical DetailOperational Impact
CVE IdentifierCVE-2026-67593Apache Security Advisory / OSS-Security
Vulnerability ClassMissing Authentication (CWE-306)Pre-authentication queue deletion & DoS
Affected ComponentOpenWireConnection.java & artemis-openwire-protocolOpenWire wire format command processing
Default PortTCP 61616 (OpenWire connector)Exposed ingress, internal service meshes
Authentication RequiredNone (PR:N)Zero credentials needed
Exploit VectorMalformed RemoveSubscriptionInfo wire packetImmediate message purge & queue deletion
Remediated ReleaseApache Artemis 2.57.0Official release update

The vulnerability originates in the state machine of org.apache.activemq.artemis.core.protocol.openwire.OpenWireConnection. When an OpenWire connection is initiated, the broker instantiates a session context to process commands.

Under normal operation, a client issues ConnectionInfo, providing authentication credentials that are validated against JAAS security plugins. However, the connection handler’s packet dispatcher (processCommand) processes subscription removal commands out-of-band:

// Vulnerable logic pattern in OpenWireConnection.java
public Response processRemoveSubscriptionInfo(RemoveSubscriptionInfo info) throws Exception {
checkConnected(); // Only checks if TCP socket is active, NOT if authenticated!
String subscriptionName = info.getSubscriptionName();
String clientId = info.getClientId();
// Direct invocation of broker queue deletion
server.destroyQueue(SimpleString.toSimpleString(subscriptionName), null, false, true);
return null;
}

Because checkConnected() merely asserts the physical transport connection rather than an authenticated session state, the packet processor immediately maps the supplied subscription or queue name to an internal Queue resource and executes destroyQueue().

sequenceDiagram
autonumber
actor Attacker as "Unauthenticated Attacker"
participant Transport as "OpenWire TCP Ingress (Port 61616)"
participant Parser as "OpenWire Protocol Demuxer"
participant SecMgr as "Artemis Security Manager"
participant QMgr as "Queue / Address Manager"
participant Storage as "Durable Journal Storage"
Attacker->>Transport: "TCP Handshake (SYN -> SYN/ACK -> ACK)"
Attacker->>Transport: "Send WireFormat Negotiation Frame"
Transport->>Parser: "Demux command stream"
Note over Attacker,Parser: "Skipping ConnectionInfo authentication frame entirely"
Attacker->>Transport: "Send RemoveSubscriptionInfo(targetQueue='orders.payments')"
Parser->>Parser: "checkConnected() passes (socket alive)"
Note over Parser,SecMgr: "SecurityManager.checkPermission() BYPASSED"
Parser->>QMgr: "server.destroyQueue('orders.payments')"
QMgr->>Storage: "Delete journal records & purge active messages"
Storage-->>QMgr: "Queue unmapped & deleted"
QMgr-->>Parser: "Queue destroyed successfully"
Note over QMgr,Storage: "All in-flight transactions permanently erased"

Exploitation requires no credentials or valid client certificates:

  1. Network Probe & WireFormat Negotiation: The attacker connects to TCP port 61616 and transmits standard OpenWire WireFormatInfo bytes to establish packet framing and protocol version agreement.
  2. Omission of Authentication Handshake: Rather than transmitting a ConnectionInfo command with credentials, the attacker directly constructs a RemoveSubscriptionInfo command frame.
  3. Queue Name Targeting: The attacker sets subcriptionName or clientId to match high-value business or agent task queues (e.g., agent.tasks.inbound, finance.transfers, audit.trail).
  4. Command Dispatch: The packet is sent across the socket. The server decodes the frame and immediately invokes server.destroyQueue().
  5. Cascading State Destruction: Active consumers attached to the target queue receive sudden disconnect signals or null responses. Durable message journals are erased, and business transactions in flight are unrecoverably purged.

Detecting exploitation of CVE-2026-67593 requires inspecting broker journal events, transport connection audits, and network flow anomalies.

In vulnerable versions, Artemis audit logs (audit.log) record queue destructions without prior user authentication entries:

2026-09-20 03:14:22,891 [audit] AMQ601004: User null is deleting queue 'finance.payments.dlq' on connection /198.51.100.44:48201
2026-09-20 03:14:23,102 [audit] AMQ221023: Queue finance.payments.dlq has been deleted

The presence of User null or missing authentication session identifiers prior to destroyQueue is a definitive indicator of compromise.

  • Inspect network captures on port 61616 for TCP sessions containing RemoveSubscriptionInfo command IDs (COMMAND_TYPE = 9) where no preceding ConnectionInfo (COMMAND_TYPE = 3) was exchanged.
  • Sudden drops in queue depths accompanied by consumer error logs reporting AMQ229017: Queue does not exist.

title: Unauthenticated ActiveMQ Artemis Queue Deletion
id: e9c1a012-78d4-4f2b-91c2-67593cve2026
status: experimental
description: Detects queue destruction events executed by null or unauthenticated users in Apache ActiveMQ Artemis audit logs.
logsource:
product: activemq_artemis
service: audit
detection:
selection:
message|contains:
- 'User null is deleting queue'
- 'is deleting queue'
filter_auth:
message|contains: 'User authenticated'
condition: selection and not filter_auth
level: critical
tags:
- attack.impact
- attack.t1499
- cve.2026-67593

  1. Upgrade Artemis Broker: Upgrade to Apache Artemis 2.57.0 or later immediately. The patch validates connection session security context before processing any subscription removal commands.
  2. Disable OpenWire Connector: If clients use AMQP 1.0, MQTT, or STOMP, disable the OpenWire acceptor in broker.xml:
    <!-- Remove or comment out the openwire acceptor if not strictly needed -->
    <!-- <acceptor name="artemis">tcp://0.0.0.0:61616?protocols=OPENWIRE</acceptor> -->
  • Network Ingress Isolation: Restrict access to port 61616 to verified internal application tiers using firewall or Kubernetes network policies. Never expose Artemis acceptors to public internet routing.
  • Mutual TLS (mTLS): Enforce strict mTLS client certificate verification on all acceptors (sslEnabled=true&needClientAuth=true) to terminate untrusted connections before protocol parsing occurs.