---
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
  - cve.org
  - exploit-available
epss: 0.00286
epssPercentile: 0.21378
ingestedAt: '2026-09-23T17:28:14.804Z'
vendor: apitable
product: apitable
affected:
  - apitable <= 1.13.0-beta.1
exploitAvailable: true
ssvc:
  exploitation: poc
  automatable: 'yes'
  technicalImpact: partial
  timestamp: '2026-08-27T18:10:51.386039Z'
---

## Overview

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 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.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
