CVE-2023-32683 Information
Description
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.
Reference
https://github.com/matrix-org/synapse/security/advisories/GHSA-98px-6486-j7qc
https://github.com/matrix-org/synapse/pull/15601
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.