matrix-org/synapse · Security

Denial of service (via resource exhaustion) due to improper input validation on third-party identifier endpoints

GHSA ID
GHSA-w9fg-xffh-p362
CVE ID
CVE-2021-21394
Severity
medium
Published
Updated
CVSS
5.3 · CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H
CVSS v3
5.3 · CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H
CVSS v4
6 · CVSS:4.0/AV:N/AC:H/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

Description

Impact

Missing input validation of some parameters on the endpoints used to confirm third-party identifiers could cause excessive use of disk space and memory leading to resource exhaustion.

Patches

The issue is fixed by #9321.

Workarounds

Depending on the needs and configuration of the homeserver a few options are available:

  1. Using email as third-party identifiers be disabled by not configuring the email setting.

  2. Using phone numbers as third-party identifiers can be disabled by ensuring that account_threepid_delegates.msisdn is not configured.

  3. Additionally, the affected endpoint patterns can be blocked at a reverse proxy:

    • ^/_matrix/client/(r0|unstable)/register/email
    • ^/_matrix/client/(r0|unstable)/register/msisdn
    • ^/_matrix/client/(r0|unstable)/account/password
    • ^/_matrix/client/(r0|unstable)/account/3pid

CWEs

References