Description
Baserow versions 2.2.0 through 2.3.3 contain an SQL injection vulnerability in the index() formula function. A low-privileged authenticated user who can create or modify Formula fields can provide an undocumented fourth argument that is treated as a SQL template and interpolated directly into a PostgreSQL expression. The generated SQL executes through Baserow's database connection with the Baserow PostgreSQL role permissions, allowing data outside the user's workspace permissions to be read or modified.
Published: 2026-09-02
Score: 8.6 High
EPSS: < 1% Very Low
KEV: No
Impact: SQL Injection (Privilege Escalation)
Action: Immediate Patch
AI Analysis

Impact

Baserow versions 2.2.0 through 2.3.3 contain an SQL injection vulnerability in the index() formula function. A low‑privileged authenticated user who can create or modify Formula fields can provide an undocumented fourth argument that is treated as a SQL template and interpolated directly into a PostgreSQL expression. The vulnerable expression is executed when Baserow recalculates Formula‑field values. Because the generated SQL runs through Baserow's database connection, the injected SQL executes with the privileges of the Baserow PostgreSQL role rather than the permissions of the authenticated application user, allowing data to be read or modified outside the user's workspace permissions.

Affected Systems

Baserow versions 2.2.0 through 2.3.3 on Linux, macOS, or Windows.

Risk and Exploitability

The CVSS score of 8.6 indicates a high severity risk. The EPSS score of < 1% suggests the likelihood of exploitation is very low, and the vulnerability is not listed in the CISA KEV catalog, implying no large‑scale attacks are known. The likely attack vector requires an attacker to be an authenticated user with permission to create or modify formula fields; the injection is delivered through a formula field during server‑side recalculation, allowing arbitrary SQL execution with the privileges of the PostgreSQL role used by Baserow.

Generated by OpenCVE AI on October 23, 2026 at 19:16 UTC.

Remediation

Vendor Solution

Upgrade to Baserow 2.3.4 or later. The patch rejects user-supplied four-argument index() formulas and restricts legacy internal SQL templates to an allowlist. Verify the deployed version and run Formula-field regression tests before restoring Formula-field editing permissions.


Vendor Workaround

Until the upgrade is complete, restrict Formula-field creation and modification to trusted users. Identify Formula definitions containing a fourth index() argument, review database activity for unexpected SQL execution, and rotate database credentials if compromise is suspected.


OpenCVE Recommended Actions

  • Upgrade Baserow to version 2.4.0 or later, which includes the official patch.
  • Restrict the creation and modification of Formula fields to trusted users until the upgrade is complete.
  • Identify existing Formula definitions that contain a fourth index() argument.
  • Review database activity logs for unexpected SQL execution and other anomalous behavior.

Generated by OpenCVE AI on October 23, 2026 at 19:16 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 23 Oct 2026 19:30:00 +0000


Fri, 23 Oct 2026 18:45:00 +0000


Fri, 23 Oct 2026 18:30:00 +0000

Type Values Removed Values Added
References

Fri, 23 Oct 2026 17:45:00 +0000

Type Values Removed Values Added
Description Baserow versions 2.2.0 through 2.3.3 contain an SQL injection vulnerability in the index() formula function. A low-privileged authenticated user who can create or modify Formula fields can provide an undocumented fourth argument that is treated as a SQL template and interpolated directly into a PostgreSQL expression. The vulnerable expression is executed when Baserow recalculates Formula-field values. Because the generated SQL runs through Baserow's database connection, the injected SQL executes with the privileges of the Baserow PostgreSQL role rather than the permissions of the authenticated application user, allowing data to be read or modified outside the user's workspace permissions. Baserow versions 2.2.0 through 2.3.3 contain an SQL injection vulnerability in the index() formula function. A low-privileged authenticated user who can create or modify Formula fields can provide an undocumented fourth argument that is treated as a SQL template and interpolated directly into a PostgreSQL expression. The generated SQL executes through Baserow's database connection with the Baserow PostgreSQL role permissions, allowing data outside the user's workspace permissions to be read or modified.
References

Tue, 20 Oct 2026 23:45:00 +0000

