Vulnerabilites related to getdbt - dbt_core
CVE-2024-40637 (GCVE-0-2024-40637)
Vulnerability from cvelistv5
Published
2024-07-16 22:56
Modified
2024-08-02 04:33
CWE
  • CWE-74 - Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection')
Summary
dbt enables data analysts and engineers to transform their data using the same practices that software engineers use to build applications. 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. This issue has been fixed in versions 1.8.0, 1.6.14 and 1.7.14. Users are advised to upgrade. There are no kn own workarounds for this vulnerability. Users updating to either 1.6.14 or 1.7.14 will need to set `flags.require_explicit_package_overrides_for_builtin_materializations: False` in their configuration in `dbt_project.yml`.
Impacted products
Vendor Product Version
dbt-labs dbt-core Version: < 1.6.14
Version: >= 1.7.0, < 1.7.14
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "adp": [
      {
        "metrics": [
          {
            "other": {
              "content": {
                "id": "CVE-2024-40637",
                "options": [
                  {
                    "Exploitation": "none"
                  },
                  {
                    "Automatable": "no"
                  },
                  {
                    "Technical Impact": "partial"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2024-07-17T14:33:07.870141Z",
                "version": "2.0.3"
              },
              "type": "ssvc"
            }
          }
        ],
        "providerMetadata": {
          "dateUpdated": "2024-07-17T14:33:16.955Z",
          "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
          "shortName": "CISA-ADP"
        },
        "title": "CISA ADP Vulnrichment"
      },
      {
        "providerMetadata": {
          "dateUpdated": "2024-08-02T04:33:11.690Z",
          "orgId": "af854a3a-2127-422b-91ae-364da2661108",
          "shortName": "CVE"
        },
        "references": [
          {
            "name": "https://github.com/dbt-labs/dbt-core/security/advisories/GHSA-p3f3-5ccg-83xq",
            "tags": [
              "x_refsource_CONFIRM",
              "x_transferred"
            ],
            "url": "https://github.com/dbt-labs/dbt-core/security/advisories/GHSA-p3f3-5ccg-83xq"
          },
          {
            "name": "https://github.com/dbt-labs/dbt-core/commit/3c82a0296d227cb1be295356df314c11716f4ff6",
            "tags": [
              "x_refsource_MISC",
              "x_transferred"
            ],
            "url": "https://github.com/dbt-labs/dbt-core/commit/3c82a0296d227cb1be295356df314c11716f4ff6"
          },
          {
            "name": "https://github.com/dbt-labs/dbt-core/commit/87ac4deb00cc9fe334706e42a365903a1d581624",
            "tags": [
              "x_refsource_MISC",
              "x_transferred"
            ],
            "url": "https://github.com/dbt-labs/dbt-core/commit/87ac4deb00cc9fe334706e42a365903a1d581624"
          },
          {
            "name": "https://docs.getdbt.com/docs/build/packages",
            "tags": [
              "x_refsource_MISC",
              "x_transferred"
            ],
            "url": "https://docs.getdbt.com/docs/build/packages"
          },
          {
            "name": "https://docs.getdbt.com/reference/global-configs/legacy-behaviors#behavior-change-flags",
            "tags": [
              "x_refsource_MISC",
              "x_transferred"
            ],
            "url": "https://docs.getdbt.com/reference/global-configs/legacy-behaviors#behavior-change-flags"
          },
          {
            "name": "https://tempered.works/posts/2024/07/06/preventing-data-theft-with-gcp-service-controls",
            "tags": [
              "x_refsource_MISC",
              "x_transferred"
            ],
            "url": "https://tempered.works/posts/2024/07/06/preventing-data-theft-with-gcp-service-controls"
          },
          {
            "name": "https://www.elementary-data.com/post/are-dbt-packages-secure-the-answer-lies-in-your-dwh-policies",
            "tags": [
              "x_refsource_MISC",
              "x_transferred"
            ],
            "url": "https://www.elementary-data.com/post/are-dbt-packages-secure-the-answer-lies-in-your-dwh-policies"
          },
          {
            "name": "https://www.equalexperts.com/blog/tech-focus/are-you-at-risk-from-this-critical-dbt-vulnerability",
            "tags": [
              "x_refsource_MISC",
              "x_transferred"
            ],
            "url": "https://www.equalexperts.com/blog/tech-focus/are-you-at-risk-from-this-critical-dbt-vulnerability"
          }
        ],
        "title": "CVE Program Container"
      }
    ],
    "cna": {
      "affected": [
        {
          "product": "dbt-core",
          "vendor": "dbt-labs",
          "versions": [
            {
              "status": "affected",
              "version": "\u003c 1.6.14"
            },
            {
              "status": "affected",
              "version": "\u003e= 1.7.0, \u003c 1.7.14"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "dbt enables data analysts and engineers to transform their data using the same practices that software engineers use to build applications. 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\u0027s functionality. However, this also means that a malicious package could potentially override these components with harmful code. This issue has been fixed in versions 1.8.0, 1.6.14 and 1.7.14. Users are advised to upgrade. There are no kn own workarounds for this vulnerability. Users updating to either 1.6.14 or 1.7.14 will need to set `flags.require_explicit_package_overrides_for_builtin_materializations: False` in their configuration in `dbt_project.yml`."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "attackComplexity": "HIGH",
            "attackVector": "LOCAL",
            "availabilityImpact": "LOW",
            "baseScore": 4.2,
            "baseSeverity": "MEDIUM",
            "confidentialityImpact": "LOW",
            "integrityImpact": "LOW",
            "privilegesRequired": "LOW",
            "scope": "UNCHANGED",
            "userInteraction": "REQUIRED",
            "vectorString": "CVSS:3.1/AV:L/AC:H/PR:L/UI:R/S:U/C:L/I:L/A:L",
            "version": "3.1"
          }
        }
      ],
      "problemTypes": [
        {
          "descriptions": [
            {
              "cweId": "CWE-74",
              "description": "CWE-74: Improper Neutralization of Special Elements in Output Used by a Downstream Component (\u0027Injection\u0027)",
              "lang": "en",
              "type": "CWE"
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2024-07-16T22:56:35.541Z",
        "orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
        "shortName": "GitHub_M"
      },
      "references": [
        {
          "name": "https://github.com/dbt-labs/dbt-core/security/advisories/GHSA-p3f3-5ccg-83xq",
          "tags": [
            "x_refsource_CONFIRM"
          ],
          "url": "https://github.com/dbt-labs/dbt-core/security/advisories/GHSA-p3f3-5ccg-83xq"
        },
        {
          "name": "https://github.com/dbt-labs/dbt-core/commit/3c82a0296d227cb1be295356df314c11716f4ff6",
          "tags": [
            "x_refsource_MISC"
          ],
          "url": "https://github.com/dbt-labs/dbt-core/commit/3c82a0296d227cb1be295356df314c11716f4ff6"
        },
        {
          "name": "https://github.com/dbt-labs/dbt-core/commit/87ac4deb00cc9fe334706e42a365903a1d581624",
          "tags": [
            "x_refsource_MISC"
          ],
          "url": "https://github.com/dbt-labs/dbt-core/commit/87ac4deb00cc9fe334706e42a365903a1d581624"
        },
        {
          "name": "https://docs.getdbt.com/docs/build/packages",
          "tags": [
            "x_refsource_MISC"
          ],
          "url": "https://docs.getdbt.com/docs/build/packages"
        },
        {
          "name": "https://docs.getdbt.com/reference/global-configs/legacy-behaviors#behavior-change-flags",
          "tags": [
            "x_refsource_MISC"
          ],
          "url": "https://docs.getdbt.com/reference/global-configs/legacy-behaviors#behavior-change-flags"
        },
        {
          "name": "https://tempered.works/posts/2024/07/06/preventing-data-theft-with-gcp-service-controls",
          "tags": [
            "x_refsource_MISC"
          ],
          "url": "https://tempered.works/posts/2024/07/06/preventing-data-theft-with-gcp-service-controls"
        },
        {
          "name": "https://www.elementary-data.com/post/are-dbt-packages-secure-the-answer-lies-in-your-dwh-policies",
          "tags": [
            "x_refsource_MISC"
          ],
          "url": "https://www.elementary-data.com/post/are-dbt-packages-secure-the-answer-lies-in-your-dwh-policies"
        },
        {
          "name": "https://www.equalexperts.com/blog/tech-focus/are-you-at-risk-from-this-critical-dbt-vulnerability",
          "tags": [
            "x_refsource_MISC"
          ],
          "url": "https://www.equalexperts.com/blog/tech-focus/are-you-at-risk-from-this-critical-dbt-vulnerability"
        }
      ],
      "source": {
        "advisory": "GHSA-p3f3-5ccg-83xq",
        "discovery": "UNKNOWN"
      },
      "title": "Implicit override for built-in materializations from installed packages in dbt-core"
    }
  },
  "cveMetadata": {
    "assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
    "assignerShortName": "GitHub_M",
    "cveId": "CVE-2024-40637",
    "datePublished": "2024-07-16T22:56:35.541Z",
    "dateReserved": "2024-07-08T16:13:15.511Z",
    "dateUpdated": "2024-08-02T04:33:11.690Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.1"
}

Vulnerability from fkie_nvd
Published
2024-07-16 23:15
Modified
2024-11-21 09:31
Summary
dbt enables data analysts and engineers to transform their data using the same practices that software engineers use to build applications. 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. This issue has been fixed in versions 1.8.0, 1.6.14 and 1.7.14. Users are advised to upgrade. There are no kn own workarounds for this vulnerability. Users updating to either 1.6.14 or 1.7.14 will need to set `flags.require_explicit_package_overrides_for_builtin_materializations: False` in their configuration in `dbt_project.yml`.
References
security-advisories@github.comhttps://docs.getdbt.com/docs/build/packagesProduct
security-advisories@github.comhttps://docs.getdbt.com/reference/global-configs/legacy-behaviors#behavior-change-flagsVendor Advisory
security-advisories@github.comhttps://github.com/dbt-labs/dbt-core/commit/3c82a0296d227cb1be295356df314c11716f4ff6Patch
security-advisories@github.comhttps://github.com/dbt-labs/dbt-core/commit/87ac4deb00cc9fe334706e42a365903a1d581624Patch
security-advisories@github.comhttps://github.com/dbt-labs/dbt-core/security/advisories/GHSA-p3f3-5ccg-83xqVendor Advisory
security-advisories@github.comhttps://tempered.works/posts/2024/07/06/preventing-data-theft-with-gcp-service-controlsExploit, Third Party Advisory
security-advisories@github.comhttps://www.elementary-data.com/post/are-dbt-packages-secure-the-answer-lies-in-your-dwh-policiesExploit, Third Party Advisory
security-advisories@github.comhttps://www.equalexperts.com/blog/tech-focus/are-you-at-risk-from-this-critical-dbt-vulnerabilityExploit, Third Party Advisory
af854a3a-2127-422b-91ae-364da2661108https://docs.getdbt.com/docs/build/packagesProduct
af854a3a-2127-422b-91ae-364da2661108https://docs.getdbt.com/reference/global-configs/legacy-behaviors#behavior-change-flagsVendor Advisory
af854a3a-2127-422b-91ae-364da2661108https://github.com/dbt-labs/dbt-core/commit/3c82a0296d227cb1be295356df314c11716f4ff6Patch
af854a3a-2127-422b-91ae-364da2661108https://github.com/dbt-labs/dbt-core/commit/87ac4deb00cc9fe334706e42a365903a1d581624Patch
af854a3a-2127-422b-91ae-364da2661108https://github.com/dbt-labs/dbt-core/security/advisories/GHSA-p3f3-5ccg-83xqVendor Advisory
af854a3a-2127-422b-91ae-364da2661108https://tempered.works/posts/2024/07/06/preventing-data-theft-with-gcp-service-controlsExploit, Third Party Advisory
af854a3a-2127-422b-91ae-364da2661108https://www.elementary-data.com/post/are-dbt-packages-secure-the-answer-lies-in-your-dwh-policiesExploit, Third Party Advisory
af854a3a-2127-422b-91ae-364da2661108https://www.equalexperts.com/blog/tech-focus/are-you-at-risk-from-this-critical-dbt-vulnerabilityExploit, Third Party Advisory
Impacted products
Vendor Product Version
getdbt dbt_core *
getdbt dbt_core *



{
  "configurations": [
    {
      "nodes": [
        {
          "cpeMatch": [
            {
              "criteria": "cpe:2.3:a:getdbt:dbt_core:*:*:*:*:*:*:*:*",
              "matchCriteriaId": "914D843B-54DC-45D0-ACC5-CA2EE99FE727",
              "versionEndExcluding": "1.6.14",
              "vulnerable": true
            },
            {
              "criteria": "cpe:2.3:a:getdbt:dbt_core:*:*:*:*:*:*:*:*",
              "matchCriteriaId": "9452C38F-FDF5-4F99-87A9-3C6DBBA031F2",
              "versionEndExcluding": "1.7.14",
              "versionStartIncluding": "1.7.0",
              "vulnerable": true
            }
          ],
          "negate": false,
          "operator": "OR"
        }
      ]
    }
  ],
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "dbt enables data analysts and engineers to transform their data using the same practices that software engineers use to build applications. 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\u0027s functionality. However, this also means that a malicious package could potentially override these components with harmful code. This issue has been fixed in versions 1.8.0, 1.6.14 and 1.7.14. Users are advised to upgrade. There are no kn own workarounds for this vulnerability. Users updating to either 1.6.14 or 1.7.14 will need to set `flags.require_explicit_package_overrides_for_builtin_materializations: False` in their configuration in `dbt_project.yml`."
    },
    {
      "lang": "es",
      "value": "dbt permite a los ingenieros y analistas de datos transformar sus datos utilizando las mismas pr\u00e1cticas que utilizan los ingenieros de software para crear aplicaciones. Cuando un usuario instala un paquete en dbt, tiene la capacidad de anular macros, materializaciones y otros componentes principales de dbt. Esto es por dise\u00f1o, ya que permite que los paquetes extiendan y personalicen la funcionalidad de dbt. Sin embargo, esto tambi\u00e9n significa que un paquete malicioso podr\u00eda anular estos componentes con c\u00f3digo da\u00f1ino. Este problema se solucion\u00f3 en las versiones 1.8.0, 1.6.14 y 1.7.14. Se recomienda a los usuarios que actualicen. No existen workarounds conocidos para esta vulnerabilidad. Los usuarios que actualicen a 1.6.14 o 1.7.14 deber\u00e1n configurar `flags.require_explicit_package_overrides_for_builtin_materializations: False` en su configuraci\u00f3n en `dbt_project.yml`."
    }
  ],
  "id": "CVE-2024-40637",
  "lastModified": "2024-11-21T09:31:24.457",
  "metrics": {
    "cvssMetricV31": [
      {
        "cvssData": {
          "attackComplexity": "HIGH",
          "attackVector": "LOCAL",
          "availabilityImpact": "LOW",
          "baseScore": 4.2,
          "baseSeverity": "MEDIUM",
          "confidentialityImpact": "LOW",
          "integrityImpact": "LOW",
          "privilegesRequired": "LOW",
          "scope": "UNCHANGED",
          "userInteraction": "REQUIRED",
          "vectorString": "CVSS:3.1/AV:L/AC:H/PR:L/UI:R/S:U/C:L/I:L/A:L",
          "version": "3.1"
        },
        "exploitabilityScore": 0.8,
        "impactScore": 3.4,
        "source": "security-advisories@github.com",
        "type": "Secondary"
      },
      {
        "cvssData": {
          "attackComplexity": "LOW",
          "attackVector": "LOCAL",
          "availabilityImpact": "HIGH",
          "baseScore": 7.8,
          "baseSeverity": "HIGH",
          "confidentialityImpact": "HIGH",
          "integrityImpact": "HIGH",
          "privilegesRequired": "LOW",
          "scope": "UNCHANGED",
          "userInteraction": "NONE",
          "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
          "version": "3.1"
        },
        "exploitabilityScore": 1.8,
        "impactScore": 5.9,
        "source": "nvd@nist.gov",
        "type": "Primary"
      }
    ]
  },
  "published": "2024-07-16T23:15:24.260",
  "references": [
    {
      "source": "security-advisories@github.com",
      "tags": [
        "Product"
      ],
      "url": "https://docs.getdbt.com/docs/build/packages"
    },
    {
      "source": "security-advisories@github.com",
      "tags": [
        "Vendor Advisory"
      ],
      "url": "https://docs.getdbt.com/reference/global-configs/legacy-behaviors#behavior-change-flags"
    },
    {
      "source": "security-advisories@github.com",
      "tags": [
        "Patch"
      ],
      "url": "https://github.com/dbt-labs/dbt-core/commit/3c82a0296d227cb1be295356df314c11716f4ff6"
    },
    {
      "source": "security-advisories@github.com",
      "tags": [
        "Patch"
      ],
      "url": "https://github.com/dbt-labs/dbt-core/commit/87ac4deb00cc9fe334706e42a365903a1d581624"
    },
    {
      "source": "security-advisories@github.com",
      "tags": [
        "Vendor Advisory"
      ],
      "url": "https://github.com/dbt-labs/dbt-core/security/advisories/GHSA-p3f3-5ccg-83xq"
    },
    {
      "source": "security-advisories@github.com",
      "tags": [
        "Exploit",
        "Third Party Advisory"
      ],
      "url": "https://tempered.works/posts/2024/07/06/preventing-data-theft-with-gcp-service-controls"
    },
    {
      "source": "security-advisories@github.com",
      "tags": [
        "Exploit",
        "Third Party Advisory"
      ],
      "url": "https://www.elementary-data.com/post/are-dbt-packages-secure-the-answer-lies-in-your-dwh-policies"
    },
    {
      "source": "security-advisories@github.com",
      "tags": [
        "Exploit",
        "Third Party Advisory"
      ],
      "url": "https://www.equalexperts.com/blog/tech-focus/are-you-at-risk-from-this-critical-dbt-vulnerability"
    },
    {
      "source": "af854a3a-2127-422b-91ae-364da2661108",
      "tags": [
        "Product"
      ],
      "url": "https://docs.getdbt.com/docs/build/packages"
    },
    {
      "source": "af854a3a-2127-422b-91ae-364da2661108",
      "tags": [
        "Vendor Advisory"
      ],
      "url": "https://docs.getdbt.com/reference/global-configs/legacy-behaviors#behavior-change-flags"
    },
    {
      "source": "af854a3a-2127-422b-91ae-364da2661108",
      "tags": [
        "Patch"
      ],
      "url": "https://github.com/dbt-labs/dbt-core/commit/3c82a0296d227cb1be295356df314c11716f4ff6"
    },
    {
      "source": "af854a3a-2127-422b-91ae-364da2661108",
      "tags": [
        "Patch"
      ],
      "url": "https://github.com/dbt-labs/dbt-core/commit/87ac4deb00cc9fe334706e42a365903a1d581624"
    },
    {
      "source": "af854a3a-2127-422b-91ae-364da2661108",
      "tags": [
        "Vendor Advisory"
      ],
      "url": "https://github.com/dbt-labs/dbt-core/security/advisories/GHSA-p3f3-5ccg-83xq"
    },
    {
      "source": "af854a3a-2127-422b-91ae-364da2661108",
      "tags": [
        "Exploit",
        "Third Party Advisory"
      ],
      "url": "https://tempered.works/posts/2024/07/06/preventing-data-theft-with-gcp-service-controls"
    },
    {
      "source": "af854a3a-2127-422b-91ae-364da2661108",
      "tags": [
        "Exploit",
        "Third Party Advisory"
      ],
      "url": "https://www.elementary-data.com/post/are-dbt-packages-secure-the-answer-lies-in-your-dwh-policies"
    },
    {
      "source": "af854a3a-2127-422b-91ae-364da2661108",
      "tags": [
        "Exploit",
        "Third Party Advisory"
      ],
      "url": "https://www.equalexperts.com/blog/tech-focus/are-you-at-risk-from-this-critical-dbt-vulnerability"
    }
  ],
  "sourceIdentifier": "security-advisories@github.com",
  "vulnStatus": "Modified",
  "weaknesses": [
    {
      "description": [
        {
          "lang": "en",
          "value": "CWE-74"
        }
      ],
      "source": "security-advisories@github.com",
      "type": "Secondary"
    },
    {
      "description": [
        {
          "lang": "en",
          "value": "CWE-89"
        }
      ],
      "source": "nvd@nist.gov",
      "type": "Primary"
    }
  ]
}