{"id":"CVE-2026-69128","aliases":[],"cve":{"records":[{"id":"CVE-2026-69128","source":"GitHub_M","state":"PUBLISHED","reasons":[],"replacements":[],"disputed":false,"unsupportedWhenAssigned":false,"reserved":"2026-08-03T15:20:30.217Z","published":"2026-11-06T21:17:12.971Z","modified":"2026-11-09T13:29:53.087Z"}],"publishers":[{"name":"GitHub_M","role":"CNA","organizationId":"a0819718-46f1-4df5-94e2-005712e83aaa","modified":"2026-11-06T21:17:12.971Z"},{"name":"CISA-ADP","role":"ADP","organizationId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","modified":"2026-11-09T13:29:53.087Z"}],"references":[{"url":"https://github.com/chartbrew/chartbrew/security/advisories/GHSA-jw2r-hrxg-cfgc","tags":["x_refsource_CONFIRM"],"source":"GitHub_M"},{"url":"https://github.com/chartbrew/chartbrew/commit/b83f656a8757beccba461f0f6c5abb1a25dc3b4c","tags":["x_refsource_MISC"],"source":"GitHub_M"},{"url":"https://github.com/chartbrew/chartbrew/releases/tag/v5.2.3","tags":["x_refsource_MISC"],"source":"GitHub_M"},{"url":"https://github.com/chartbrew/chartbrew/security/advisories/GHSA-jw2r-hrxg-cfgc","tags":["exploit"],"source":"CISA-ADP"}],"weaknesses":[{"id":"CWE-22","description":"CWE-22: Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')","source":"GitHub_M"},{"id":"CWE-184","description":"CWE-184: Incomplete List of Disallowed Inputs","source":"GitHub_M"}],"applicability":[],"prioritization":[{"source":"CISA-ADP","type":"SSVC","role":"CISA Coordinator","timestamp":"2026-11-09T13:29:32.591271Z","decisions":[{"name":"Exploitation","value":"poc"},{"name":"Automatable","value":"no"},{"name":"Technical Impact","value":"partial"}]}]},"title":"Chartbrew: AI orchestrator run_query SQL blocklist bypass enables arbitrary file read on connected PostgreSQL (quoted-identifier + pg_stat_file/pg_ls_* sibling gap)","titleSource":"GitHub_M","descriptionSource":"GitHub_M","description":"Chartbrew is an open-source web application that can connect directly to databases and APIs and use the data to create charts. In 5.2.2, the AI SQL blocklist omitted sibling PostgreSQL filesystem functions and failed to match double-quoted identifier forms of denied functions. The vulnerable surface is the AI query tool's PostgreSQL SQL-validation blocklist. A team Owner or Admin uses an AI-enabled PostgreSQL connection whose database role can call server-side file functions and causes generated SQL to use an unlisted sibling function or a double-quoted denied function. Unlisted sibling functions remain allowed, and double-quoted function identifiers bypass the denylist regular expressions and reach PostgreSQL. AI features must be enabled and the user must have elevated Chartbrew privileges. A PostgreSQL superuser or pg_read_server_files role can resolve absolute paths to files readable by the PostgreSQL OS user, while a non-superuser is limited to the source-stated PGDATA-relative scope. This vulnerability is fixed in 5.2.3.","score":4.6,"severity":"medium","published":"2026-11-06T21:17:12.971Z","modified":"2026-11-09T13:29:53.087Z","withdrawn":false,"knownExploited":false,"affected":[],"products":[{"vendor":"chartbrew","name":"chartbrew","platforms":[],"versions":[{"version":">= 5.2.2, < 5.2.3","status":"affected"}],"cpes":[],"source":"GitHub_M","url":"https://www.cve.org/CVERecord?id=CVE-2026-69128"}],"remediation":[],"references":["https://github.com/chartbrew/chartbrew/security/advisories/GHSA-jw2r-hrxg-cfgc","https://github.com/chartbrew/chartbrew/commit/b83f656a8757beccba461f0f6c5abb1a25dc3b4c","https://github.com/chartbrew/chartbrew/releases/tag/v5.2.3"],"sources":[{"name":"CVE","id":"CVE-2026-69128","modified":"2026-11-09T13:29:53.087Z","url":"https://www.cve.org/CVERecord?id=CVE-2026-69128"}],"assessments":[{"source":"GitHub_M","vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:H/UI:N/VC:N/VI:N/VA:N/SC:H/SI:N/SA:N","score":4.6}],"sourceAffected":[],"observedAt":"2026-11-09T13:35:58.542Z","kev":{"status":"not-listed","checkedAt":"2026-11-15T02:25:31.038Z"},"coverage":[{"source":"NVD","status":"available","checkedAt":"2026-11-06T23:15:33.155Z","attemptedAt":"2026-11-06T23:15:33.155Z"},{"source":"GHSA","status":"no-result","checkedAt":"2026-11-06T23:15:32.550Z","attemptedAt":"2026-11-06T23:15:32.550Z"},{"source":"EUVD","status":"available","checkedAt":"2026-11-06T23:15:32.478Z","attemptedAt":"2026-11-06T23:15:32.478Z"},{"source":"EPSS","status":"no-result","checkedAt":"2026-11-06T23:15:32.973Z","attemptedAt":"2026-11-06T23:15:32.973Z"}],"evidence":[{"source":"ENISA EUVD","id":"EUVD-2026-118511","url":"https://euvd.enisa.europa.eu/vulnerability/EUVD-2026-118511","modified":"Nov 6, 2026, 9:17:12 PM","score":4.6,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:H/UI:N/VC:N/VI:N/VA:N/SC:H/SI:N/SA:N","checkedAt":"2026-11-06T23:15:32.478Z"},{"source":"NVD","id":"CVE-2026-69128","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-69128","modified":"2026-11-06T22:17:59.700","score":4.6,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:H/UI:N/VC:N/VI:N/VA:N/SC:H/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","checkedAt":"2026-11-06T23:15:33.155Z"}],"aiSummary":{"text":"Chartbrew 5.2.2 has a SQL blocklist bypass vulnerability, allowing arbitrary file read on connected PostgreSQL databases for users with elevated privileges and AI features enabled. The weakness is due to omitted sibling PostgreSQL filesystem functions and unquoted identifier forms of denied functions. This affects Chartbrew versions 5.2.2 to less than 5.2.3.","model":"@cf/meta/llama-3.3-70b-instruct-fp8-fast","generatedAt":"2026-11-06T22:46:03.111Z","sources":[{"name":"CVE","url":"https://www.cve.org/CVERecord?id=CVE-2026-69128"}]}}