{"id":"CVE-2026-112306","published":"2026-10-19T16:17:06.570","lastModified":"2026-10-19T17:17:15.670","description":"NocoBase @nocobase/plugin-collection-sql through 2.2.28 contains an SQL injection vulnerability that allows privileged users to store unvalidated SQL by bypassing checkSQL() through the sqlCollection:setFields action. Attackers holding the collection-sql snippet can replace a benign collection query with dangerous statements executed on reload, reading pg_shadow password hashes or calling pg_read_file.","cvssScore":7.2,"cvssSeverity":"HIGH","cvssVector":"CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H","cwes":["CWE-89"],"vendors":[],"products":[],"references":[{"url":"https://github.com/nocobase/nocobase","tags":[]},{"url":"https://github.com/nocobase/nocobase/blob/v2.2.28/packages/plugins/@nocobase/plugin-collection-sql/src/server/resources/sql.ts#L14-L104","tags":[]},{"url":"https://github.com/nocobase/nocobase/issues/10629","tags":[]},{"url":"https://www.vulncheck.com/advisories/nocobase-plugin-collection-sql-through-2.2.28-sql-injection-via-sqlcollection-setfields","tags":[]}],"exploitRefs":[{"url":"https://github.com/nocobase/nocobase","tags":[]},{"url":"https://github.com/nocobase/nocobase/blob/v2.2.28/packages/plugins/@nocobase/plugin-collection-sql/src/server/resources/sql.ts#L14-L104","tags":[]},{"url":"https://github.com/nocobase/nocobase/issues/10629","tags":[]}],"hasPoc":true,"ai":null}