Input validation error in Synapse - CVE-2020-26890

 

Input validation error in Synapse - CVE-2020-26890

Published: November 24, 2020 / Updated: November 27, 2020


Vulnerability identifier: #VU48685
CSH Severity: Medium
CVSS v4: 6.8 [CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:A/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N]
CVE-ID: CVE-2020-26890
CWE-ID: CWE-20
Exploitation vector: Remote access
Exploit availability: No public exploit available

Vulnerability details

The vulnerability allows a remote user to perform a denial of service (DoS) attack.

The vulnerability exists due to the application erroneously permits non-standard NaN, Infinity, and -Infinity JSON values in fields of m.room.member events, allowing remote attackers to execute a denial of service attack against the federation and common Matrix clients. If such a malformed event is accepted into the room's state, the impact is long-lasting and is not fixed by an upgrade to a newer version, requiring the event to be manually redacted instead. Since events are replicated to servers of other room members, the impact is not constrained to the server of the event sender.


Affected software

Synapse
Arch Linux
Fedora
synapse (Alpine package)
python-authlib
python-signedjson
python-canonicaljson
matrix-synapse

How to mitigate CVE-2020-26890

Install updates from vendor's website.

Synapse - update to 1.20.0
python-authlib - update to 0.14.3-1.fc32
python-signedjson - update to 1.1.1-3.fc32
python-canonicaljson - addressed in versions 1.4.0-1.fc32, 1.4.0-1.fc33
matrix-synapse - addressed in versions 1.23.0-1.fc32, 1.23.0-1.fc33

External References

Related Security Bulletins