Skip to content
Heist/ feed
Medium

Mint HTTP/2 client buffers oversized frames up to 16 MiB before enforcing max_frame_size

Type: advisorySource: Official CVE List1 source record

Allocation of Resources Without Limits or Throttling vulnerability in elixir-mint mint allows a malicious HTTP/2 server to make the client hold up to about 16 MiB per connection in frames it should reject, consuming client memory. Mint.HTTP2.Frame.decode_next/2 in lib/mint/http2/frame.ex compares a frame with the client's max_frame_size (16,384 bytes by default) only once the whole declared payload has arrived. Until then it returns :more, and Mint.HTTP2 keeps every received byte in the connection buffer. A server can declare a frame length of up to 16,777,215 bytes and withhold the last byte, keeping roughly 1,024 times the advertised limit buffered for as long as the connection stays open. The server has to send every byte the client buffers, so there is no amplification, and the buffer stops at the 24-bit frame length limit. This issue affects mint: from 0.1.0 before 1.10.2.

Announced Group revision 1
Original source ↗

CVE-2026-92103

Primary source · Revision 1

Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.

Security context

Source reference: cve:CVE-2026-92103

mint

Source reference: /containers/cna/affected/0/product

Affected versions
Not stated in this record
Fixed versions
Not stated in this record
Prerequisites
Not stated in this record

mint

Source reference: /containers/cna/affected/1/product

Affected versions
Not stated in this record
Fixed versions
Not stated in this record
Prerequisites
Not stated in this record

Structured affected-version data

Original package identities and version rules from this source.

[
  {
    "cpes": [
      "cpe:2.3:a:elixir-mint:mint:*:*:*:*:*:*:*:*"
    ],
    "repo": "https://github.com/elixir-mint/mint",
    "vendor": "elixir-mint",
    "modules": [
      "'Elixir.Mint.HTTP2.Frame'",
      "'Elixir.Mint.HTTP2'"
    ],
    "product": "mint",
    "versions": [
      {
        "status": "affected",
        "version": "0.1.0",
        "lessThan": "1.10.2",
        "versionType": "semver"
      }
    ],
    "packageURL": "pkg:hex/mint",
    "packageName": "mint",
    "programFiles": [
      "lib/mint/http2/frame.ex",
      "lib/mint/http2.ex"
    ],
    "collectionURL": "https://repo.hex.pm",
    "defaultStatus": "unaffected",
    "programRoutines": [
      {
        "name": "'Elixir.Mint.HTTP2.Frame':decode_next/2"
      },
      {
        "name": "'Elixir.Mint.HTTP2':stream/2"
      },
      {
        "name": "'Elixir.Mint.HTTP2':recv/3"
      },
      {
        "name": "'Elixir.Mint.HTTP2':handle_new_data/3"
      }
    ]
  },
  {
    "cpes": [
      "cpe:2.3:a:elixir-mint:mint:*:*:*:*:*:*:*:*"
    ],
    "repo": "https://github.com/elixir-mint/mint",
    "vendor": "elixir-mint",
    "modules": [
      "'Elixir.Mint.HTTP2.Frame'",
      "'Elixir.Mint.HTTP2'"
    ],
    "product": "mint",
    "versions": [
      {
        "status": "affected",
        "changes": [
          {
            "at": "20252ca85065f4d1092aed9ee4ed21841a507dfe",
            "status": "unaffected"
          },
          {
            "at": "44d7ce4755d0444ee415cbcca7ce4942382da4dd",
            "status": "unaffected"
          }
        ],
        "version": "596ca4304504be68939c4929e0831557097962b8",
        "lessThan": "*",
        "versionType": "git"
      }
    ],
    "packageURL": "pkg:github/elixir-mint/mint",
    "packageName": "elixir-mint/mint",
    "programFiles": [
      "lib/mint/http2/frame.ex",
      "lib/mint/http2.ex"
    ],
    "collectionURL": "https://github.com",
    "defaultStatus": "unaffected",
    "programRoutines": [
      {
        "name": "'Elixir.Mint.HTTP2.Frame':decode_next/2"
      },
      {
        "name": "'Elixir.Mint.HTTP2':stream/2"
      },
      {
        "name": "'Elixir.Mint.HTTP2':recv/3"
      },
      {
        "name": "'Elixir.Mint.HTTP2':handle_new_data/3"
      }
    ]
  }
]
Related CVEs
CVE-2026-92103

Source reference: /cveMetadata/cveId

Publisher severity

medium

Source reference: /containers/cna/metrics

Event
#4466 · Revision 1
Added to Heist Feed
Publisher date
Read the original announcement