Answer in brief
CVE-2024-40637 records a Medium severity (CVSS 4.2) vulnerability in dbt has an implicit override for built-in materializations from installed packages. The current sources do not mark it as known exploited. The current feed maps dbt-core (pypi), dbt-core (pypi). Check affected ranges and fixed versions before updating.
Analysis pending evidence review
HOL Guard separates source facts from reviewed analysis. See the methodology.
CVSS is 4.2. The current sources do not mark it as known exploited. Treat this as a source-backed prioritization signal, not a statement about your environment.
Analysis status
Analysis pending evidence review
Factual feed record only; HOL analysis is not approved for indexing. Read the methodology.
The current feed maps dbt-core (pypi), dbt-core (pypi). Check affected ranges and fixed versions before updating.
| Package | Affected range | Fixed version |
|---|---|---|
| dbt-corepypi | >=1.6.0 <1.6.14 | 1.6.14 |
| dbt-corepypi | >=1.7.0 <1.7.14 | 1.7.14 |
Published upstream
Jul 17, 2024
Evidence: source:osv:source_dates:source-dates:recordSource modified
Sep 10, 2026
Evidence: source:osv:source_dates:source-dates:recordFirst seen by HOL
Sep 10, 2026
### Impact _What kind of vulnerability is it? Who is impacted?_ When a user installs a [package](https://docs.getdbt.com/docs/build/packages) in dbt, it has the ability to override macros, materializations, and other core components of dbt. This is by design, as it allows packages to extend and customize dbt's functionality. However, this also means that a malicious package could potentially override these components with harmful code. ### Patches _Has the problem been patched? What versions should users upgrade to?_ Fixed on 1.8.0, and patched for 1.6.14 and 1.7.14 releases. ### Workarounds _Is there a way for users to fix or remediate the vulnerability without upgrading?_ Previously, a materialization defined in a package that shared a name with one of the built-in materializations would be preferred by default, without user action which is surprising and makes it more difficult to detect the insecure behaviour. We've changed the default behaviour to require explicit overrides by users in `1.8.0`, and provided the ability to opt-out of built-in materialization overrides in 1.6 and 1.7 via the `flags.require_explicit_package_overrides_for_builtin_materializations: False` configuration in `dbt_project.yml` Versions older than 1.6 are EOL. ### References _Are there any links users can visit to find out more?_ * dbt documentation: https://docs.getdbt.com/reference/global-configs/legacy-behaviors#behavior-change-flags * https://www.elementary-data.com/post/are-dbt-packages-secure-the-answer-lies-in-your-dwh-policies * https://www.equalexperts.com/blog/tech-focus/are-you-at-risk-from-this-critical-dbt-vulnerability/ * https://tempered.works/posts/2024/07/06/preventing-data-theft-with-gcp-service-controls/
Quoted source text, attributed separately from HOL analysis.