Description
Baserow interpolates a user's display name into the rich-text mention markup without HTML encoding. PATCH /api/user/account/ stores the first_name value verbatim, and the mention renderer in web-frontend/modules/core/editor/mention.js builds its element with a template literal that places the name into a data-label attribute and the element body unescaped. A name containing a double quote closes that attribute and the opening tag, so following markup lands in the element content. The result is rendered through v-html by the rich-text field components, so any rich-text cell mentioning the account executes the stored script for every workspace member who views the table, without a click. Any workspace member, at the lowest permission level, can set the name and reach every other member of the workspace, and the payload persists until the name is changed or the mentioning row is removed. Version 2.3.0 escapes the value before interpolation.
Published: 2026-08-24
Score: 5.3 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Stored Cross‑Site Scripting
Action: Patch
AI Analysis

Impact

Baserow builds rich‑text mention markup by inserting a user's display name directly into a template literal without HTML encoding. A name that contains an escaped double quote terminates the data‑label attribute and the opening tag, allowing an attacker to inject arbitrary <script> tags. When a table that contains the mention is viewed, the rich‑text field renders the unescaped markup via v‑html, causing the embedded script to execute immediately in every member’s browser. Because the payload is stored within the mention, it runs automatically for any workspace member without requiring interaction, enabling malicious code execution or session hijacking for all viewers.

Affected Systems

The vulnerability affects Baserow products before version 2.3.0. Any instance using the 2.2.x series, or earlier releases, is susceptible. The flaw originates in the web‑frontend module where the mention renderer is built, and the server accepts the first_name field without sanitisation. Upgrading to Baserow 2.3.0 or later applies the required escaping and fixes the issue.

Risk and Exploitability

The CVSS score of 5.3 indicates a moderate severity that balances the limited privilege required (any workspace member can change their own display name) against the impact of executing scripts in a user's browser. EPSS data is not available, and the flaw is not listed in CISA’s KEV catalog, but its ease of exploitation makes it an attractive target for malicious insiders or compromised accounts. The attack vector is a local, low‑privilege user who can set a display name; once the crafted name is visible in a rich‑text field, the payload is delivered automatically to all other workspace members. The bug persists until the user’s name is updated or the mention is removed, providing ongoing risk until remedied.

Generated by OpenCVE AI on August 24, 2026 at 20:33 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Baserow to version 2.3.0 or later, which escapes the display name before rendering.
  • If upgrading immediately is not feasible, remove or reset the display names of accounts that have been used to create mentions in rich‑text fields to eliminate the stored payload.
  • Remove any rows or cells that reference the vulnerable mention or delete the entire table if it can’t be quickly sanitized.
  • Regularly audit account display names for unusual characters or scripts, and restrict editing privileges for low‑level users as a complementary control.

Generated by OpenCVE AI on August 24, 2026 at 20:33 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 24 Aug 2026 20:15:00 +0000

Type Values Removed Values Added
First Time appeared Baserow
Baserow baserow
Vendors & Products Baserow
Baserow baserow

Mon, 24 Aug 2026 19:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Mon, 24 Aug 2026 18:00:00 +0000

Type Values Removed Values Added
Description Baserow interpolates a user's display name into the rich-text mention markup without HTML encoding. PATCH /api/user/account/ stores the first_name value verbatim, and the mention renderer in web-frontend/modules/core/editor/mention.js builds its element with a template literal that places the name into a data-label attribute and the element body unescaped. A name containing a double quote closes that attribute and the opening tag, so following markup lands in the element content. The result is rendered through v-html by the rich-text field components, so any rich-text cell mentioning the account executes the stored script for every workspace member who views the table, without a click. Any workspace member, at the lowest permission level, can set the name and reach every other member of the workspace, and the payload persists until the name is changed or the mentioning row is removed. Version 2.3.0 escapes the value before interpolation.
Title Baserow before 2.3.0 Stored Cross-Site Scripting via Rich Text Mention Display Name
Weaknesses CWE-79
References
Metrics cvssV3_1

{'score': 6.4, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N'}

cvssV4_0

{'score': 5.3, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-08-29T11:47:49.784Z

Reserved: 2026-08-19T20:34:00.154Z

Link: CVE-2026-76837

cve-icon Vulnrichment

Updated: 2026-08-24T18:12:03.609Z

cve-icon NVD

Status : Received

Published: 2026-08-24T18:17:21.887

Modified: 2026-08-24T18:17:21.887

Link: CVE-2026-76837

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-24T20:45:04Z

Weaknesses
  • CWE-79

    Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')