p PatchFirst

CVE-2026-7790

CVE-2026-7790 · Unbounded chunk-size hex digits in cowlib cause quadratic CPU and memory DoS

Esta página presenta datos de fuentes públicas de vulnerabilidades. Consulta el aviso original antes de actualizar.

Uncontrolled Resource Consumption vulnerability in ninenines cowlib (cow_http_te module) allows Excessive Allocation. The chunked transfer-encoding parser in cow_http_te accepts an unbounded number of hex digits in the chunk-size field. Each digit causes a bignum multiplication (Len * 16 + digit), so parsing N hex digits requires O(N²) CPU work and O(N) memory. Additionally, when input is drip-fed, the parser discards the accumulated length on each partial read and restarts from zero on resumption, raising the cost to O(N³). An unauthenticated remote attacker can exploit this by sending an HTTP/1.1 request with Transfer-Encoding: chunked and a very long chunk-size hex string to cause denial of service through CPU exhaustion and memory amplification. This vulnerability is associated with program file src/cow_http_te.erl and program routines cow_http_te:stream_chunked/2, cow_http_te:chunked_len/4. This issue affects cowlib: from 0.6.0 before 2.16.1.

CVSS 8.7 · Alta · EPSS 0,4% · Corrección disponible

Publicación
Actualización

Pila tecnológica: system

Productos y versiones afectados

  • cowlib

    Versiones
    • ≥ 0.6.0, < 2.16.1: Afectada (semver)

    Actualiza a 2.16.1

  • cowlib

    Versiones
    • ≥ 8c0e428b012c59f553a264f285ed89d36f791e3e, < a4b8039ce8c93ab00867ef6b7e888822c09f4369: Afectada (git)

    Sin corrección publicada

  • erlang-cowlib Debian:12

    Versiones
    • 1.3.0-3
    • 2.17.1-1
    • 2.17.1-2
    • 2.18.0-1
    • 2.19.0-1
    • 2.20.0-1
    • 2.21.0-1
    Intervalos de versiones afectados
    • ECOSYSTEM: (−∞, +∞)

    Sin corrección publicada

  • erlang-cowlib Debian:13

    Versiones
    • 1.3.0-3
    • 2.17.1-1
    • 2.17.1-2
    • 2.18.0-1
    • 2.19.0-1
    • 2.20.0-1
    • 2.21.0-1
    Intervalos de versiones afectados
    • ECOSYSTEM: (−∞, +∞)

    Sin corrección publicada

  • erlang-cowlib Debian:14

    Versiones
    • 1.3.0-3
    Intervalos de versiones afectados
    • ECOSYSTEM: < 2.17.1-1

    Actualiza a 2.17.1-1

  • erlang-cowlib Ubuntu:16.04:LTS

    Versiones
    • 1.3.0-1
    Intervalos de versiones afectados
    • ECOSYSTEM: (−∞, +∞)

    Sin corrección publicada

  • erlang-cowlib Ubuntu:18.04:LTS

    Versiones
    • 1.3.0-2
    Intervalos de versiones afectados
    • ECOSYSTEM: (−∞, +∞)

    Sin corrección publicada

  • erlang-cowlib Ubuntu:20.04:LTS

    Versiones
    • 1.3.0-3
    Intervalos de versiones afectados
    • ECOSYSTEM: (−∞, +∞)

    Sin corrección publicada

  • erlang-cowlib Ubuntu:22.04:LTS

    Versiones
    • 1.3.0-3
    Intervalos de versiones afectados
    • ECOSYSTEM: (−∞, +∞)

    Sin corrección publicada

  • erlang-cowlib Ubuntu:24.04:LTS

    Versiones
    • 1.3.0-3
    Intervalos de versiones afectados
    • ECOSYSTEM: (−∞, +∞)

    Sin corrección publicada

  • erlang-cowlib Ubuntu:25.10

    Versiones
    • 1.3.0-3
    Intervalos de versiones afectados
    • ECOSYSTEM: (−∞, +∞)

    Sin corrección publicada

  • erlang-cowlib Ubuntu:26.10

    Versiones
    • 1.3.0-3build1
    • 2.19.0-1
    Intervalos de versiones afectados
    • ECOSYSTEM: (−∞, +∞)

    Sin corrección publicada

  • erlang-cowlib Ubuntu:26.04:LTS

    Versiones
    • 1.3.0-3
    • 1.3.0-3build1
    Intervalos de versiones afectados
    • ECOSYSTEM: (−∞, +∞)

    Sin corrección publicada

Fuentes originales

Comprueba tu servidor →