Skip to content

dbt has an implicit override for built-in materializations from installed packages

Moderate severity GitHub Reviewed Published Jul 16, 2024 in dbt-labs/dbt-core • Updated Aug 8, 2024

Package

pip dbt-core (pip)

Affected versions

>= 1.6.0, < 1.6.14
>= 1.7.0, < 1.7.14

Patched versions

1.6.14
1.7.14

Description

Impact

What kind of vulnerability is it? Who is impacted?

When a user installs a package 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?

References

@MichelleArk MichelleArk published to dbt-labs/dbt-core Jul 16, 2024
Published by the National Vulnerability Database Jul 16, 2024
Published to the GitHub Advisory Database Jul 17, 2024
Reviewed Jul 17, 2024
Last updated Aug 8, 2024

Severity

Moderate

EPSS score

0.043%
(10th percentile)

CVE ID

CVE-2024-40637

GHSA ID

GHSA-p3f3-5ccg-83xq

Source code

Credits

Loading Checking history
See something to contribute? Suggest improvements for this vulnerability.