CVE-2026-24044
Linux Alpine vulnerability analysis and mitigation

Overview

CVE-2026-24044 (also tracked as ELEMENTSEC-2025-1670) is a weak server key generation vulnerability in Element Server Suite Community Edition (ESS Community) that allows network attackers to potentially recreate the same Matrix server signing key pair and impersonate the victim server. The flaw exists in the matrix-tools container before version 0.5.7, used by the ESS Community Helm Chart secrets initialization hook. It affects all ESS Community Helm Chart versions before 25.12.2; ESS Classic and other Synapse-based deployments are not affected. The vulnerability was published on February 12, 2026, and carries a CVSS v4.0 base score of 9.2 (Critical) (GitHub Advisory, Feedly).

Technical details

The root cause is classified as CWE-336 (Same Seed in Pseudo-Random Number Generator), meaning the PRNG used during Matrix server signing key generation is seeded in a predictable or static manner, allowing an attacker to reproduce the same Ed25519 key pair (GitHub Advisory). The vulnerability is triggered only when the Helm chart's secrets initialization hook runs with default settings — specifically when initSecrets.enabled is not set to false and synapse.signingKey is not explicitly defined in the chart values. Because Matrix server signing keys authenticate both requests originating from and events constructed on a given server, an attacker who recreates the key pair can forge federation requests and events as if they were the victim server. The issue was introduced in the key generation logic of the matrix-tools container and was fixed in matrix-tools 0.5.7 (GitHub Advisory, ESS Helm Maintenance Docs).

Impact

A successful attacker who recreates the weak signing key pair can fully impersonate the vulnerable Matrix server in federation, forging authenticated server requests and room events without authorization. This impacts the confidentiality, integrity, and availability of all Matrix rooms in which the vulnerable server participates as a member — including the ability to inject or manipulate events. Notably, the confidentiality of past conversations in end-to-end encrypted rooms is not impacted, as E2EE keys are separate from server signing keys. The impact is limited to deployments where federation APIs are exposed to an untrusted network; deployments operating in a closed, trusted federation are not affected (GitHub Advisory, ESS Helm Release 25.12.2).

Exploitation steps

  1. Reconnaissance: Identify ESS Community deployments with public Matrix federation enabled by querying /_matrix/key/v2/server on target homeservers. Use the published vulnerability check script to detect servers advertising the weak key signature pattern (l/O9hxMVKB6Lg+3Hqf0FQQZhVESQcMzbPN1Cz2nM3og) (GitHub Advisory).
  2. Key Reproduction: Exploit knowledge of the insecure PRNG seed used by matrix-tools before 0.5.7 to reproduce the same Ed25519 signing key pair that was generated during the victim server's initialization hook execution.
  3. Server Impersonation: Use the reproduced private signing key to sign forged Matrix federation requests and room events, presenting them as originating from the victim server to other federated homeservers.
  4. Event Injection/Manipulation: Inject malicious events into Matrix rooms where the victim server is a member, or forge server-to-server API requests, compromising room integrity and potentially accessing room state visible to the victim server (GitHub Advisory, ESS Helm Maintenance Docs).

Indicators of compromise

  • Network: Unexpected or anomalous federation requests arriving at other Matrix homeservers claiming to originate from the vulnerable server but not matching expected traffic patterns; duplicate or conflicting server key advertisements.
  • Matrix Key Endpoint: The /_matrix/key/v2/server response advertising the key ID ed25519:0 without a corresponding old_verify_keys revocation entry — use the published shell script to check: curl -s "https://<HOMESERVER>/_matrix/key/v2/server" | grep -qve "l/O9hxMVKB6Lg+3Hqf0FQQZhVESQcMzbPN1Cz2nM3og" (GitHub Advisory).
  • Logs: Synapse federation logs showing unexpected or unauthorized event submissions attributed to the local server from external sources; events signed with ed25519:0 that were not generated by the legitimate server.
  • Kubernetes: Presence of Helm-managed secrets with label app.kubernetes.io/managed-by=matrix-tools-init-secrets generated before upgrading to chart version 25.12.2, indicating the signing key may have been generated with the vulnerable method.

Mitigation and workarounds

The primary fix is to upgrade to ESS Community Helm Chart 25.12.2 or later, which includes matrix-tools 0.5.8 and Synapse 1.144.0-ess.2. This release automatically generates a new signing key, marks the old key as revoked, and re-signs all existing events — but only if initSecrets.enabled is not set to false and synapse.signingKey is not explicitly defined (ESS Helm Release 25.12.2). Deployments that hard-coded the vulnerable signing key into synapse.signingKey must perform a manual key rotation: generate a new Ed25519 key with signedjson, update synapse.signingKey, configure old_signing_keys to revoke the old key, and trigger the event_resign background job via the Synapse Admin API (ESS Helm Maintenance Docs). No configuration-only workaround exists; the vendor explicitly states there are no workarounds other than patching. Deployments not currently federating with untrusted networks should apply the update before enabling public federation (GitHub Advisory).

Community reactions

Element published a GitHub Security Advisory (GHSA-qwcj-h6m8-vp6q) classifying the issue as Critical and released an emergency patch (ESS Community Helm Chart 25.12.2) on December 19, 2025, urging users to apply the update as quickly as possible (ESS Helm Release 25.12.2). The advisory notes that ESS Classic and other Synapse-based deployments are unaffected, narrowing the scope to ESS Community and ESS Pro Helm chart deployments. No significant independent researcher commentary or broad media coverage has been identified beyond the vendor advisory and standard vulnerability database entries.

Additional resources


SourceThis report was generated using AI

Related Linux Alpine vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-52688HIGH7.5
  • Linux Debian logoLinux Debian
  • pdns-recursor
NoYesJul 23, 2026
CVE-2026-52686LOW3.7
  • Linux Debian logoLinux Debian
  • pdns-recursor
NoYesJul 23, 2026
CVE-2026-54441NONEN/A
  • Mbed TLS logoMbed TLS
  • mbedtls
NoYesJul 23, 2026
CVE-2026-54435NONEN/A
  • Mbed TLS logoMbed TLS
  • mbedtls-debugsource
NoYesJul 23, 2026
CVE-2026-50713NONEN/A
  • Mbed TLS logoMbed TLS
  • mbedtls3
NoYesJul 23, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management