CVE-2020-26890 Denial of service attack due to invalid JSON

High 7.5 Published Updated

Remote attackers can cause persistent denial of service in Matrix Synapse by sending malformed JSON values in room member events.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2020-26890?

CVE-2020-26890 is a high-severity denial of service vulnerability in Fedoraproject Fedora, published on 24 Nov 2020. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

Matrix Synapse before 1.20.0 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.

Weakness: CWE-20

Which versions are affected by CVE-2020-26890?

3 open source packages ship an affected version, including matrix-synapse. It affects 2 products.

PackageAffectedFixed in
matrix-synapse PyPIAll versions1.20.0
matrix-synapse PyPIAll versions1.20.0
matrix-synapse PyPIAll versions1.20.0

Products include Fedoraproject Fedora, Matrix Synapse.

How do I fix CVE-2020-26890?

Upgrade matrix-synapse to 1.20.0 or later.

Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.

Is CVE-2020-26890 being exploited?

There is no known exploitation of CVE-2020-26890 in the wild and no public exploit code.

All Fedoraproject Fedora vulnerabilities

Sources

Also known as GHSA-4mp3-385r-v63f, PYSEC-2020-237, UBUNTU-CVE-2020-26890.

Is CVE-2020-26890 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free