Vulnerability · Published Feb 13, 2025 · Assigned by GitHub_M
CVE-2025-24904libsignal-service-rs doesn't sanity check plaintext envelopes are not sanity-checked
High 8.5
In plain English
A high-severity improper authentication in libsignal-service-rs from whisperfish. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.2% (higher than 15% of all known vulnerabilities).
Official description
libsignal-service-rs is a Rust version of the libsignal-service-java library which implements the core functionality to communicate with Signal servers. Prior to commit 82d70f6720e762898f34ae76b0894b0297d9b2f8, plaintext content envelopes could be injected by a server or a malicious client, and may have been able to bypass the end-to-end encryption and authentication. The vulnerability is fixed per 82d70f6720e762898f34ae76b0894b0297d9b2f8. The `Metadata` struct contains an additional `was_encrypted` field, which breaks the API, but should be easily resolvable. No known workarounds are available.
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| whisperfish | libsignal-service-rs | < 82d70f6720e762898f34ae76b0894b0297d9b2f8 |
Weakness: CWE-287, CWE-74 · Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:H/A:N