{"id":"CVE-2026-54740","summary":"Lemmy: Lower-ranked federated moderator can remove higher-ranked moderators","details":"Lemmy is a link aggregator and forum for the fediverse. Prior to 0.19.19 and 1.0.0-alpha.18, a lower-ranked remote moderator can remove a higher-ranked moderator by sending a signed ActivityPub Remove activity to the target instance. The local API uses LocalUser::is_higher_mod_or_admin_check to enforce moderator rank, but CollectionRemove::verify in crates/apub/activities/src/community/collection_remove.rs only calls verify_mod_action. CollectionRemove::receive dereferences self.object as an ApubPerson, creates a CommunityModeratorForm, and calls CommunityActions::leave without checking that the actor outranks the moderator identified by the object field. In communities with federated moderators, a junior moderator can therefore strip senior moderators from the community moderator list even though the local API rejects the same action. This issue is fixed in versions 0.19.19 and 1.0.0-alpha.18.","aliases":["GHSA-xmpx-2j2f-c7g7"],"modified":"2026-08-22T03:31:15.657939021Z","published":"2026-08-19T20:14:29.391Z","database_specific":{"cwe_ids":["CWE-862"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54740.json","cna_assigner":"GitHub_M"},"references":[{"type":"WEB","url":"https://github.com/LemmyNet/lemmy/releases/tag/0.19.19"},{"type":"WEB","url":"https://github.com/LemmyNet/lemmy/releases/tag/1.0.0-alpha.18"},{"type":"WEB","url":"https://join-lemmy.org/news/2026-06-09_-_Lemmy_Release_v0.19.19"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54740.json"},{"type":"ADVISORY","url":"https://github.com/LemmyNet/lemmy/security/advisories/GHSA-xmpx-2j2f-c7g7"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-54740"},{"type":"FIX","url":"https://github.com/LemmyNet/lemmy/commit/d127e714a66f34f6b9c8ea15f20097ac907cdf28"},{"type":"FIX","url":"https://github.com/LemmyNet/lemmy/commit/ede1d348344ca2027fd1bc6a0cab25575c0c3a4c"},{"type":"FIX","url":"https://github.com/LemmyNet/lemmy/pull/6475"},{"type":"FIX","url":"https://github.com/LemmyNet/lemmy/pull/6478"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/lemmynet/lemmy","events":[{"introduced":"0"},{"introduced":"1edc9f922debc2c5b1aaaf29c495d7d4fe711b94"},{"fixed":"f6e986e7e54d456aa1ffec38f1576c5bb15e0afd"},{"fixed":"0ab1cd744b659d0f5e35b77dbded142bed550487"},{"fixed":"d127e714a66f34f6b9c8ea15f20097ac907cdf28"},{"fixed":"ede1d348344ca2027fd1bc6a0cab25575c0c3a4c"}],"database_specific":{"source":["AFFECTED_FIELD","REFERENCES"],"extracted_events":[{"introduced":"0"},{"fixed":"0.19.19"},{"introduced":"1.0.0-alpha.0"},{"fixed":"1.0.0-alpha.18"}]}}],"versions":["0.19.19","0.19.19-beta.1","0.19.19-beta.0","0.19.18","0.19.18-beta.3","0.19.18-beta.1","0.19.18-beta.0","0.19.17","0.19.17-beta.0","0.19.16","0.19.16-beta.1","0.19.16-beta.0","0.19.15","0.19.15-beta.0","0.19.14","0.19.14-beta.2","0.19.14-beta.1","0.19.14-beta.0","1.0.0-alpha.12","1.0.0-alpha.10","0.19.13","1.0.0-alpha.9","0.19.13-beta.1","1.0.0-alpha.7","1.0.0-alpha.6","0.19.12","0.19.12-beta.12","0.19.12-beta.11","0.19.12-beta.10","0.19.12-beta.9","0.19.12-beta.8","0.19.12-beta.7","0.19.12-beta.6","0.19.12-beta.5","0.19.12-beta.4","1.0.0-alpha.5","0.19.12-beta.3","0.19.12-beta.2","0.19.12-beta.1","0.19.12-beta.0","0.19.11","0.19.11-beta.2","0.19.11-beta.1","0.19.11-beta.0","1.0.0-alpha.4","0.19.10","1.0.0-alpha.3","0.19.10-beta.2","0.19.10-beta.1","0.19.10-beta.0","1.0.0-alpha.2","1.0.0-alpha.1","0.19.9","0.19.9-beta.4","0.19.9-beta.3","0.19.9-beta.2","1.0.0-alpha.0","0.19.9-beta.1","0.19.9-beta.0","0.19.8","0.19.8-beta.0","0.19.7","0.19.7-beta.2","0.19.7-beta.1","0.19.6","0.19.6-beta.15","0.19.6-beta.14","0.19.6-beta.9","0.19.6-beta.8","0.19.5","0.19.5-alpha.3","0.19.5-alpha.2","0.19.5-alpha.1","0.19.4","0.19.4-rc.11","0.19.4-rc.10","0.19.4-rc.9","0.19.4-rc.8","0.19.4-rc.7","0.19.4-rc.6","0.19.4-rc.5","0.19.4-rc.4","0.19.4-rc.3","0.19.4-rc.2","0.19.4-rc.1","0.19.4-beta.8","0.19.4-beta.7","0.19.4-beta.6","0.19.4-beta.5","0.19.4-beta.4","0.19.4-beta.3","0.19.4-beta.1","0.19.3","0.19.3-rc.1","0.19.2","0.19.2-rc.5","0.19.2-rc.4","0.19.2-rc.2","0.19.2-rc.1","0.19.1-rc.2","0.19.1-rc.1","0.19.0","0.19.0-rc.16","0.19.0-rc.15","0.19.0-rc.14","0.19.0-rc.13","0.19.0-rc.12","0.19.0-rc.11","0.19.0-rc.10","0.19.0-rc.8","0.19.0-rc.7","0.19.0-rc.6","0.19.0-rc.5","0.19.0-rc.4","0.19.0-rc.3","0.19.0-rc.2","0.19.0-beta.7","0.19.0-rc.1","0.18.4-beta.7","0.18.1","0.18.1-rc.10","0.18.1-rc.9","0.18.1-rc.4","0.18.1-rc.1","0.18.0","0.18.0-rc.8","0.18.0-rc.6","0.18.0-rc.5","0.18.0-rc.4","0.18.0-rc.3","0.18.0-rc.2","0.18.0-rc.1","0.17.1","0.17.0","0.17.0-rc.4","0.17.0-rc.3","0.17.0-rc.1","0.16.5","0.16.3","0.16.3-rc.1","0.16.2","0.16.2-rc.3","0.16.2-rc.2","0.16.2-rc.1","0.16.1","0.16.1-rc.1","0.16.0","0.16.0-rc.4","0.16.0-rc.3","0.16.0-rc.2","0.16.0-rc.1","0.15.1","0.15.0","0.15.0-rc.7","0.14.3","0.14.2","0.14.2-rc.1","0.14.1","0.14.0","0.14.0-rc.2","0.14.0-rc.1","0.13.6-rc.2","0.13.5-rc.7","0.13.0","0.13.0-rc.1","0.12.0","0.12.0-rc.2","0.12.0-rc.1","0.11.4-rc.16","0.11.3-rc.4","0.11.0","0.11.2","0.11.1","0.11.0-rc.1","0.10.2","0.10.1","0.10.0","0.10.0-rc.13","0.10.0-rc.12","0.10.0-rc.7","0.9.9","0.9.8","0.9.7","0.9.6","0.9.5","0.9.4","0.9.3","0.9.2","0.9.1","0.9.0","v0.8.10","v0.8.9","v0.8.8","v0.8.7","v0.8.6","v0.8.5","v0.8.3","v0.8.1","v0.8.0","v0.7.64","v0.7.63","v0.7.62","v0.7.61","v0.7.59","v0.7.57","v0.7.56","v0.7.55","v0.7.54","v0.7.53","v0.7.52","v0.7.50","v0.7.49","v0.7.48","v0.7.43","v0.7.47","v0.7.46","v0.7.44","v0.7.42","v0.7.41","v0.7.40","v0.7.39","v0.7.38","v0.7.37","v0.7.36","v0.7.35","v0.7.34","v0.7.31","v0.7.33","v0.7.32","v0.7.26","v0.7.30","v0.7.29","v0.7.28","v0.7.25","v0.7.24","v0.7.23","v0.7.22","v0.7.21","v0.7.19","v0.7.20","v0.7.18","v0.7.17","v0.7.8","v0.7.7","v0.7.6","v0.7.5","v0.7.4","v0.7.3","v0.5.10","v0.4.0.3","v0.0.8.3","v0.0.8.2","v0.0.8.1","v0.0.7.4"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-54740.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N"}]}