Lookup for vulnerable packages by Package URL.

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

{
    "url": "http://public2.vulnerablecode.io/api/packages/68029?format=api",
    "purl": "pkg:maven/io.netty/netty-codec-http2@4.2.11.Final",
    "type": "maven",
    "namespace": "io.netty",
    "name": "netty-codec-http2",
    "version": "4.2.11.Final",
    "qualifiers": {},
    "subpath": "",
    "is_vulnerable": false,
    "next_non_vulnerable_version": "4.2.13.Final",
    "latest_non_vulnerable_version": "4.2.13.Final",
    "affected_by_vulnerabilities": [],
    "fixing_vulnerabilities": [
        {
            "url": "http://public2.vulnerablecode.io/api/vulnerabilities/24792?format=api",
            "vulnerability_id": "VCID-cs79-xzk6-4kgp",
            "summary": "Netty HTTP/2 CONTINUATION Frame Flood DoS via Zero-Byte Frame Bypass\n### Summary\nA remote user can trigger a Denial of Service (DoS) against a Netty HTTP/2 server by sending a flood of `CONTINUATION` frames. The server's lack of a limit on the number of `CONTINUATION` frames, combined with a bypass of existing size-based mitigations using zero-byte frames, allows an user to cause excessive CPU consumption with minimal bandwidth, rendering the server unresponsive.\n\n### Details\nThe vulnerability exists in Netty's `DefaultHttp2FrameReader`. When an HTTP/2 `HEADERS` frame is received without the `END_HEADERS` flag, the server expects one or more subsequent `CONTINUATION` frames. However, the implementation does not enforce a limit on the *count* of these `CONTINUATION` frames.\n\nThe key issue is located in `codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2FrameReader.java`. The `verifyContinuationFrame()` method checks for stream association but fails to implement a frame count limit.\n\nAny user can exploit this by sending a stream of `CONTINUATION` frames with a zero-byte payload. While Netty has a `maxHeaderListSize` protection to limit the total size of headers, this check is never triggered by zero-byte frames. The logic effectively evaluates to `maxHeaderListSize - 0 < currentSize`, which will not trigger the limit until a non-zero byte is added. As a result, the server is forced to process an unlimited number of frames, consuming a CPU thread and monopolizing the connection.\n\n`codec-http2/src/main/java/io/netty/handler/codec/http2/DefaultHttp2FrameReader.java`\n\n**`verifyContinuationFrame()` (lines 381-393)** — No frame count check:\n```java\nprivate void verifyContinuationFrame() throws Http2Exception {\n    verifyAssociatedWithAStream();\n    if (headersContinuation == null) {\n        throw connectionError(PROTOCOL_ERROR, \"...\");\n    }\n    if (streamId != headersContinuation.getStreamId()) {\n        throw connectionError(PROTOCOL_ERROR, \"...\");\n    }\n    // NO frame count limit!\n}\n```\n\n**`HeadersBlockBuilder.addFragment()` (lines 695-723)** — Byte limit bypassed by 0-byte frames:\n```java\n// Line 710-711: This check NEVER fires when len=0\nif (headersDecoder.configuration().maxHeaderListSizeGoAway() - len <\n        headerBlock.readableBytes()) {\n    headerSizeExceeded();  // 10240 - 0 < 1 => FALSE always\n}\n```\n\nWhen `len=0`: `maxGoAway - 0 < readableBytes` → `10240 < 1` → FALSE. The byte limit is never triggered.\n\n### Impact\nThis is a CPU-based Denial of Service (DoS). Any service using Netty's default HTTP/2 server implementation is impacted. An unauthenticated user can exhaust server CPU resources and block legitimate users, leading to service unavailability. The low bandwidth requirement for the attack makes it highly practical.",
            "references": [
                {
                    "reference_url": "https://access.redhat.com/hydra/rest/securitydata/cve/CVE-2026-33871.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-2026-33871.json"
                },
                {
                    "reference_url": "https://api.first.org/data/v1/epss?cve=CVE-2026-33871",
                    "reference_id": "",
                    "reference_type": "",
                    "scores": [
                        {
                            "value": "0.00025",
                            "scoring_system": "epss",
                            "scoring_elements": "0.0707",
                            "published_at": "2026-04-26T12:55:00Z"
                        },
                        {
                            "value": "0.00025",
                            "scoring_system": "epss",
                            "scoring_elements": "0.07065",
                            "published_at": "2026-04-24T12:55:00Z"
                        },
                        {
                            "value": "0.00025",
                            "scoring_system": "epss",
                            "scoring_elements": "0.0708",
                            "published_at": "2026-04-21T12:55:00Z"
                        },
                        {
                            "value": "0.00028",
                            "scoring_system": "epss",
                            "scoring_elements": "0.07759",
                            "published_at": "2026-04-29T12:55:00Z"
                        },
                        {
                            "value": "0.00037",
                            "scoring_system": "epss",
                            "scoring_elements": "0.10692",
                            "published_at": "2026-05-05T12:55:00Z"
                        },
                        {
                            "value": "0.00037",
                            "scoring_system": "epss",
                            "scoring_elements": "0.10826",
                            "published_at": "2026-05-07T12:55:00Z"
                        },
                        {
                            "value": "0.00081",
                            "scoring_system": "epss",
                            "scoring_elements": "0.23856",
                            "published_at": "2026-04-07T12:55:00Z"
                        },
                        {
                            "value": "0.00081",
                            "scoring_system": "epss",
                            "scoring_elements": "0.24035",
                            "published_at": "2026-04-02T12:55:00Z"
                        },
                        {
                            "value": "0.00081",
                            "scoring_system": "epss",
                            "scoring_elements": "0.24074",
                            "published_at": "2026-04-04T12:55:00Z"
                        },
                        {
                            "value": "0.00081",
                            "scoring_system": "epss",
                            "scoring_elements": "0.23923",
                            "published_at": "2026-04-08T12:55:00Z"
                        },
                        {
                            "value": "0.00081",
                            "scoring_system": "epss",
                            "scoring_elements": "0.23969",
                            "published_at": "2026-04-09T12:55:00Z"
                        },
                        {
                            "value": "0.00081",
                            "scoring_system": "epss",
                            "scoring_elements": "0.23986",
                            "published_at": "2026-04-11T12:55:00Z"
                        },
                        {
                            "value": "0.00081",
                            "scoring_system": "epss",
                            "scoring_elements": "0.23942",
                            "published_at": "2026-04-12T12:55:00Z"
                        },
                        {
                            "value": "0.00081",
                            "scoring_system": "epss",
                            "scoring_elements": "0.23885",
                            "published_at": "2026-04-13T12:55:00Z"
                        },
                        {
                            "value": "0.00081",
                            "scoring_system": "epss",
                            "scoring_elements": "0.23896",
                            "published_at": "2026-04-16T12:55:00Z"
                        },
                        {
                            "value": "0.00081",
                            "scoring_system": "epss",
                            "scoring_elements": "0.23886",
                            "published_at": "2026-04-18T12:55:00Z"
                        }
                    ],
                    "url": "https://api.first.org/data/v1/epss?cve=CVE-2026-33871"
                },
                {
                    "reference_url": "https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2026-33871",
                    "reference_id": "",
                    "reference_type": "",
                    "scores": [],
                    "url": "https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2026-33871"
                },
                {
                    "reference_url": "https://ftp.suse.com/pub/projects/security/yaml/suse-cvss-scores.yaml",
                    "reference_id": "",
                    "reference_type": "",
                    "scores": [
                        {
                            "value": "5.9",
                            "scoring_system": "cvssv3.1",
                            "scoring_elements": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H"
                        }
                    ],
                    "url": "https://ftp.suse.com/pub/projects/security/yaml/suse-cvss-scores.yaml"
                },
                {
                    "reference_url": "https://github.com/netty/netty",
                    "reference_id": "",
                    "reference_type": "",
                    "scores": [
                        {
                            "value": "8.7",
                            "scoring_system": "cvssv4",
                            "scoring_elements": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N"
                        },
                        {
                            "value": "HIGH",
                            "scoring_system": "generic_textual",
                            "scoring_elements": ""
                        }
                    ],
                    "url": "https://github.com/netty/netty"
                },
                {
                    "reference_url": "https://github.com/netty/netty/security/advisories/GHSA-w9fj-cfpg-grvv",
                    "reference_id": "",
                    "reference_type": "",
                    "scores": [
                        {
                            "value": "HIGH",
                            "scoring_system": "cvssv3.1_qr",
                            "scoring_elements": ""
                        },
                        {
                            "value": "8.7",
                            "scoring_system": "cvssv4",
                            "scoring_elements": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N"
                        },
                        {
                            "value": "HIGH",
                            "scoring_system": "generic_textual",
                            "scoring_elements": ""
                        },
                        {
                            "value": "Track",
                            "scoring_system": "ssvc",
                            "scoring_elements": "SSVCv2/E:N/A:Y/T:P/P:M/B:A/M:M/D:T/2026-03-31T18:51:31Z/"
                        }
                    ],
                    "url": "https://github.com/netty/netty/security/advisories/GHSA-w9fj-cfpg-grvv"
                },
                {
                    "reference_url": "https://nvd.nist.gov/vuln/detail/CVE-2026-33871",
                    "reference_id": "",
                    "reference_type": "",
                    "scores": [
                        {
                            "value": "8.7",
                            "scoring_system": "cvssv4",
                            "scoring_elements": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N"
                        },
                        {
                            "value": "HIGH",
                            "scoring_system": "generic_textual",
                            "scoring_elements": ""
                        }
                    ],
                    "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-33871"
                },
                {
                    "reference_url": "https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1132230",
                    "reference_id": "1132230",
                    "reference_type": "",
                    "scores": [],
                    "url": "https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1132230"
                },
                {
                    "reference_url": "https://bugzilla.redhat.com/show_bug.cgi?id=2452456",
                    "reference_id": "2452456",
                    "reference_type": "",
                    "scores": [],
                    "url": "https://bugzilla.redhat.com/show_bug.cgi?id=2452456"
                },
                {
                    "reference_url": "https://github.com/advisories/GHSA-w9fj-cfpg-grvv",
                    "reference_id": "GHSA-w9fj-cfpg-grvv",
                    "reference_type": "",
                    "scores": [
                        {
                            "value": "HIGH",
                            "scoring_system": "cvssv3.1_qr",
                            "scoring_elements": ""
                        }
                    ],
                    "url": "https://github.com/advisories/GHSA-w9fj-cfpg-grvv"
                },
                {
                    "reference_url": "https://access.redhat.com/errata/RHSA-2026:10175",
                    "reference_id": "RHSA-2026:10175",
                    "reference_type": "",
                    "scores": [],
                    "url": "https://access.redhat.com/errata/RHSA-2026:10175"
                },
                {
                    "reference_url": "https://access.redhat.com/errata/RHSA-2026:10184",
                    "reference_id": "RHSA-2026:10184",
                    "reference_type": "",
                    "scores": [],
                    "url": "https://access.redhat.com/errata/RHSA-2026:10184"
                },
                {
                    "reference_url": "https://access.redhat.com/errata/RHSA-2026:13571",
                    "reference_id": "RHSA-2026:13571",
                    "reference_type": "",
                    "scores": [],
                    "url": "https://access.redhat.com/errata/RHSA-2026:13571"
                },
                {
                    "reference_url": "https://access.redhat.com/errata/RHSA-2026:14272",
                    "reference_id": "RHSA-2026:14272",
                    "reference_type": "",
                    "scores": [],
                    "url": "https://access.redhat.com/errata/RHSA-2026:14272"
                },
                {
                    "reference_url": "https://access.redhat.com/errata/RHSA-2026:14276",
                    "reference_id": "RHSA-2026:14276",
                    "reference_type": "",
                    "scores": [],
                    "url": "https://access.redhat.com/errata/RHSA-2026:14276"
                },
                {
                    "reference_url": "https://access.redhat.com/errata/RHSA-2026:7109",
                    "reference_id": "RHSA-2026:7109",
                    "reference_type": "",
                    "scores": [],
                    "url": "https://access.redhat.com/errata/RHSA-2026:7109"
                },
                {
                    "reference_url": "https://access.redhat.com/errata/RHSA-2026:7380",
                    "reference_id": "RHSA-2026:7380",
                    "reference_type": "",
                    "scores": [],
                    "url": "https://access.redhat.com/errata/RHSA-2026:7380"
                },
                {
                    "reference_url": "https://access.redhat.com/errata/RHSA-2026:8159",
                    "reference_id": "RHSA-2026:8159",
                    "reference_type": "",
                    "scores": [],
                    "url": "https://access.redhat.com/errata/RHSA-2026:8159"
                },
                {
                    "reference_url": "https://access.redhat.com/errata/RHSA-2026:8509",
                    "reference_id": "RHSA-2026:8509",
                    "reference_type": "",
                    "scores": [],
                    "url": "https://access.redhat.com/errata/RHSA-2026:8509"
                }
            ],
            "fixed_packages": [
                {
                    "url": "http://public2.vulnerablecode.io/api/packages/68028?format=api",
                    "purl": "pkg:maven/io.netty/netty-codec-http2@4.1.132.Final",
                    "is_vulnerable": true,
                    "affected_by_vulnerabilities": [
                        {
                            "vulnerability": "VCID-7rcj-a9zf-yfhb"
                        }
                    ],
                    "resource_url": "http://public2.vulnerablecode.io/packages/pkg:maven/io.netty/netty-codec-http2@4.1.132.Final"
                },
                {
                    "url": "http://public2.vulnerablecode.io/api/packages/68029?format=api",
                    "purl": "pkg:maven/io.netty/netty-codec-http2@4.2.11.Final",
                    "is_vulnerable": false,
                    "affected_by_vulnerabilities": [],
                    "resource_url": "http://public2.vulnerablecode.io/packages/pkg:maven/io.netty/netty-codec-http2@4.2.11.Final"
                }
            ],
            "aliases": [
                "CVE-2026-33871",
                "GHSA-w9fj-cfpg-grvv"
            ],
            "risk_score": 4.0,
            "exploitability": "0.5",
            "weighted_severity": "8.0",
            "resource_url": "http://public2.vulnerablecode.io/vulnerabilities/VCID-cs79-xzk6-4kgp"
        }
    ],
    "risk_score": null,
    "resource_url": "http://public2.vulnerablecode.io/packages/pkg:maven/io.netty/netty-codec-http2@4.2.11.Final"
}