Type Values Removed Values Added
Description Baserow versions 2.2.0 through 2.3.3 contain an SQL injection vulnerability in the index() formula function. A low-privileged authenticated user who can create or modify Formula fields can provide an undocumented fourth argument that is treated as a SQL template and interpolated directly into a PostgreSQL expression. The vulnerable expression is executed when Baserow recalculates Formula-field values. Because the generated SQL runs through Baserow's database connection, the injected SQL executes with the privileges of the Baserow PostgreSQL role rather than the permissions of the authenticated application user, allowing data to be read or modified outside the user's workspace permissions. Baserow versions 2.2.0 through 2.3.3 contain an SQL injection vulnerability in the index() formula function. A low-privileged authenticated user who can create or modify Formula fields can provide an undocumented fourth argument that is treated as a SQL template and interpolated directly into a PostgreSQL expression. The vulnerable expression is executed when Baserow recalculates Formula-field values. Because the generated SQL runs through Baserow's database connection, the injected SQL executes with the privileges of the Baserow PostgreSQL role rather than the permissions of the authenticated application user, allowing data to be read or modified outside the user's workspace permissions.

Tue, 20 Oct 2026 00:30:00 +0000

Type Values Removed Values Added
References

Tue, 20 Oct 2026 00:00:00 +0000

Type Values Removed Values Added
CPEs cpe:2.3:a:baserow:baserow:*:*:*:*:*:*:*:* cpe:2.3:a:baserow:baserow:*:*:linux:*:*:*:*:*
cpe:2.3:a:baserow:baserow:*:*:macos:*:*:*:*:*
cpe:2.3:a:baserow:baserow:*:*:windows:*:*:*:*:*

Mon, 19 Oct 2026 23:45:00 +0000

Type Values Removed Values Added
Description Baserow versions 2.2.0 through 2.3.3 contain an SQL injection vulnerability in the index() formula function. A low-privileged authenticated user who can create or modify Formula fields can provide an undocumented fourth argument that is treated as a SQL template and interpolated directly into a PostgreSQL expression. The vulnerable expression is executed when Baserow recalculates Formula-field values. Because the generated SQL runs through Baserow's database connection, the injected SQL executes with the privileges of the Baserow PostgreSQL role rather than the permissions of the authenticated application user, allowing data to be read or modified outside the user's workspace permissions. Baserow versions 2.2.0 through 2.3.3 contain an SQL injection vulnerability in the index() formula function. A low-privileged authenticated user who can create or modify Formula fields can provide an undocumented fourth argument that is treated as a SQL template and interpolated directly into a PostgreSQL expression. The vulnerable expression is executed when Baserow recalculates Formula-field values. Because the generated SQL runs through Baserow's database connection, the injected SQL executes with the privileges of the Baserow PostgreSQL role rather than the permissions of the authenticated application user, allowing data to be read or modified outside the user's workspace permissions.

Mon, 19 Oct 2026 23:30:00 +0000

Type Values Removed Values Added
Description Baserow versions 2.2.0 through 2.3.3 contain an SQL injection vulnerability in the index() formula function. An authenticated user who can create or edit Formula fields can pass an undocumented fourth argument. Baserow inserts this argument into a PostgreSQL expression. The injected SQL runs with the Baserow database role permissions and can read or modify database data outside the user's workspace permissions. Baserow versions 2.2.0 through 2.3.3 contain an SQL injection vulnerability in the index() formula function. A low-privileged authenticated user who can create or modify Formula fields can provide an undocumented fourth argument that is treated as a SQL template and interpolated directly into a PostgreSQL expression. The vulnerable expression is executed when Baserow recalculates Formula-field values. Because the generated SQL runs through Baserow's database connection, the injected SQL executes with the privileges of the Baserow PostgreSQL role rather than the permissions of the authenticated application user, allowing data to be read or modified outside the user's workspace permissions.

Mon, 19 Oct 2026 22:45:00 +0000

