CVE-2026-52887: NocoBase: SQL injection in /api/myInAppChannels:list filter to PG-superuser RCE
NocoBase is an AI-powered no-code/low-code platform for building business applications and enterprise solutions. Prior to 2.0.61, NocoBase @nocobase/plugin-notification-in-app-message exposed GET /api/myInAppChannels:list, where the filter[latestMsgReceiveTimestamp][$lt] value was inserted into a Sequelize.literal() template string without escaping or parameter binding, allowing a signed-up authenticated user to run stacked PostgreSQL statements and potentially execute commands with COPY ... TO PROGRAM. This vulnerability is fixed in 2.0.61.
Security readout for executives and security teams
Plain-English summary
NocoBase versions before 2.0.61 contain a critical SQL injection in the in-app notification plugin. A user with access to the affected API could make the database run unintended SQL, and under PostgreSQL superuser conditions this may lead to server command execution. Upgrade is the primary action.
Executive priority
Handle as an emergency upgrade for any exposed or multi-user NocoBase deployment. The business risk is full data compromise and possible server takeover, depending on database privileges. Prioritize patching over compensating controls.
Technical view
The vulnerable endpoint is GET /api/myInAppChannels:list. The filter[latestMsgReceiveTimestamp][$lt] value was placed into a Sequelize.literal() template without escaping or parameter binding. Sources state this permits stacked PostgreSQL statements and possible COPY TO PROGRAM command execution when database privileges allow it. Fixed in NocoBase 2.0.61.
Likely exposure
NocoBase deployments before 2.0.61 using @nocobase/plugin-notification-in-app-message are the known affected scope. The source describes a signed-up authenticated user path, while the CVSS vector lists PR:N; treat internet-reachable instances as urgent until vendor details are confirmed.
Exploitation context
The source bundle does not show CISA KEV listing or confirmed active exploitation. The described bug is high-impact because it is network reachable, low complexity, and can cross from application SQL injection into host command execution in permissive PostgreSQL configurations.
Researcher notes
Evidence is strongest for the vulnerable parameter, unsafe Sequelize.literal() use, affected versions before 2.0.61, and the fixed release. Public-source evidence in the bundle does not confirm exploitation in the wild. The authenticated-user versus PR:N discrepancy should be tracked against the vendor advisory and CVE record.
Mitigation direction
Upgrade NocoBase to version 2.0.61 or later.
Restrict access to affected NocoBase instances until upgrade is complete.
Disable or limit in-app notification functionality if upgrade cannot be immediate.
Ensure the application database role is not a PostgreSQL superuser where possible.
Monitor affected endpoint traffic for suspicious filter parameters.
Validation and detection
Inventory all NocoBase deployments and record exact running versions.
Confirm whether @nocobase/plugin-notification-in-app-message is installed and enabled.
Verify production instances are running NocoBase 2.0.61 or later.
Review access logs for requests to /api/myInAppChannels:list with unusual filters.
Check database role privileges used by the NocoBase application.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · medium confidence lookup
CWE-89: Database access and collection lookup
Injection into data stores can inform collection, data access, and exfiltration detection reviews. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
The CVE wording references code or command execution, so execution technique review may help defensive triage. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program mapping.
The CVE wording references database injection or access, so collection and exfiltration review may help. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
1CVSS vectors
3Timeline events
1ADP providers
4Source links
SSVC decision data
CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: pocAutomatable: yesTechnical Impact: total
CVSS vector scores
1 official score
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-89 · source CWE mapping
Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')
Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection') represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.