{ "data_version": "4.0", "data_type": "CVE", "data_format": "MITRE", "CVE_data_meta": { "ID": "CVE-2024-37904", "ASSIGNER": "security-advisories@github.com", "STATE": "PUBLIC" }, "description": { "description_data": [ { "lang": "eng", "value": "Minder is an open source Software Supply Chain Security Platform. Minder's Git provider is vulnerable to a denial of service from a maliciously configured GitHub repository. The Git provider clones users repositories using the `github.com/go-git/go-git/v5` library on lines `L55-L89`. The Git provider does the following on the lines `L56-L62`. First, it sets the `CloneOptions`, specifying the url, the depth etc. It then validates the options. It then sets up an in-memory filesystem, to which it clones and Finally, it clones the repository. The `(g *Git) Clone()` method is vulnerable to a DoS attack: A Minder user can instruct Minder to clone a large repository which will exhaust memory and crash the Minder server. The root cause of this vulnerability is a combination of the following conditions: 1. Users can control the Git URL which Minder clones, 2. Minder does not enforce a size limit to the repository, 3. Minder clones the entire repository into memory. This issue has been addressed in commit `7979b43` which has been included in release version v0.0.52. Users are advised to upgrade. There are no known workarounds for this vulnerability." } ] }, "problemtype": { "problemtype_data": [ { "description": [ { "lang": "eng", "value": "CWE-400: Uncontrolled Resource Consumption", "cweId": "CWE-400" } ] } ] }, "affects": { "vendor": { "vendor_data": [ { "vendor_name": "stacklok", "product": { "product_data": [ { "product_name": "minder", "version": { "version_data": [ { "version_affected": "=", "version_value": "< 0.0.52" } ] } } ] } } ] } }, "references": { "reference_data": [ { "url": "https://github.com/stacklok/minder/security/advisories/GHSA-hpcg-xjq5-g666", "refsource": "MISC", "name": "https://github.com/stacklok/minder/security/advisories/GHSA-hpcg-xjq5-g666" }, { "url": "https://github.com/stacklok/minder/commit/7979b43", "refsource": "MISC", "name": "https://github.com/stacklok/minder/commit/7979b43" }, { "url": "https://github.com/stacklok/minder/blob/85985445c8ac3e51f03372e99c7b2f08a6d274aa/internal/providers/git/git.go#L55-L89", "refsource": "MISC", "name": "https://github.com/stacklok/minder/blob/85985445c8ac3e51f03372e99c7b2f08a6d274aa/internal/providers/git/git.go#L55-L89" }, { "url": "https://github.com/stacklok/minder/blob/85985445c8ac3e51f03372e99c7b2f08a6d274aa/internal/providers/git/git.go#L56-L62", "refsource": "MISC", "name": "https://github.com/stacklok/minder/blob/85985445c8ac3e51f03372e99c7b2f08a6d274aa/internal/providers/git/git.go#L56-L62" } ] }, "source": { "advisory": "GHSA-hpcg-xjq5-g666", "discovery": "UNKNOWN" }, "impact": { "cvss": [ { "attackComplexity": "LOW", "attackVector": "NETWORK", "availabilityImpact": "HIGH", "baseScore": 5.7, "baseSeverity": "MEDIUM", "confidentialityImpact": "NONE", "integrityImpact": "NONE", "privilegesRequired": "LOW", "scope": "UNCHANGED", "userInteraction": "REQUIRED", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:H", "version": "3.1" } ] } }