CVE-2022-39246 json
matrix-android-sdk2 vulnerable to impersonation via forwarded Megolm sessions
published 2022-09-28 4 y ago modified 2026-06-17 4 mo ago also GHSA-2pvj-p485-cp3m , EUVD-2022-6668
- cvss
- 7.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.9%
- EPSS 0.9% chance of exploitation in 30 days, percentile 58%
- public exploits
- 0
- none known
Summary
matrix-android-sdk2 is the Matrix SDK for Android. Prior to version 1.5.1, an attacker cooperating with a malicious homeserver can construct messages appearing to have come from another person. Such messages will be marked with a grey shield on some platforms, but this may be missing in others. This attack is possible due to the key forwarding strategy implemented in the matrix-android-sdk2 that is too permissive. Starting with version 1.5.1, the default policy for accepting key forwards has been made more strict in the matrix-android-sdk2. The matrix-android-sdk2 will now only accept forwarded keys in response to previously issued requests and only from own, verified devices. The SDK now sets a `trusted` flag on the decrypted message upon decryption, based on whether the key used to decrypt the message was received from a trusted source. Clients need to ensure that messages decrypted with a key with `trusted = false` are decorated appropriately (for example, by showing a warning for such messages). As a workaroubnd, current users of the SDK can disable key forwarding in their forks using `CryptoService#enableKeyGossiping(enable: Boolean)`.
Patch / fix
- maven org.matrix.android:matrix-android-sdk2 1.5.1
- matrix software_development_kit 1.5.1
CISA SSVC
- Exploitation
- none
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 18 mo ago
Exploit prediction
0.87% chance of exploitation in the next 30 days, higher than 58% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N |
| NVD | 3.1 | 5.3 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N |
| GitHub | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| maven | org.matrix.android:matrix-android-sdk2 | <1.5.1 |
1.5.1 |
Affected products
- matrix-org matrix-android-sdk2
Classification
References
-
github.com
/matrix-org/matrix-spec-proposals/pull/3061
web, patch, third-party-advisory
-
github.com
/matrix-org/matrix-android-sdk2/commit/77df720a238d17308deab83ecaa37f7a4740a17e
web, patch, third-party-advisory
-
github.com
/matrix-org/matrix-android-sdk2/security/advisories/GHSA-2pvj-p485-cp3m
web, mitigation, patch, third-party-advisory
-
github.com
/matrix-org/matrix-android-sdk2/releases/tag/v1.5.1
web, release-notes, third-party-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2022-39246
advisory
-
github.com
/matrix-org/matrix-android-sdk2
package
Sources
- CVE List CVE-2022-39246
- GitHub Advisory GHSA-2pvj-p485-cp3m
- NVD CVE-2022-39246
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.