Discourse is an open-source discussion platform. Prior to 2026.9.0, 2026.8.1, 2026.7.3, and 2026.1.9, sites with secure uploads enabled did not reconcile existing upload security metadata when a previously public category became read-restricted or when category permissions changed during a bulk import. Media and attachments uploaded while the category was public retained a public accessibility flag and remained reachable by anonymous users through their short upload URLs, including uploads associated with deleted topics. This issue is fixed in versions 2026.9.0, 2026.8.1, 2026.7.3, and 2026.1.9.
https://github.com/discourse/discourse/security/advisories/GHSA-298h-xgw6-4pv3
https://github.com/discourse/discourse/commit/b2fb98394b2636b29e850f06b0029f8ca8b48458
https://github.com/discourse/discourse/commit/98f1c021d0e956cded5239a5d8a6afe2b9e1b7e7
https://github.com/discourse/discourse/commit/83f5f9f1df7ddc79ec0950e1b2038ba659635708
https://github.com/discourse/discourse/commit/16017732981fdb3ee65d7b3c69c573610bf02aab