GHSA-jj53-8fmw-f2w2 CVE-2021-39163 PYSEC-2021-424
Adding a private/unlisted room to a community exposes room metadata in an unauthorised manner.
- Severity
- 0.0 / 10
- Low · CVSS 4.0
- Exploit chance (EPSS)
- 0.90%
- Chance of exploitation in the next 30 days. Higher than 59.57% of scored vulnerabilities.
- Known exploited
- No
- Not in CISA's catalog
- Weakness
- CWE-200 Exposure of Sensitive Information to an Unauthorized Actor
- Fix
1.41.1- Upgrade matrix-synapse to this version or later
Description
Impact
Unauthorised users can access the name, avatar, topic and number of members of a room if they know the ID of the room. This vulnerability is limited to homeservers where:
- the vulnerable homeserver is in the room; and
- untrusted users are permitted to create groups (communities).
By default, only homeserver administrators can create groups. However, homeserver administrators can already access this information in the database or using the admin API. As a result, only homeservers where the configuration setting enable_group_creation has been set to true are impacted.
Patches
Server administrators should upgrade to 1.41.1 or higher.
Workarounds
Server administrators can set enable_group_creation to false in their homeserver configuration (this is the default value) to prevent creation of groups by non-administrators.
Administrators that are using a reverse proxy could, with partial loss of group functionality, block the following endpoints:
/_matrix/client/r0/groups/{group_id}/rooms/_matrix/client/unstable/groups/{group_id}/rooms
References
n/a
For more information
If you have any questions or comments about this advisory, e-mail us at security@matrix.org.
Affected versions
PyPI
| Package | Vulnerable | Fixed in |
|---|---|---|
| matrix-synapse | < 1.41.1 |
1.41.1 |
| matrix-synapse | < 1.41.1 |
1.41.1 |
How to fix
Move to the fixed version or later with your package manager, update the lockfile, and run your tests. If the package only arrives through another dependency, upgrade that dependency first. If none of its releases pulls a fixed version yet, force the version with your package manager's override.
matrix-synapse PyPI → 1.41.1
- pip
pip install --upgrade "matrix-synapse>=1.41.1"- poetry
poetry add "matrix-synapse>=1.41.1"- uv
uv add "matrix-synapse>=1.41.1"
Severity breakdown
CVSS 4.0 0.0
CVSS:4.0/AV:N/AC:H/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
- Attack vector
- Network
- Attack complexity
- High
- Attack requirements
- None
- Privileges required
- Low
- User interaction
- None
- Confidentiality (vulnerable system)
- Low
- Integrity (vulnerable system)
- None
- Availability (vulnerable system)
- None
- Confidentiality (subsequent systems)
- None
- Integrity (subsequent systems)
- None
- Availability (subsequent systems)
- None
CVSS 3.1 3.1
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N
- Attack vector
- Network
- Attack complexity
- High
- Privileges required
- Low
- User interaction
- None
- Scope
- Unchanged
- Confidentiality
- Low
- Integrity
- None
- Availability
- None
Weakness
CWE-200: Exposure of Sensitive Information to an Unauthorized Actor
The product exposes sensitive information to an actor that is not explicitly authorized to have access to that information.
How to prevent it
- Architecture and Design: Compartmentalize the system to have "safe" areas where trust boundaries can be unambiguously drawn. Do not allow sensitive data to go outside of the trust boundary and always be careful when interfacing with a compartment outside of the safe area. Ensure that appropriate compartmentalization is built into the system design, and the compartmentalization allows for and reinforces privilege separation functionality. Architects and designers should rely on the principle of least privilege to decide the appropriate time to use privileges and the time to drop privileges.
References
Advisories
Packages
Other links
- github.com/matrix-org/synapse/security/advisories/GHSA-jj53-8fmw-f2w2
- github.com/matrix-org/synapse/commit/cb35df940a
- github.com/matrix-org/synapse/releases/tag/v1.41.1
- github.com/pypa/advisory-database/tree/main/vulns/matrix-synapse/PYSEC-2021-424…
- lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/2VHDE…
- lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/PXT7I…
- lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/PXT7I…
- lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/2VHDE…
Timeline
- Published
- Last updated by the source
- Latest EPSS score
Related advisories
| Advisory | Severity | Why it's related |
|---|---|---|
| GHSA-6qf2-7x63-mm6v Synapse pagination Denial of Service | Low | Also affects matrix-synapse |
| GHSA-8q93-326v-3m7g Synapse CPU starvation (Denial of Service) | Medium | Also affects matrix-synapse |
| GHSA-fh66-fcv5-jjfr Synapse's invalid device keys degrade federation functionality | Medium | Also affects matrix-synapse |
| GHSA-v56r-hwv5-mxg6 Synapse vulnerable to federation denial of service via malformed events | High | Also affects matrix-synapse |
| GHSA-56w4-5538-8v8h Synapse Matrix has a partial room state leak via Sliding Sync | Medium | Also affects matrix-synapse |
| GHSA-vp6v-whfm-rv3g Synapse can be forced to thumbnail unexpected file formats, invoking external, potentially untrustworthy decoders | Critical | Also affects matrix-synapse |
| GHSA-f3r3-h2mq-hx2h Synapse allows a a malformed invite to break the invitee's `/sync` | Medium | Also affects matrix-synapse |
| GHSA-rfq8-j7rh-8hf2 Synapse allows unsupported content types to lead to memory exhaustion | High | Also affects matrix-synapse |
MergeHarbor checks every repository's dependencies against this database, ranks what matters by exploitability and reachability, routes it to the owning team and opens the fix pull request.
Check your repos with MergeHarbor