VORANT. Threat Intelligence Research Create a free account

Appsmith SQL editor XSS vulnerability enables session hijacking

Published Vorant ratingelevated vulnerability

Vorant's rating weighs the evidence in the report: confirmed exploitation, victims claimed, CVSS and EPSS, and how many sources agree. It rates the report, not your assets.

Appsmith SQL editor autocomplete vulnerability (CVE-2026-7299) allows authenticated developers to inject XSS via malicious database object names, enabling session hijacking and privilege escalation.

Sourcekb.cert.org — open the original

What to check

Applies to
The 1 CVE named below. Whether you run an affected version is not assessed: check the versions the source lists.
Exploitation
No exploitation in the wild and no public exploit is recorded for the CVEs named.

A stored cross-site scripting vulnerability has been identified in Appsmith's CodeMirror-based SQL query editor autocomplete functionality. The vulnerability stems from inadequate sanitization of database object names before rendering them via innerHTML. An authenticated user with developer-level access to a shared PostgreSQL datasource can create malicious database objects (tables or columns) with names containing JavaScript payloads. When other workspace members trigger SQL autocomplete in the editor, the malicious payload executes in their browser session.

Successful exploitation enables attackers to perform session hijacking, escalate privileges within the Appsmith workspace, or steal credentials from other users. The attack vector requires the attacker to have developer access, which grants permissions to create, edit, and delete applications within assigned workspaces. The vulnerability particularly impacts administrators and other developers who use the SQL editor with shared datasources.

Appsmith version 2.1 addresses this vulnerability. The issue was reported by Stuart Beck and tracked under CVE-2026-7299. Organizations using Appsmith should prioritize updating to version 2.1 or later to remediate this risk.

Mentioned in this report

Vulnerabilities CVE-2026-7299

Detection guidance

Potential Stored XSS Payload in SQL Object Name via Appsmith API Request

ATT&CK T1059.007 · status experimental · needs webserver logs · generated from the report, not run against telemetry

A behavioural hunt for the technique in general, not a signature for the CVEs this report names.

Detects HTTP requests to Appsmith datasource/table/column creation endpoints where the submitted object name contains embedded script or event-handler markup, indicating an attempt to stage a stored XSS payload for later execution via the SQL autocomplete renderer. Auto-generated starting point — validate and tune in your environment before deploying. IOC matches can false-positive on shared infrastructure and decay as adversary infrastructure rotates.

title: Potential Stored XSS Payload in SQL Object Name via Appsmith API Request
id: f00fd5c1-a4c4-539f-af14-6ae962d08024
status: experimental
description: 'Detects HTTP POST/PUT requests to Appsmith datasource, table, or column
  management endpoints where the request body or query contains HTML/JavaScript injection
  markers (e.g. <script, onerror=, javascript:) in a field that would normally hold
  a plain database object name. This behaviour matches the attack pattern for CVE-2026-7299,
  a stored XSS in the SQL editor autocomplete that renders unsanitized object names
  via innerHTML.

  '
references:
- CVE-2026-7299
author: Vorant
tags:
- attack.t1059.007
- attack.t1185
- attack.t1078
logsource:
  category: webserver
detection:
  selection_endpoint:
    cs-method:
    - POST
    - PUT
    cs-uri-stem|contains:
    - /api/v1/datasources
    - /api/v1/actions
    - /api/v1/queries
  selection_payload:
    cs-uri-query|contains:
    - <script
    - onerror=
    - onload=
    - 'javascript:'
    - <img
    - document.cookie
  filter_static_assets:
    cs-uri-stem|contains:
    - /static/
    - /assets/
  condition: selection_endpoint and selection_payload and not filter_static_assets
falsepositives:
- Legitimate developers testing SQL query builders with strings that coincidentally
  include angle brackets or the word 'script' in column comments
- Automated security scanners intentionally probing the same endpoints with XSS test
  strings
level: high

Behavioural rules are generated from public reporting — validate in your environment before deploying.

Source reporting: https://kb.cert.org/vuls/id/265691

Free public brief. The detections with Splunk SPL already written (plus Elastic and KQL where they apply) are in the app with a free account, no card. Slack alerts on the vendors you run come with the paid plans, and a new account gets three days of them.

What this brief leaves out

This page is the free tier: the write-up, the severity, the names. In the app the same report carries its detections (Splunk SPL already written, plus Elastic and Microsoft KQL where they apply) and live profiles of the CVEs it names. The paid plans add the security research and news reporting the free tier leaves out.

It sits in a corpus of 16,433 reports from 149 sources, 661 of them written in the last seven days, and it grows through the day.

A new account starts with three days of all of it, no card, then keeps the government and CERT reporting free. Slack alerts are a paid-plan feature: name the vendors you run and Slack hears about the reports that touch them, not the rest of the week's. Nothing is charged unless you subscribe.

Create a free account   What it costs