Investigate in your agent.

Turn this advisory into a focused investigation. Ask your agent to check your project’s versions, explain the evidence, and suggest a compatible fix.

Your agent needs remote MCP support and access to https://cve.new/mcp.

Read the setup guide

Skip to content
Check your stack
CVE-2026-111103high8.2

HTTP/2 StreamError recovery rolls back connection state and bypasses per-connection limits in Bandit

Impact

Bandit versions 1.9.0 before 1.14.0 have an Improper Cleanup on Thrown Exception vulnerability, allowing an unauthenticated remote attacker to bypass per-connection resource limits. The attacker must send a single TCP write with several frames, one of which raises a stream error. This can lead to exceeding the max_concurrent_streams limit.

Summarized by @cf/meta/llama-3.3-70b-instruct-fp8-fast. Verify details against the original sources.

What to do

Disable HTTP/2 with http_2_options: [enabled: false], so that the vulnerable HTTP/2 handler never runs.

EEF guidance

Affected packages

This source has no supported package-version data for matching. You can read the advisory here, but this record alone cannot power a dependency check.

Affected products

Vendor version evidence. Product records are separate from automatic dependency matching.

mtrudel · EEF

bandit

1 range

Package identity

pkg:hex/banditExplore bandit →

Identity supplied by EEF. Version matching requires compatible range evidence.

Compare with this publisher’s ranges. This does not inspect your installation.

affected

1.9.0 → before 1.14.0

semver versions

unaffected

unknown

Other versions: unaffected

Product identifiers (CPE)cpe:2.3:a:mtrudel:bandit:*:*:*:*:*:*:*:*

mtrudel · EEF

bandit

1 range

Package identity

pkg:github/mtrudel/bandit

Identity supplied by EEF. Version matching requires compatible range evidence.

Compare with this publisher’s ranges. This does not inspect your installation.

affected

3ad49c80c268891e7cc412e69649115456638e59 → before 220b9dfd27f9a21305be2afc75cbe585ddc24e7a

git versions

unaffected

unknown

Other versions: unaffected

Product identifiers (CPE)cpe:2.3:a:mtrudel:bandit:*:*:*:*:*:*:*:*

Original source description

Improper Cleanup on Thrown Exception vulnerability in the HTTP/2 handler of mtrudel bandit allows an unauthenticated remote attacker to bypass per-connection resource limits via a single TCP write that carries several frames, one of which raises a stream error.

When a frame raises StreamError partway through a chunk, Bandit.HTTP2.Handler.handle_data/3 sends RST_STREAM and continues with the connection state from before the chunk, dropping the rest of it. Streams opened by earlier frames in the chunk keep running their Plug calls, but the stream counts, last_stream_id, the rapid-reset timestamps, the HPACK decoder state and the buffer roll back, so max_concurrent_streams, max_requests and the rapid-reset limiter never see those streams. A client that sends one HEADERS frame more than max_concurrent_streams in each write has the extra refused and the others forgotten: with a limit of 10, five such writes run 50 Plug calls at once.

This issue affects bandit: from 1.9.0 before 1.14.0.

Inside the record

Evidence available

Package identity
Version evidence
Remediation guidance
Weakness classification
Additional publishers

Describes the evidence in this view, not whether the product is safe.

Original records

CVE-2026-111103

View the latest unmodified CVE JSON from the official source. It may be newer than this imported page.

cve.new JSON →

Underlying weaknesses

The source’s classification of what caused the vulnerability.

CWE-460 ↗

CWE-460 Improper Cleanup on Thrown Exception

EEF

Related →

Environment requirements

These conditions apply together as specified by the publisher. A matching product name alone does not establish exposure.

EEF · platform conditions

All conditions must hold

Any condition may hold

Vulnerable product

cpe:2.3:a:mtrudel:bandit:*:*:*:*:*:*:*:*

From (inclusive): 1.9.0

Before: 1.14.0

Original applicability statements
[
  {
    "nodes": [
      {
        "cpeMatch": [
          {
            "criteria": "cpe:2.3:a:mtrudel:bandit:*:*:*:*:*:*:*:*",
            "versionEndExcluding": "1.14.0",
            "versionStartIncluding": "1.9.0",
            "vulnerable": true
          }
        ],
        "negate": false,
        "operator": "OR"
      }
    ],
    "operator": "AND"
  }
]
Contributing organizations · 2
EEF

Assigning organization

2026-10-26
CISA-ADP

Additional data publisher

2026-10-26

What changed

Follow changes
No substantive changes have been recorded here yet. History starts when cve.new observes a change after tracking is enabled; earlier edits are not reconstructed.

Large field values are marked as truncated previews. Original source snapshots remain retained.

References

5 sources