CVE-2026-24471
CriticalSummary
Vulnerability in the continuwuity Matrix homeserver written in Rust allows an attacker with a malicious remote server to cause the local server to sign an arbitrary event upon user interaction. When a user account leaves a room (rejecting an invite), joins a room, or knocks on a room, the victim server may ask a remote server for assistance. If the victim asks the attacker server for assistance, the attacker can provide an arbitrary event, which the victim will sign and return. For the /leave endpoint, this works for any event with a supported room version, where origin and origin_server_ts are set by the victim. For /join, an additional victim-set content field in the format of a join membership is needed. For /knock, an additional victim-set content field in the format of a knock membership and a room version not between 1 and 6 is needed.
Risk Assessment
An attacker can cause arbitrary events to be signed, potentially leading to integrity and authenticity breaches in the Matrix network, as well as privilege escalation or propagation of malicious content.
Recommendation
It is recommended to update the continuwuity server to a patched version. Also, monitor logs for unusual assistance requests to remote servers.
Original NVD description (English source)
continuwuity is a Matrix homeserver written in Rust. This vulnerability allows an attacker with a malicious remote server to cause the local server to sign an arbitrary event upon user interaction. Upon a user account leaving a room (rejecting an invite), joining a room or knocking on a room, the victim server may ask a remote server for assistance. If the victim asks the attacker server for assistance the attacker is able to provide an arbitrary event, which the victim will sign and return to the attacker. For the /leave endpoint, this works for any event with a supported room version, where the origin and origin_server_ts is set by the victim. For the /join endpoint, an additionally victim-set content field in the format of a join membership is needed. For the /knock endpoint, an additional victim-set content field in the format of a knock membership and a room version not between 1 and 6 is needed. This was exploited as a part of a larger chain against the continuwuity.org homeserve

