CVE-2026-24766: NocoDB Vulnerable to Prototype Pollution in Connection Test Endpoint, Leading to DoS
Summary
An authenticated user with org-level-creator permissions can exploit prototype pollution in the /api/v2/meta/connection/test endpoint, causing all database write operations to fail application-wide until server restart.
While the pollution technically bypasses SUPERADMIN authorization checks, no practical privileged actions can be performed because database operations fail immediately after pollution.
Details
The deepMerge() function in packages/nocodb/src/utils/dataUtils.ts does not sanitize the following keys: (proto, constructor, prototype):
typescript export const deepMerge = (target: any, ...sources: any[]) => { // ... Object.keys(source).forEach((key) => { if (isMergeableObject(source[key])) { if (!target[key]) target[key] = Array.isArray(source[key]) ? [] : {}; deepMerge(target[key], source[key]); // Recursively merges proto } else { target[key] = source[key]; } }); // ... };
The testConnection endpoint (packages/nocodb/src/controllers/utils.controller.ts) passes user-controlled input directly to deepMerge():
typescript config = await integration.getConfig(); deepMerge(config, body);
When an attacker sends {"proto": {"super": true}}, the super property is written to Object.prototype, affecting all plain objects in the Node.js process.
Impact
Pollutes Object.prototype globally, breaking all subsequent database write operations for all users until process restart.
Other sources
NocoDB is software for building databases as spreadsheets. Prior to version 0.301.0, an authenticated user with org-level-creator permissions can exploit prototype pollution in the /api/v2/meta/connection/test endpoint, causing all database write operations to fail application-wide until server restart. While the pollution technically bypasses SUPERADMIN authorization checks, no practical privileged actions can be performed because database operations fail immediately after pollution. Version 0.301.0 patches the issue.
— MITRE
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2026-24766?
CVE-2026-24766 is classified as a medium severity vulnerability due to its potential to cause denial of service.
How do I fix CVE-2026-24766?
To fix CVE-2026-24766, update NocoDB to version 0.301.0 or later.
Who is affected by CVE-2026-24766?
CVE-2026-24766 affects authenticated users with org-level-creator permissions in versions of NocoDB prior to 0.301.0.
What type of attack does CVE-2026-24766 enable?
CVE-2026-24766 enables prototype pollution attacks, which can lead to application-wide failures in database operations.
Is there a workaround for CVE-2026-24766?
There are no known workarounds for CVE-2026-24766; the recommended approach is to upgrade to the fixed version.