Synapse Denial of service due to incorrect application of event authorization rules during state resolution
ImpactIf Synapse and a malicious homeserver are both joined to the same room, the malicious homeserver can trick Synapse into accepting previously rejected events into its view of the current state of that room. This can be exploited in a way that causes all further messages and state changes sent in that room from the vulnerable homeserver to be rejected.Synapse homeservers are affected by this issue if and only if they are joined to rooms which members of untrusted homeservers are joined or invited to.Synapse homeservers in rooms available over public federation **are** affected.Synapse homeservers with federation disabled are not affected.Synapse homeservers in a closed federation containing only trusted servers are not affected.Synapse homeservers which are only joined to rooms with federation disabled[^1] are not affected.PatchesAdministrators of homeservers with federation enabled are advised to upgrade to 1.68.0 or higher.WorkaroundsFederation can be disabled by setting [`federation_domain_whitelist`](https://matrix-org.github.io/synapse/latest/usage/configuration/config_documentation.html#federation_domain_whitelist) to an empty list (`[]`). from the vulnerable homeserver to be rejected. This issue has been patched in version 1.68.0Referenceshttps://github.com/matrix-org/synapse/pull/13723[^1]: See `m.federate` in the [`m.room.create` definition](https://spec.matrix.org/v1.4/client-server-api/#mroomcreate).For more informationIf you have any questions or comments about this advisory, e-mail us at [security@matrix.org](mailto:security@matrix.org).