{"id":"CVE-2026-47379","aliases":["GHSA-qhxg-623c-cfjm"],"url":"https://o3.security/vulnerability/CVE-2026-47379","summary":"NocoDB: Plaintext Password Comparison in Shared Views","details":"### Summary\nThe shared-view password check fell back to strict-equality (`===`) comparison for\nlegacy plaintext passwords, leaking the password's length and per-character prefix\nthrough response timing.\n\n### Details\nThe bcrypt branch (hashes starting with `$2a$`/`$2b$`) was unaffected. The legacy\nfallback in `View.ts` now uses `crypto.timingSafeEqual` and a same-length dummy\ncompare on the length-mismatch path, so total comparison time is approximately\nlength-independent. The EE dashboard model's `verifyPassword` is patched the same way.\n\n### Impact\nA network-positioned attacker could mount a timing oracle against shared views whose\npasswords predated the bcrypt migration. Exploitation requires the ability to time\nshared-view authentication responses but no prior authentication.\n\n### Credit\nThis issue was reported by [@Proscan-one](https://github.com/Proscan-one).","published":"2026-06-23T20:17:51.829Z","modified":"2026-08-12T03:51:37.016398727Z","cvss":null,"epss":{"score":0.00428,"percentile":0.36141,"asOf":"2026-09-13"},"cisaKev":null,"exploitsKnown":0,"affectedPackages":[{"ecosystem":"npm","name":"nocodb","fixedVersion":"2026.05.1"}],"fix":null,"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/47xxx/CVE-2026-47379.json"},{"type":"ADVISORY","url":"https://github.com/nocodb/nocodb/security/advisories/GHSA-qhxg-623c-cfjm"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-47379"},{"type":"PACKAGE","url":"https://github.com/nocodb/nocodb"},{"type":"WEB","url":"https://github.com/nocodb/nocodb/releases/tag/2026.05.1"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2026-08-12T03:51:37.016398727Z"}}