{"id":"CVE-2026-86112","title":"BookWyrm through 0.9.1 fails to validate user visibility permissions in the Favorite and Unfavorite views, allowing authenticated attackers to favorite or unfavorite followers-only and direct statuses they cannot access","summary":"BookWyrm through 0.9.1 fails to validate user visibility permissions in the Favorite and Unfavorite views, allowing authenticated attackers to favorite or unfavorite followers-only and direct statuses they cannot access. Attackers can PO…","severity":"medium","cvss":5.4,"cvssVector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N","cwe":["CWE-639"],"vendor":"bookwyrm-social","product":"bookwyrm","affected":["bookwyrm <= 0.9.1"],"published":"2026-09-05","updated":"2026-09-10","sourceUpdated":"2026-09-10T16:18:01.420","source":"NVD","sourceUrl":"https://nvd.nist.gov/vuln/detail/CVE-2026-86112","references":[{"url":"https://github.com/bookwyrm-social/bookwyrm","label":"disclosure@vulncheck.com"},{"url":"https://github.com/bookwyrm-social/bookwyrm/blob/v0.9.1/bookwyrm/views/interaction.py","label":"disclosure@vulncheck.com"},{"url":"https://github.com/geo-chen/oss/blob/main/bookwyrm.md#finding-2-authenticated-idor-in-favoriteunfavorite-allows-interaction-with-private-statuses","label":"disclosure@vulncheck.com"},{"url":"https://www.vulncheck.com/advisories/bookwyrm-through-0.9.1-missing-authorization-on-the-favorite-and-unfavorite-endpoints","label":"disclosure@vulncheck.com"}],"tags":["nvd","cve.org"],"ssvc":{"exploitation":"none","automatable":"no","technicalImpact":"partial","timestamp":"2026-09-10T14:19:13.810369Z"},"epss":0.00177,"epssPercentile":0.07513,"ingestedAt":"2026-09-06T07:51:55.750Z","slug":"CVE-2026-86112","body":"## Overview\n\nBookWyrm through 0.9.1 fails to validate user visibility permissions in the Favorite and Unfavorite views, allowing authenticated attackers to favorite or unfavorite followers-only and direct statuses they cannot access. Attackers can POST to the favorite endpoint with a status ID to create unauthorized interactions, trigger ActivityPub broadcasts, and enumerate private status IDs through response differentiation.\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.","depth":"sunlit","depthScore":30,"depthScoreParts":{"impact":29.7,"likelihood":0,"exploitation":0,"ransomware":0},"changes":[]}