{"id":"CVE-2026-80207","title":"APITable through 1.13.0-beta.1 annotates the create handler of InternalNotifyController with requiredLogin = false","summary":"APITable through 1.13.0-beta.1 annotates the create handler of InternalNotifyController with requiredLogin = false. ResourceInterceptor honours that annotation by returning before any session or API key is validated, and the nginx gatewa…","severity":"medium","cvss":5.3,"cvssVector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N","cwe":["CWE-306"],"published":"2026-08-27","updated":"2026-09-23","sourceUpdated":"2026-09-23T17:17:42.420","source":"NVD","sourceUrl":"https://nvd.nist.gov/vuln/detail/CVE-2026-80207","references":[{"url":"https://github.com/apitable/apitable","label":"disclosure@vulncheck.com"},{"url":"https://github.com/apitable/apitable/blob/88b24ce9f359cc434778be75d03603182882dc76/backend-server/application/src/main/java/com/apitable/internal/controller/InternalNotifyController.java#L50","label":"disclosure@vulncheck.com"},{"url":"https://github.com/apitable/apitable/issues/1813","label":"disclosure@vulncheck.com"},{"url":"https://www.vulncheck.com/advisories/apitable-through-1.13.0-beta.1-missing-authentication-on-the-internal-notification-create-endpoint","label":"disclosure@vulncheck.com"},{"url":"https://github.com/apitable/apitable/issues/1813","label":"134c704f-9b21-4f2e-91b3-4a467353bcc0"}],"tags":["nvd"],"epss":0.00286,"epssPercentile":0.21378,"ingestedAt":"2026-09-23T17:28:14.804Z","slug":"CVE-2026-80207","body":"## Overview\n\nAPITable through 1.13.0-beta.1 annotates the create handler of InternalNotifyController with requiredLogin = false. ResourceInterceptor honours that annotation by returning before any session or API key is validated, and the nginx gateway shipped with the product proxies every /api request to the backend server, so POST /api/v1/internal/notification/create is reachable by any unauthenticated client that can reach the gateway. An attacker can persist arbitrary notifications in apitable_player_notification against any user ID they name, and because fromUserId can be set to 0 the message is stored with the system sender and renders in the victim's inbox as a legitimate system notification. The body extras content is stored verbatim and forwarded to the frontend.\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.","depth":"sunlit","depthScore":29,"depthScoreParts":{"impact":29.2,"likelihood":0.1,"exploitation":0,"ransomware":0},"changes":[]}