Synapse is a Matrix protocol homeserver written in Python with the Twisted framework. A discovered oEmbed or image URL can bypass the url_preview_url_blacklist
setting potentially allowing server side request forgery or bypassing network policies. Impact is limited to IP addresses allowed by the url_preview_ip_range_blacklist
setting (by default this only allows public IPs) and by the limited information returned to the client: 1. For discovered oEmbed URLs, any non-JSON response or a JSON response which includes non-oEmbed information is discarded. 2. For discovered image URLs, any non-image response is discarded. Systems which have URL preview disabled (via the url_preview_enabled
setting) or have not configured a url_preview_url_blacklist
are not affected. This issue has been addressed in version 1.85.0. Users are advised to upgrade. User unable to upgrade may also disable URL previews.
The product performs an authorization check when an actor attempts to access a resource or perform an action, but it does not correctly perform the check.
Name | Vendor | Start Version | End Version |
---|---|---|---|
Synapse | Matrix | * | 1.85.0 (excluding) |
Matrix-synapse | Ubuntu | bionic | * |
Matrix-synapse | Ubuntu | esm-apps/bionic | * |
Matrix-synapse | Ubuntu | esm-apps/focal | * |
Matrix-synapse | Ubuntu | esm-apps/jammy | * |
Matrix-synapse | Ubuntu | focal | * |
Matrix-synapse | Ubuntu | jammy | * |
Matrix-synapse | Ubuntu | kinetic | * |
Matrix-synapse | Ubuntu | lunar | * |
Matrix-synapse | Ubuntu | mantic | * |
Matrix-synapse | Ubuntu | trusty | * |
Matrix-synapse | Ubuntu | upstream | * |
Matrix-synapse | Ubuntu | xenial | * |