The vulnerability allowed guest users to discover archived public channels they were not members of, which is an information disclosure issue. The root cause was a flawed authorization model tied to the ExperimentalViewArchivedChannels feature flag. The logic associated with this flag did not correctly restrict access for guest users, allowing them to see more than they were supposed to.
The provided patch addresses this vulnerability by removing the ExperimentalViewArchivedChannels feature flag and all associated logic. This change simplifies the permission model and ensures that archived channels are subject to the same access controls as active channels. The key changes are in server/channels/app/authorization.go, where the checks for the feature flag are removed from several permission-checking functions.
The primary endpoint for exploiting this vulnerability is /api/v4/teams/{team_id}/channels/search_archived. The handler for this endpoint, which is not directly in the patch but is the entry point for the exploit, would have used the flawed authorization logic to filter search results. By fixing the underlying authorization functions, the patch secures this endpoint and any other part of the application that deals with channel access.