What’s Vulnerable › Vulnerabilities
CVE-2026-29790: dbt-common: commonprefix() doesn't protect against path traversal
- Severity: medium (CVSS 5.3 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.3% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-03-06 · updated 2026-06-17
- Weakness: CWE-22
Description
dbt-common is the shared common utilities for dbt-core and adapter implementations use. Prior to versions 1.34.2 and 1.37.3, a path traversal vulnerability exists in dbt-common's safe_extract() function used when extracting tarball archives. The function uses os.path.commonprefix() to validate that extracted files remain within the intended destination directory. However, commonprefix() compares paths character-by-character rather than by path components, allowing a malicious tarball to write files to sibling directories with matching name prefixes. This issue has been patched in versions 1.34.2 and 1.37.3.
Affected products
- dbt-labs dbt-common: before 1.34.2; from 1.35.0 before 1.37.3 — fixed in 1.34.2, 1.37.3
How to fix
Upgrade to a fixed version: dbt-labs dbt-common 1.34.2, 1.37.3. Check the vendor advisory for mitigations.
References
- https://github.com/dbt-labs/dbt-common/commit/e547954a48bac9394ef6eb98432e429dce9a7709
- https://github.com/dbt-labs/dbt-common/security/advisories/GHSA-w75w-9qv4-j5xj
- https://github.com/pypa/pip/pull/13777
Get alerted when CVE-2026-29790 or the next vulnerability affects your stack