Type Values Removed Values Added
Description Baserow 2.3.3 contains a SQL injection vulnerability in the index() formula function. A low-privileged authenticated user who can create or modify formula fields can provide an undocumented fourth argument that is treated as a SQL template and interpolated directly into a PostgreSQL expression. The vulnerable expression is executed when Baserow recalculates formula field values. Because the generated SQL runs through Baserow's database connection, the injected SQL executes with the privileges of the Baserow PostgreSQL role rather than the permissions of the authenticated application user. This issue affects Baserow: 2.3.3. Baserow versions 2.2.0 through 2.3.3 contain an SQL injection vulnerability in the index() formula function. An authenticated user who can create or edit Formula fields can pass an undocumented fourth argument. Baserow inserts this argument into a PostgreSQL expression. The injected SQL runs with the Baserow database role permissions and can read or modify database data outside the user's workspace permissions.
Title Baserow 2.3.3 - SQL injection in formula index() JSONB array extraction Baserow 2.2.0 through 2.3.3 - SQL injection in formula index() JSONB array extraction
CPEs cpe:2.3:a:baserow:baserow:2.3.3:*:linux:*:*:*:*:*
cpe:2.3:a:baserow:baserow:2.3.3:*:macos:*:*:*:*:*
cpe:2.3:a:baserow:baserow:2.3.3:*:windows:*:*:*:*:*
cpe:2.3:a:baserow:baserow:*:*:*:*:*:*:*:*
References

Wed, 02 Sep 2026 13:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Wed, 02 Sep 2026 04:00:00 +0000

Type Values Removed Values Added
Description Baserow 2.3.3 contains a SQL injection vulnerability in the index() formula function. A low-privileged authenticated user who can create or modify formula fields can provide an undocumented fourth argument that is treated as a SQL template and interpolated directly into a PostgreSQL expression. The vulnerable expression is executed when Baserow recalculates formula field values. Because the generated SQL runs through Baserow's database connection, the injected SQL executes with the privileges of the Baserow PostgreSQL role rather than the permissions of the authenticated application user. This issue affects Baserow: 2.3.3. Baserow 2.3.3 contains a SQL injection vulnerability in the index() formula function. A low-privileged authenticated user who can create or modify formula fields can provide an undocumented fourth argument that is treated as a SQL template and interpolated directly into a PostgreSQL expression. The vulnerable expression is executed when Baserow recalculates formula field values. Because the generated SQL runs through Baserow's database connection, the injected SQL executes with the privileges of the Baserow PostgreSQL role rather than the permissions of the authenticated application user. This issue affects Baserow: 2.3.3.

Wed, 02 Sep 2026 03:45:00 +0000

Type Values Removed Values Added
Description Baserow 2.3.3 contains a SQL injection vulnerability in the index() formula function. A low-privileged authenticated user who can create or modify formula fields can provide an undocumented fourth argument that is treated as a SQL template and interpolated directly into a PostgreSQL expression. The vulnerable expression is executed when Baserow recalculates formula field values. Because the generated SQL runs through Baserow's database connection, the injected SQL executes with the privileges of the Baserow PostgreSQL role rather than the permissions of the authenticated application user. This issue affects Baserow: 2.3.3.
Title Baserow 2.3.3 - SQL injection in formula index() JSONB array extraction
First Time appeared Baserow
Baserow baserow
Weaknesses CWE-89
CPEs cpe:2.3:a:baserow:baserow:2.3.3:*:linux:*:*:*:*:*
cpe:2.3:a:baserow:baserow:2.3.3:*:macos:*:*:*:*:*
cpe:2.3:a:baserow:baserow:2.3.3:*:windows:*:*:*:*:*
Vendors & Products Baserow
Baserow baserow
References
Metrics cvssV4_0

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


cve-icon MITRE

Status: PUBLISHED

Assigner: Fluid Attacks

Published:

Updated: 2026-10-23T18:30:35.412Z

Reserved: 2026-08-13T15:37:56.088Z

Link: CVE-2026-19754

cve-icon Vulnrichment

Updated: 2026-09-02T12:58:21.412Z

cve-icon NVD

Status : Awaiting Analysis

Published: 2026-09-02T04:17:51.537

Modified: 2026-10-23T19:17:44.790

Link: CVE-2026-19754

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-23T19:30:18Z

Weaknesses
  • CWE-89

    Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')