Search

Find a vulnerability

Search criteria

    4 vulnerabilities by gruntwork-io

    CVE-2026-64672 (GCVE-0-2026-64672)

    Vulnerability from nvd – Published: 2026-11-03 20:44 – Updated: 2026-11-03 20:44
    VLAI
    Title
    Terragrunt catalog predictable temp symlink clobber
    Summary
    Terragrunt is a flexible orchestration tool that allows Infrastructure as Code written in OpenTofu or Terraform to scale. Prior to 1.1.1, the terragrunt catalog command derives a predictable per-repository catalog clone root under the shared system temporary directory and follows a symlink already placed at that path. A local attacker who can write to the temporary directory and predict the cataloged repository can redirect cleanup and cloning outside the intended root, causing an existing repository-named directory to be deleted and replaced in the victim's security context. The attack requires the victim to run terragrunt catalog on a shared host while the symlink is present, and it is not remotely exploitable. This issue is fixed in version 1.1.1.
    CWE
    • CWE-59 - Improper Link Resolution Before File Access ('Link Following')
    • CWE-377 - Insecure Temporary File
    Assigner
    GitHub_M CNA under the mitre root
    CNA scorecard C 72/100 over 7913 records in the last 180 days details
    Impacted products
    Vendor Product Version
    gruntwork-io terragrunt Affected: < 1.1.1
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "product": "terragrunt",
              "vendor": "gruntwork-io",
              "versions": [
                {
                  "status": "affected",
                  "version": "\u003c 1.1.1"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "Terragrunt is a flexible orchestration tool that allows Infrastructure as Code written in OpenTofu or Terraform to scale. Prior to 1.1.1, the terragrunt catalog command derives a predictable per-repository catalog clone root under the shared system temporary directory and follows a symlink already placed at that path. A local attacker who can write to the temporary directory and predict the cataloged repository can redirect cleanup and cloning outside the intended root, causing an existing repository-named directory to be deleted and replaced in the victim\u0027s security context. The attack requires the victim to run terragrunt catalog on a shared host while the symlink is present, and it is not remotely exploitable. This issue is fixed in version 1.1.1."
            }
          ],
          "metrics": [
            {
              "cvssV4_0": {
                "attackComplexity": "LOW",
                "attackRequirements": "PRESENT",
                "attackVector": "LOCAL",
                "baseScore": 4.4,
                "baseSeverity": "MEDIUM",
                "privilegesRequired": "LOW",
                "subAvailabilityImpact": "NONE",
                "subConfidentialityImpact": "NONE",
                "subIntegrityImpact": "NONE",
                "userInteraction": "PASSIVE",
                "vectorString": "CVSS:4.0/AV:L/AC:L/AT:P/PR:L/UI:P/VC:N/VI:H/VA:H/SC:N/SI:N/SA:N",
                "version": "4.0",
                "vulnAvailabilityImpact": "HIGH",
                "vulnConfidentialityImpact": "NONE",
                "vulnIntegrityImpact": "HIGH"
              }
            }
          ],
          "problemTypes": [
            {
              "descriptions": [
                {
                  "cweId": "CWE-59",
                  "description": "CWE-59: Improper Link Resolution Before File Access (\u0027Link Following\u0027)",
                  "lang": "en",
                  "type": "CWE"
                }
              ]
            },
            {
              "descriptions": [
                {
                  "cweId": "CWE-377",
                  "description": "CWE-377: Insecure Temporary File",
                  "lang": "en",
                  "type": "CWE"
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-11-03T20:44:04.616Z",
            "orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
            "shortName": "GitHub_M"
          },
          "references": [
            {
              "name": "https://github.com/gruntwork-io/terragrunt/security/advisories/GHSA-wv6g-x823-wx9m",
              "tags": [
                "x_refsource_CONFIRM"
              ],
              "url": "https://github.com/gruntwork-io/terragrunt/security/advisories/GHSA-wv6g-x823-wx9m"
            },
            {
              "name": "https://github.com/gruntwork-io/terragrunt/pull/6438",
              "tags": [
                "x_refsource_MISC"
              ],
              "url": "https://github.com/gruntwork-io/terragrunt/pull/6438"
            },
            {
              "name": "https://github.com/gruntwork-io/terragrunt/commit/668891c5a2ad2996f134bb8b00098754674ea94a",
              "tags": [
                "x_refsource_MISC"
              ],
              "url": "https://github.com/gruntwork-io/terragrunt/commit/668891c5a2ad2996f134bb8b00098754674ea94a"
            },
            {
              "name": "https://github.com/gruntwork-io/terragrunt/releases/tag/v1.1.1",
              "tags": [
                "x_refsource_MISC"
              ],
              "url": "https://github.com/gruntwork-io/terragrunt/releases/tag/v1.1.1"
            }
          ],
          "source": {
            "advisory": "GHSA-wv6g-x823-wx9m",
            "discovery": "UNKNOWN"
          },
          "title": "Terragrunt catalog predictable temp symlink clobber"
        }
      },
      "cveMetadata": {
        "assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
        "assignerShortName": "GitHub_M",
        "cveId": "CVE-2026-64672",
        "datePublished": "2026-11-03T20:44:04.616Z",
        "dateReserved": "2026-07-20T17:12:12.891Z",
        "dateUpdated": "2026-11-03T20:44:04.616Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-45099 (GCVE-0-2026-45099)

    Vulnerability from nvd – Published: 2026-08-21 20:07 – Updated: 2026-08-25 14:23
    VLAI
    Title
    Terragrunt: Arbitrary File Deletion via Malicious Module Manifest
    Summary
    Terragrunt is a flexible orchestration tool that allows Infrastructure as Code written in OpenTofu or Terraform to scale. Prior to 1.0.4, Terragrunt trusts paths decoded from a downloaded module's .terragrunt-module-manifest during fileManifest.Clean() in internal/util/file.go. A malicious or compromised external module can place absolute or traversal paths in the manifest, causing cleanup to delete files outside the module cache that are accessible to the Terragrunt process before OpenTofu or Terraform executes. This deletion-only primitive can remove local source code or configuration and disrupt CI/CD pipelines. This issue is fixed in version 1.0.4.
    SSVC
    Exploitation: none Automatable: yes Technical Impact: partial
    CISA Coordinator · CISA-ADP (v2.0.3)
    Decision recorded 2026-08-25 14:23 UTC
    CWE
    • CWE-22 - Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
    Assigner
    GitHub_M CNA under the mitre root
    CNA scorecard C 72/100 over 7913 records in the last 180 days details
    Impacted products
    Vendor Product Version
    gruntwork-io terragrunt Affected: < 1.0.4
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "adp": [
          {
            "metrics": [
              {
                "other": {
                  "content": {
                    "id": "CVE-2026-45099",
                    "options": [
                      {
                        "Exploitation": "none"
                      },
                      {
                        "Automatable": "yes"
                      },
                      {
                        "Technical Impact": "partial"
                      }
                    ],
                    "role": "CISA Coordinator",
                    "timestamp": "2026-08-25T14:23:03.914445Z",
                    "version": "2.0.3"
                  },
                  "type": "ssvc"
                }
              }
            ],
            "providerMetadata": {
              "dateUpdated": "2026-08-25T14:23:16.006Z",
              "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
              "shortName": "CISA-ADP"
            },
            "title": "CISA ADP Vulnrichment"
          }
        ],
        "cna": {
          "affected": [
            {
              "product": "terragrunt",
              "vendor": "gruntwork-io",
              "versions": [
                {
                  "status": "affected",
                  "version": "\u003c 1.0.4"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "Terragrunt is a flexible orchestration tool that allows Infrastructure as Code written in OpenTofu or Terraform to scale. Prior to 1.0.4, Terragrunt trusts paths decoded from a downloaded module\u0027s .terragrunt-module-manifest during fileManifest.Clean() in internal/util/file.go. A malicious or compromised external module can place absolute or traversal paths in the manifest, causing cleanup to delete files outside the module cache that are accessible to the Terragrunt process before OpenTofu or Terraform executes. This deletion-only primitive can remove local source code or configuration and disrupt CI/CD pipelines. This issue is fixed in version 1.0.4."
            }
          ],
          "metrics": [
            {
              "cvssV4_0": {
                "attackComplexity": "LOW",
                "attackRequirements": "NONE",
                "attackVector": "NETWORK",
                "baseScore": 6.9,
                "baseSeverity": "MEDIUM",
                "privilegesRequired": "NONE",
                "subAvailabilityImpact": "NONE",
                "subConfidentialityImpact": "NONE",
                "subIntegrityImpact": "NONE",
                "userInteraction": "NONE",
                "vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N",
                "version": "4.0",
                "vulnAvailabilityImpact": "NONE",
                "vulnConfidentialityImpact": "NONE",
                "vulnIntegrityImpact": "LOW"
              }
            }
          ],
          "problemTypes": [
            {
              "descriptions": [
                {
                  "cweId": "CWE-22",
                  "description": "CWE-22: Improper Limitation of a Pathname to a Restricted Directory (\u0027Path Traversal\u0027)",
                  "lang": "en",
                  "type": "CWE"
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-21T20:07:33.195Z",
            "orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
            "shortName": "GitHub_M"
          },
          "references": [
            {
              "name": "https://github.com/gruntwork-io/terragrunt/security/advisories/GHSA-8394-6f8r-whxg",
              "tags": [
                "x_refsource_CONFIRM"
              ],
              "url": "https://github.com/gruntwork-io/terragrunt/security/advisories/GHSA-8394-6f8r-whxg"
            },
            {
              "name": "https://github.com/gruntwork-io/terragrunt/pull/6032",
              "tags": [
                "x_refsource_MISC"
              ],
              "url": "https://github.com/gruntwork-io/terragrunt/pull/6032"
            },
            {
              "name": "https://github.com/gruntwork-io/terragrunt/commit/3d6f10d6bccc851c6506a307a0b8675e0346e65e",
              "tags": [
                "x_refsource_MISC"
              ],
              "url": "https://github.com/gruntwork-io/terragrunt/commit/3d6f10d6bccc851c6506a307a0b8675e0346e65e"
            },
            {
              "name": "https://github.com/gruntwork-io/terragrunt/releases/tag/v1.0.4",
              "tags": [
                "x_refsource_MISC"
              ],
              "url": "https://github.com/gruntwork-io/terragrunt/releases/tag/v1.0.4"
            }
          ],
          "source": {
            "advisory": "GHSA-8394-6f8r-whxg",
            "discovery": "UNKNOWN"
          },
          "title": "Terragrunt: Arbitrary File Deletion via Malicious Module Manifest"
        }
      },
      "cveMetadata": {
        "assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
        "assignerShortName": "GitHub_M",
        "cveId": "CVE-2026-45099",
        "datePublished": "2026-08-21T20:07:33.195Z",
        "dateReserved": "2026-05-08T19:27:26.698Z",
        "dateUpdated": "2026-08-25T14:23:16.006Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64672 (GCVE-0-2026-64672)

    Vulnerability from cvelistv5 – Published: 2026-11-03 20:44 – Updated: 2026-11-03 20:44
    VLAI
    Title
    Terragrunt catalog predictable temp symlink clobber
    Summary
    Terragrunt is a flexible orchestration tool that allows Infrastructure as Code written in OpenTofu or Terraform to scale. Prior to 1.1.1, the terragrunt catalog command derives a predictable per-repository catalog clone root under the shared system temporary directory and follows a symlink already placed at that path. A local attacker who can write to the temporary directory and predict the cataloged repository can redirect cleanup and cloning outside the intended root, causing an existing repository-named directory to be deleted and replaced in the victim's security context. The attack requires the victim to run terragrunt catalog on a shared host while the symlink is present, and it is not remotely exploitable. This issue is fixed in version 1.1.1.
    CWE
    • CWE-59 - Improper Link Resolution Before File Access ('Link Following')
    • CWE-377 - Insecure Temporary File
    Assigner
    GitHub_M CNA under the mitre root
    CNA scorecard C 72/100 over 7913 records in the last 180 days details
    Impacted products
    Vendor Product Version
    gruntwork-io terragrunt Affected: < 1.1.1
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "product": "terragrunt",
              "vendor": "gruntwork-io",
              "versions": [
                {
                  "status": "affected",
                  "version": "\u003c 1.1.1"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "Terragrunt is a flexible orchestration tool that allows Infrastructure as Code written in OpenTofu or Terraform to scale. Prior to 1.1.1, the terragrunt catalog command derives a predictable per-repository catalog clone root under the shared system temporary directory and follows a symlink already placed at that path. A local attacker who can write to the temporary directory and predict the cataloged repository can redirect cleanup and cloning outside the intended root, causing an existing repository-named directory to be deleted and replaced in the victim\u0027s security context. The attack requires the victim to run terragrunt catalog on a shared host while the symlink is present, and it is not remotely exploitable. This issue is fixed in version 1.1.1."
            }
          ],
          "metrics": [
            {
              "cvssV4_0": {
                "attackComplexity": "LOW",
                "attackRequirements": "PRESENT",
                "attackVector": "LOCAL",
                "baseScore": 4.4,
                "baseSeverity": "MEDIUM",
                "privilegesRequired": "LOW",
                "subAvailabilityImpact": "NONE",
                "subConfidentialityImpact": "NONE",
                "subIntegrityImpact": "NONE",
                "userInteraction": "PASSIVE",
                "vectorString": "CVSS:4.0/AV:L/AC:L/AT:P/PR:L/UI:P/VC:N/VI:H/VA:H/SC:N/SI:N/SA:N",
                "version": "4.0",
                "vulnAvailabilityImpact": "HIGH",
                "vulnConfidentialityImpact": "NONE",
                "vulnIntegrityImpact": "HIGH"
              }
            }
          ],
          "problemTypes": [
            {
              "descriptions": [
                {
                  "cweId": "CWE-59",
                  "description": "CWE-59: Improper Link Resolution Before File Access (\u0027Link Following\u0027)",
                  "lang": "en",
                  "type": "CWE"
                }
              ]
            },
            {
              "descriptions": [
                {
                  "cweId": "CWE-377",
                  "description": "CWE-377: Insecure Temporary File",
                  "lang": "en",
                  "type": "CWE"
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-11-03T20:44:04.616Z",
            "orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
            "shortName": "GitHub_M"
          },
          "references": [
            {
              "name": "https://github.com/gruntwork-io/terragrunt/security/advisories/GHSA-wv6g-x823-wx9m",
              "tags": [
                "x_refsource_CONFIRM"
              ],
              "url": "https://github.com/gruntwork-io/terragrunt/security/advisories/GHSA-wv6g-x823-wx9m"
            },
            {
              "name": "https://github.com/gruntwork-io/terragrunt/pull/6438",
              "tags": [
                "x_refsource_MISC"
              ],
              "url": "https://github.com/gruntwork-io/terragrunt/pull/6438"
            },
            {
              "name": "https://github.com/gruntwork-io/terragrunt/commit/668891c5a2ad2996f134bb8b00098754674ea94a",
              "tags": [
                "x_refsource_MISC"
              ],
              "url": "https://github.com/gruntwork-io/terragrunt/commit/668891c5a2ad2996f134bb8b00098754674ea94a"
            },
            {
              "name": "https://github.com/gruntwork-io/terragrunt/releases/tag/v1.1.1",
              "tags": [
                "x_refsource_MISC"
              ],
              "url": "https://github.com/gruntwork-io/terragrunt/releases/tag/v1.1.1"
            }
          ],
          "source": {
            "advisory": "GHSA-wv6g-x823-wx9m",
            "discovery": "UNKNOWN"
          },
          "title": "Terragrunt catalog predictable temp symlink clobber"
        }
      },
      "cveMetadata": {
        "assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
        "assignerShortName": "GitHub_M",
        "cveId": "CVE-2026-64672",
        "datePublished": "2026-11-03T20:44:04.616Z",
        "dateReserved": "2026-07-20T17:12:12.891Z",
        "dateUpdated": "2026-11-03T20:44:04.616Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-45099 (GCVE-0-2026-45099)

    Vulnerability from cvelistv5 – Published: 2026-08-21 20:07 – Updated: 2026-08-25 14:23
    VLAI
    Title
    Terragrunt: Arbitrary File Deletion via Malicious Module Manifest
    Summary
    Terragrunt is a flexible orchestration tool that allows Infrastructure as Code written in OpenTofu or Terraform to scale. Prior to 1.0.4, Terragrunt trusts paths decoded from a downloaded module's .terragrunt-module-manifest during fileManifest.Clean() in internal/util/file.go. A malicious or compromised external module can place absolute or traversal paths in the manifest, causing cleanup to delete files outside the module cache that are accessible to the Terragrunt process before OpenTofu or Terraform executes. This deletion-only primitive can remove local source code or configuration and disrupt CI/CD pipelines. This issue is fixed in version 1.0.4.
    SSVC
    Exploitation: none Automatable: yes Technical Impact: partial
    CISA Coordinator · CISA-ADP (v2.0.3)
    Decision recorded 2026-08-25 14:23 UTC
    CWE
    • CWE-22 - Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
    Assigner
    GitHub_M CNA under the mitre root
    CNA scorecard C 72/100 over 7913 records in the last 180 days details
    Impacted products
    Vendor Product Version
    gruntwork-io terragrunt Affected: < 1.0.4
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "adp": [
          {
            "metrics": [
              {
                "other": {
                  "content": {
                    "id": "CVE-2026-45099",
                    "options": [
                      {
                        "Exploitation": "none"
                      },
                      {
                        "Automatable": "yes"
                      },
                      {
                        "Technical Impact": "partial"
                      }
                    ],
                    "role": "CISA Coordinator",
                    "timestamp": "2026-08-25T14:23:03.914445Z",
                    "version": "2.0.3"
                  },
                  "type": "ssvc"
                }
              }
            ],
            "providerMetadata": {
              "dateUpdated": "2026-08-25T14:23:16.006Z",
              "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
              "shortName": "CISA-ADP"
            },
            "title": "CISA ADP Vulnrichment"
          }
        ],
        "cna": {
          "affected": [
            {
              "product": "terragrunt",
              "vendor": "gruntwork-io",
              "versions": [
                {
                  "status": "affected",
                  "version": "\u003c 1.0.4"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "Terragrunt is a flexible orchestration tool that allows Infrastructure as Code written in OpenTofu or Terraform to scale. Prior to 1.0.4, Terragrunt trusts paths decoded from a downloaded module\u0027s .terragrunt-module-manifest during fileManifest.Clean() in internal/util/file.go. A malicious or compromised external module can place absolute or traversal paths in the manifest, causing cleanup to delete files outside the module cache that are accessible to the Terragrunt process before OpenTofu or Terraform executes. This deletion-only primitive can remove local source code or configuration and disrupt CI/CD pipelines. This issue is fixed in version 1.0.4."
            }
          ],
          "metrics": [
            {
              "cvssV4_0": {
                "attackComplexity": "LOW",
                "attackRequirements": "NONE",
                "attackVector": "NETWORK",
                "baseScore": 6.9,
                "baseSeverity": "MEDIUM",
                "privilegesRequired": "NONE",
                "subAvailabilityImpact": "NONE",
                "subConfidentialityImpact": "NONE",
                "subIntegrityImpact": "NONE",
                "userInteraction": "NONE",
                "vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N",
                "version": "4.0",
                "vulnAvailabilityImpact": "NONE",
                "vulnConfidentialityImpact": "NONE",
                "vulnIntegrityImpact": "LOW"
              }
            }
          ],
          "problemTypes": [
            {
              "descriptions": [
                {
                  "cweId": "CWE-22",
                  "description": "CWE-22: Improper Limitation of a Pathname to a Restricted Directory (\u0027Path Traversal\u0027)",
                  "lang": "en",
                  "type": "CWE"
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-21T20:07:33.195Z",
            "orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
            "shortName": "GitHub_M"
          },
          "references": [
            {
              "name": "https://github.com/gruntwork-io/terragrunt/security/advisories/GHSA-8394-6f8r-whxg",
              "tags": [
                "x_refsource_CONFIRM"
              ],
              "url": "https://github.com/gruntwork-io/terragrunt/security/advisories/GHSA-8394-6f8r-whxg"
            },
            {
              "name": "https://github.com/gruntwork-io/terragrunt/pull/6032",
              "tags": [
                "x_refsource_MISC"
              ],
              "url": "https://github.com/gruntwork-io/terragrunt/pull/6032"
            },
            {
              "name": "https://github.com/gruntwork-io/terragrunt/commit/3d6f10d6bccc851c6506a307a0b8675e0346e65e",
              "tags": [
                "x_refsource_MISC"
              ],
              "url": "https://github.com/gruntwork-io/terragrunt/commit/3d6f10d6bccc851c6506a307a0b8675e0346e65e"
            },
            {
              "name": "https://github.com/gruntwork-io/terragrunt/releases/tag/v1.0.4",
              "tags": [
                "x_refsource_MISC"
              ],
              "url": "https://github.com/gruntwork-io/terragrunt/releases/tag/v1.0.4"
            }
          ],
          "source": {
            "advisory": "GHSA-8394-6f8r-whxg",
            "discovery": "UNKNOWN"
          },
          "title": "Terragrunt: Arbitrary File Deletion via Malicious Module Manifest"
        }
      },
      "cveMetadata": {
        "assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
        "assignerShortName": "GitHub_M",
        "cveId": "CVE-2026-45099",
        "datePublished": "2026-08-21T20:07:33.195Z",
        "dateReserved": "2026-05-08T19:27:26.698Z",
        "dateUpdated": "2026-08-25T14:23:16.006Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }