Lookup for vulnerable packages by Package URL.

GET /api/packages/923985?format=api
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "url": "http://public2.vulnerablecode.io/api/packages/923985?format=api",
    "purl": "pkg:deb/debian/golang-github-gorilla-schema@1.2.0-2?distro=trixie",
    "type": "deb",
    "namespace": "debian",
    "name": "golang-github-gorilla-schema",
    "version": "1.2.0-2",
    "qualifiers": {
        "distro": "trixie"
    },
    "subpath": "",
    "is_vulnerable": true,
    "next_non_vulnerable_version": "1.4.1-1",
    "latest_non_vulnerable_version": "1.4.1-1",
    "affected_by_vulnerabilities": [
        {
            "url": "http://public2.vulnerablecode.io/api/vulnerabilities/18089?format=api",
            "vulnerability_id": "VCID-fcfw-7u4r-ebf8",
            "summary": "Potential memory exhaustion attack due to sparse slice deserialization\n### Details\n\nRunning `schema.Decoder.Decode()` on a struct that has a field of type `[]struct{...}` opens it up to malicious attacks regarding memory allocations, taking advantage of the sparse slice functionality. For instance, in the Proof of Concept written below, someone can specify to set a field of the billionth element and it will allocate all other elements before it in the slice. \n\nIn the local environment environment for my project, I was able to call an endpoint like `/innocent_endpoint?arr.10000000.X=1` and freeze my system from the memory allocation while parsing `r.Form`. I think [this line](https://github.com/gorilla/schema/blob/main/decoder.go#L223) is responsible for allocating the slice, although I haven't tested to make sure, so it's just an educated guess.\n\n### Proof of Concept\n\nThe following proof of concept works on both v1.2.0 and v1.2.1. I have not tested earlier versions.\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/gorilla/schema\"\n)\n\nfunc main() {\n\tdec := schema.NewDecoder()\n\tvar result struct {\n\t\tArr []struct{ Val int }\n\t}\n\tif err := dec.Decode(&result, map[string][]string{\"arr.1000000000.Val\": {\"1\"}}); err != nil {\n\t\tpanic(err)\n\t}\n\tfmt.Printf(\"%#+v\\n\", result)\n}\n\n```\n\n### Impact\n\nAny use of `schema.Decoder.Decode()` on a struct with arrays of other structs could be vulnerable to this memory exhaustion vulnerability. There seems to be no possible solution that a developer using this library can do to disable this behaviour without fixing it in this project, so all uses of Decode that fall under this umbrella are affected. A fix that doesn't require a major change may also be harder to find, since it could break compatibility with some other intended use-cases.",
            "references": [
                {
                    "reference_url": "https://access.redhat.com/hydra/rest/securitydata/cve/CVE-2024-37298.json",
                    "reference_id": "",
                    "reference_type": "",
                    "scores": [
                        {
                            "value": "7.5",
                            "scoring_system": "cvssv3",
                            "scoring_elements": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
                        }
                    ],
                    "url": "https://access.redhat.com/hydra/rest/securitydata/cve/CVE-2024-37298.json"
                },
                {
                    "reference_url": "https://api.first.org/data/v1/epss?cve=CVE-2024-37298",
                    "reference_id": "",
                    "reference_type": "",
                    "scores": [
                        {
                            "value": "0.00267",
                            "scoring_system": "epss",
                            "scoring_elements": "0.50107",
                            "published_at": "2026-04-29T12:55:00Z"
                        },
                        {
                            "value": "0.00267",
                            "scoring_system": "epss",
                            "scoring_elements": "0.50154",
                            "published_at": "2026-04-26T12:55:00Z"
                        },
                        {
                            "value": "0.00267",
                            "scoring_system": "epss",
                            "scoring_elements": "0.50147",
                            "published_at": "2026-04-24T12:55:00Z"
                        },
                        {
                            "value": "0.00267",
                            "scoring_system": "epss",
                            "scoring_elements": "0.50188",
                            "published_at": "2026-04-18T12:55:00Z"
                        },
                        {
                            "value": "0.00267",
                            "scoring_system": "epss",
                            "scoring_elements": "0.50143",
                            "published_at": "2026-04-13T12:55:00Z"
                        },
                        {
                            "value": "0.00267",
                            "scoring_system": "epss",
                            "scoring_elements": "0.50162",
                            "published_at": "2026-04-21T12:55:00Z"
                        },
                        {
                            "value": "0.00267",
                            "scoring_system": "epss",
                            "scoring_elements": "0.50156",
                            "published_at": "2026-04-09T12:55:00Z"
                        },
                        {
                            "value": "0.00267",
                            "scoring_system": "epss",
                            "scoring_elements": "0.5013",
                            "published_at": "2026-04-02T12:55:00Z"
                        },
                        {
                            "value": "0.00267",
                            "scoring_system": "epss",
                            "scoring_elements": "0.50158",
                            "published_at": "2026-04-04T12:55:00Z"
                        },
                        {
                            "value": "0.00267",
                            "scoring_system": "epss",
                            "scoring_elements": "0.50108",
                            "published_at": "2026-04-07T12:55:00Z"
                        },
                        {
                            "value": "0.00267",
                            "scoring_system": "epss",
                            "scoring_elements": "0.50146",
                            "published_at": "2026-04-12T12:55:00Z"
                        },
                        {
                            "value": "0.00267",
                            "scoring_system": "epss",
                            "scoring_elements": "0.50173",
                            "published_at": "2026-04-11T12:55:00Z"
                        }
                    ],
                    "url": "https://api.first.org/data/v1/epss?cve=CVE-2024-37298"
                },
                {
                    "reference_url": "https://github.com/gorilla/schema",
                    "reference_id": "",
                    "reference_type": "",
                    "scores": [
                        {
                            "value": "7.5",
                            "scoring_system": "cvssv3.1",
                            "scoring_elements": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
                        },
                        {
                            "value": "HIGH",
                            "scoring_system": "generic_textual",
                            "scoring_elements": ""
                        }
                    ],
                    "url": "https://github.com/gorilla/schema"
                },
                {
                    "reference_url": "https://github.com/gorilla/schema/blob/main/decoder.go#L223",
                    "reference_id": "",
                    "reference_type": "",
                    "scores": [
                        {
                            "value": "7.5",
                            "scoring_system": "cvssv3.1",
                            "scoring_elements": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
                        },
                        {
                            "value": "HIGH",
                            "scoring_system": "generic_textual",
                            "scoring_elements": ""
                        },
                        {
                            "value": "Track",
                            "scoring_system": "ssvc",
                            "scoring_elements": "SSVCv2/E:P/A:Y/T:P/P:M/B:A/M:M/D:T/2024-07-02T14:16:14Z/"
                        }
                    ],
                    "url": "https://github.com/gorilla/schema/blob/main/decoder.go#L223"
                },
                {
                    "reference_url": "https://github.com/gorilla/schema/commit/cd59f2f12cbdfa9c06aa63e425d1fe4a806967ff",
                    "reference_id": "",
                    "reference_type": "",
                    "scores": [
                        {
                            "value": "7.5",
                            "scoring_system": "cvssv3.1",
                            "scoring_elements": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
                        },
                        {
                            "value": "HIGH",
                            "scoring_system": "generic_textual",
                            "scoring_elements": ""
                        },
                        {
                            "value": "Track",
                            "scoring_system": "ssvc",
                            "scoring_elements": "SSVCv2/E:P/A:Y/T:P/P:M/B:A/M:M/D:T/2024-07-02T14:16:14Z/"
                        }
                    ],
                    "url": "https://github.com/gorilla/schema/commit/cd59f2f12cbdfa9c06aa63e425d1fe4a806967ff"
                },
                {
                    "reference_url": "https://github.com/gorilla/schema/security/advisories/GHSA-3669-72x9-r9p3",
                    "reference_id": "",
                    "reference_type": "",
                    "scores": [
                        {
                            "value": "7.5",
                            "scoring_system": "cvssv3.1",
                            "scoring_elements": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
                        },
                        {
                            "value": "HIGH",
                            "scoring_system": "generic_textual",
                            "scoring_elements": ""
                        },
                        {
                            "value": "Track",
                            "scoring_system": "ssvc",
                            "scoring_elements": "SSVCv2/E:P/A:Y/T:P/P:M/B:A/M:M/D:T/2024-07-02T14:16:14Z/"
                        }
                    ],
                    "url": "https://github.com/gorilla/schema/security/advisories/GHSA-3669-72x9-r9p3"
                },
                {
                    "reference_url": "https://nvd.nist.gov/vuln/detail/CVE-2024-37298",
                    "reference_id": "",
                    "reference_type": "",
                    "scores": [
                        {
                            "value": "7.5",
                            "scoring_system": "cvssv3.1",
                            "scoring_elements": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
                        },
                        {
                            "value": "HIGH",
                            "scoring_system": "generic_textual",
                            "scoring_elements": ""
                        }
                    ],
                    "url": "https://nvd.nist.gov/vuln/detail/CVE-2024-37298"
                },
                {
                    "reference_url": "https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1075973",
                    "reference_id": "1075973",
                    "reference_type": "",
                    "scores": [],
                    "url": "https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1075973"
                },
                {
                    "reference_url": "https://bugzilla.redhat.com/show_bug.cgi?id=2295010",
                    "reference_id": "2295010",
                    "reference_type": "",
                    "scores": [],
                    "url": "https://bugzilla.redhat.com/show_bug.cgi?id=2295010"
                },
                {
                    "reference_url": "https://access.redhat.com/errata/RHSA-2024:4702",
                    "reference_id": "RHSA-2024:4702",
                    "reference_type": "",
                    "scores": [],
                    "url": "https://access.redhat.com/errata/RHSA-2024:4702"
                },
                {
                    "reference_url": "https://access.redhat.com/errata/RHSA-2024:4825",
                    "reference_id": "RHSA-2024:4825",
                    "reference_type": "",
                    "scores": [],
                    "url": "https://access.redhat.com/errata/RHSA-2024:4825"
                },
                {
                    "reference_url": "https://access.redhat.com/errata/RHSA-2024:4848",
                    "reference_id": "RHSA-2024:4848",
                    "reference_type": "",
                    "scores": [],
                    "url": "https://access.redhat.com/errata/RHSA-2024:4848"
                },
                {
                    "reference_url": "https://access.redhat.com/errata/RHSA-2024:4858",
                    "reference_id": "RHSA-2024:4858",
                    "reference_type": "",
                    "scores": [],
                    "url": "https://access.redhat.com/errata/RHSA-2024:4858"
                },
                {
                    "reference_url": "https://access.redhat.com/errata/RHSA-2024:4963",
                    "reference_id": "RHSA-2024:4963",
                    "reference_type": "",
                    "scores": [],
                    "url": "https://access.redhat.com/errata/RHSA-2024:4963"
                },
                {
                    "reference_url": "https://access.redhat.com/errata/RHSA-2024:5194",
                    "reference_id": "RHSA-2024:5194",
                    "reference_type": "",
                    "scores": [],
                    "url": "https://access.redhat.com/errata/RHSA-2024:5194"
                },
                {
                    "reference_url": "https://access.redhat.com/errata/RHSA-2024:5202",
                    "reference_id": "RHSA-2024:5202",
                    "reference_type": "",
                    "scores": [],
                    "url": "https://access.redhat.com/errata/RHSA-2024:5202"
                },
                {
                    "reference_url": "https://access.redhat.com/errata/RHSA-2024:6194",
                    "reference_id": "RHSA-2024:6194",
                    "reference_type": "",
                    "scores": [],
                    "url": "https://access.redhat.com/errata/RHSA-2024:6194"
                }
            ],
            "fixed_packages": [
                {
                    "url": "http://public2.vulnerablecode.io/api/packages/923986?format=api",
                    "purl": "pkg:deb/debian/golang-github-gorilla-schema@1.4.1-1?distro=trixie",
                    "is_vulnerable": false,
                    "affected_by_vulnerabilities": [],
                    "resource_url": "http://public2.vulnerablecode.io/packages/pkg:deb/debian/golang-github-gorilla-schema@1.4.1-1%3Fdistro=trixie"
                }
            ],
            "aliases": [
                "CVE-2024-37298",
                "GHSA-3669-72x9-r9p3"
            ],
            "risk_score": 4.0,
            "exploitability": "0.5",
            "weighted_severity": "8.0",
            "resource_url": "http://public2.vulnerablecode.io/vulnerabilities/VCID-fcfw-7u4r-ebf8"
        }
    ],
    "fixing_vulnerabilities": [],
    "risk_score": "4.0",
    "resource_url": "http://public2.vulnerablecode.io/packages/pkg:deb/debian/golang-github-gorilla-schema@1.2.0-2%3Fdistro=trixie"
}