CyberSecBulletin

Uncontrolled Recursion

CWE-674

The product does not properly control the amount of recursion that takes place, consuming excessive resources, such as allocated memory or the program stack.

We track 233 vulnerabilities of this type. 100% are rated high or critical, and the average CVSS score is 7.7.

How this weakness is prevented

  • Implementation: Ensure that an end condition will be reached under all logic conditions. The end condition may include checking against the depth of recursion and exiting with an error if the recursion goes too deep. The complexity of the end condition contributes to the effectiveness of this action.

Latest Uncontrolled Recursion vulnerabilities

  • 7.5 High severity

    ion-c: Uncontrolled Recursion

    CVE-2026-84851Amazon

    An uncontrolled recursion issue exists in Amazon Ion-C versions before 1.1.6 that might allow a remote unauthenticated actor to craft Ion data that exhausts the native call stack and crashes the application using the library, resulting in a denial of service.

  • 7.5 High severity

    Llama.cpp: Uncontrolled Recursion

    CVE-2026-52132Ggml

    llama.cpp through commit 97f06e9, when started with the --reranking flag, allows remote attackers to cause a denial of service (std::bad_alloc and HTTP 500) via a negative top_n value in a POST request to /rerank.

  • 7.5 High severity

    Spring AI: Uncontrolled Recursion

    CVE-2026-47851Spring

    Analyzing a PDF with a deeply nested or cyclic table of contents can cause a StackOverflowError in the ingestion thread. Spring AI 2.0.0 Spring AI 1.1.0 - 1.1.8 Spring AI 1.0.0 - 1.0.9

  • 7.5 High severity

    mistune: Uncontrolled Recursion

    CVE-2026-76098Lepture

    Mistune is a Python Markdown parser with renderers and plugins. Versions 3.3.0 through 3.3.2 are vulnerable to DoS through deeply nested tokens. HTML rendering creates deeply nested emphasis tokens from consecutive asterisk characters, and recursive rendering

  • 7.5 High severity

    justhtml: Uncontrolled Recursion

    CVE-2026-9769EmilStenstrom

    justhtml through 1.9.1 (fixed in 1.10.0) is vulnerable to uncontrolled recursion leading to denial of service. During JustHTML() construction, TreeBuilder.finish() unconditionally calls _populate_selectedcontent(), which recursively traverses the DOM tree via

  • 7.5 High severity

    nltk: Uncontrolled Recursion

    CVE-2026-66393Nltk

    NLTK versions before 3.9.4 contain an unbounded recursion vulnerability in JSONTaggedDecoder.decode_obj() that allows attackers to cause denial of service by supplying deeply nested JSON structures. Attackers can craft JSON payloads exceeding the recursion lim

  • 7.5 High severity

    unleash: Uncontrolled Recursion

    CVE-2026-63462Unleash

    Unleash is an open-source feature management platform. Prior to 7.5.2, 7.6.5, and 8.0.2, the shared OpenAPI validation error path in src/lib/error/bad-data-error.ts passes a raw request value from lodash.get to JSON.stringify in genericErrorMessage and fromOpe

  • 7.1 High severity

    django-cms: Uncontrolled Recursion

    CVE-2026-54623Django-cms

    django CMS is an easy-to-use and developer-friendly enterprise content management system powered by Django. Prior to 5.0.8, the move_plugin endpoint in cms/admin/placeholderadmin.py accepts an attacker-controlled plugin_parent value without rejecting a plugin’

  • 8.2 High severity

    deepmerge-ts: Uncontrolled Recursion

    CVE-2026-40345RebeccaStevens

    deepmerge-ts is a typescript library providing functionality to deep merging of javascript objects. Prior to 8.0.0, the deepmerge, deepmergeCustom, deepmergeInto, and deepmergeIntoCustom APIs do not track visited objects or object pairs when recursively mergin

  • 8.7 High severity

    rabbitmq-java-client: Uncontrolled Recursion

    CVE-2026-69220Rabbitmq

    The RabbitMQ Java client library allows Java and JVM-based applications to connect to and interact with RabbitMQ nodes. Prior to 5.33.1, src/main/java/com/rabbitmq/client/impl/ValueReader.java permits ValueReader.readTable and ValueReader.readArray to call Val

  • 7.5 High severity

    scriban: Uncontrolled Recursion

    CVE-2026-74795Scriban

    Scriban before 6.6.0 contains an uncontrolled recursion vulnerability in its recursive-descent parser. The parser does not enforce a default expression depth limit (the ExpressionDepthLimit property in ParserOptions defaults to null/disabled), so an attacker w

  • 7.5 High severity

    scriban: Uncontrolled Recursion

    CVE-2026-74794Scriban

    Scriban before 6.6.0 contains an infinite recursion vulnerability in object rendering when the ObjectRecursionLimit property defaults to unlimited. Attackers can supply circular reference objects to the template context, exhausting stack space and triggering a

  • 7.5 High severity

    scriban: Uncontrolled Recursion

    CVE-2026-74792Scriban

    Scriban before 7.0.0 (affected versions <= 6.6.0) contains a stack overflow vulnerability in nested array initializer parsing. Deeply nested array initializers recurse through a path (ParseArrayInitializer → ParseExpression → ParseArrayInitializer) that is not

  • 7.5 High severity

    scriban: Uncontrolled Recursion

    CVE-2026-74787Scriban

    Scriban before 7.0.0 contains an uncontrolled recursion vulnerability in the object.to_json builtin function that lacks depth limits and circular reference detection. Attackers can craft templates with self-referencing objects to trigger unbounded recursion, c

  • 7.5 High severity

    scriban: Uncontrolled Recursion

    CVE-2026-74783Scriban

    Scriban versions 6.6.0 through 7.2.0 contain a non-enforcing ExpressionDepthLimit guard that fails to stop recursive descent parsing of deeply nested expressions. Attackers can supply templates with deeply nested parentheses, array initializers, object initial

  • 7.5 High severity

    node-tar: Uncontrolled Resource Consumption

    CVE-2026-73566Isaacs

    node-tar is a tar archive manipulation library for Node.js. Prior to 7.5.21, node-tar's filesFilter in src/list.ts uses the recursive mapHas helper to walk an archive entry path upward with path.dirname() and no segment cap when tar.t(...) or tar.x(...) receiv

  • 7.5 High severity

    HAPI FHIR is a complete implementation of the HL7 FHIR standard for healthcare…

    CVE-2026-62296Hapifhir

    HAPI FHIR is a complete implementation of the HL7 FHIR standard for healthcare interoperability in Java. Prior to 6.9.11, XhtmlParser.java imposes no maximum element nesting depth, so a deeply nested text.div narrative triggers unbounded recursion between pars

  • 7.5 High severity

    HAPI FHIR is a complete implementation of the HL7 FHIR standard for healthcare…

    CVE-2026-62295Hapifhir

    HAPI FHIR is a complete implementation of the HL7 FHIR standard for healthcare interoperability in Java. Prior to 6.9.11, the JSON utility parser in org.hl7.fhir.utilities.json.parser.JsonParser enforces no maximum nesting depth for arrays or objects. As a res

  • 9.1 Critical severity

    Apache Portable Runtime Utility: Uncontrolled Recursion

    CVE-2026-32327Apache

    A bug in APR-util version 1.6.3 (and earlier) allows a stack recursion attack against any library consumer which parses XML from untrusted sources and uses the apr_xml_quote_elem() function. Users are recommended to upgrade to version 1.6.4, which fixes this i

  • 7.5 High severity

    Enterprise Server: Uncontrolled Recursion

    CVE-2026-15996GitHub

    A denial of service vulnerability was identified in GitHub Enterprise Server that allowed an unauthenticated attacker to cause excessive CPU consumption and exhaust the pool of request-handling worker processes by sending a crafted form-encoded HTTP POST reque

  • 7.5 High severity

    Apache Lucy: Uncontrolled Recursion

    CVE-2026-61483ApacheEPSS 1.03%

    ** UNSUPPORTED WHEN ASSIGNED ** Uncontrolled Recursion vulnerability in Apache Lucy. This issue affects Apache Lucy: all versions. As this project is retired, we do not plan to release a version that fixes this issue. Users are recommended to find an alternati

  • 7.5 High severity

    Apache Qpid Broker-J: Uncontrolled Recursion

    CVE-2026-68073Apache

    A pre-authentication attacker could leverage type nesting to cause a StackOverflowError potentially leading to denial of service. This issue affects Apache Qpid Broker-J: through 10.0.1. Users are recommended to upgrade to version 10.1.0, which fixes the issue

  • 7.5 High severity

    Apache Qpid ProtonJ2: Uncontrolled Recursion

    CVE-2026-67590Apache

    A pre-authentication attacker could leverage type nesting to cause a StackOverflowError potentially leading to denial of service. This issue affects Apache Qpid ProtonJ2: through 1.1.0. Users are recommended to upgrade to version 1.2.0, which fixes the issue.

  • 7.5 High severity

    Apache Qpid Proton Dotnet: Uncontrolled Recursion

    CVE-2026-67552Apache

    A pre-authentication attacker could leverage type nesting to cause a StackOverflowError potentially leading to denial of service. This issue affects Apache Qpid Proton-Dotnet through 1.0.0. Users are recommended to upgrade to version 1.1.0, which fixes the iss

  • 7.5 High severity

    Apache Qpid Proton-J: Uncontrolled Recursion

    CVE-2026-66274Apache

    A pre-authentication attacker could leverage type nesting to cause a StackOverflowError potentially leading to denial of service. This issue affects Apache Qpid Proton-J: through 0.34.1. Users are recommended to upgrade to version 0.35.0, which fixes the issue

  • 7.5 High severity

    BC-JAVA: Uncontrolled Recursion

    CVE-2026-13506Legion of the Bouncy Castle

    In Bouncy Castle for Java before 1.85, Lazy ASN.1 sequence forcing resets nesting-depth guard. This issue also affects Bouncy Castle for Java LTS before 2.73.12, and Bouncy Castle for Java FIPS (BC-FJA) before bc-fips 1.0.2.7 (1.0.X series), 2.0.2 (2.0.X serie

  • 7.5 High severity

    BC-JAVA: Uncontrolled Recursion

    CVE-2026-59645Legion of the Bouncy Castle

    In Bouncy Castle for Java before 1.85, OER parser recurses without depth limit on self-referential IEEE 1609.2 schema. This issue also affects Bouncy Castle for Java LTS before 2.73.12, and Bouncy Castle for Java FIPS (BC-FJA) before bcutil-fips 2.0.7 (2.0.X s

  • 7.5 High severity

    axios: Uncontrolled Recursion

    CVE-2026-67321Axios

    axios versions 0.31.1 before 0.33.0 and 1.15.1 before 1.18.0 contain an incomplete depth-limit bypass in toFormData.js when serializing objects with top-level keys ending in '{}'. Attackers who control object keys and nested values passed to axios form or para

  • 7.5 High severity

    aws-smithy-json: Uncontrolled Recursion

    CVE-2026-18140AWS

    Uncontrolled recursion in the unknown-key skip path of the aws-smithy-json runtime crate before 0.62.7, which the smithy-rs code generator invokes from every generated struct deserializer, might allow remote unauthenticated users to cause a denial of service (

  • 7.5 High severity

    cJSON: Uncontrolled Recursion

    CVE-2026-67215DaveGamble

    cJSON through 1.7.19 is vulnerable to uncontrolled recursion leading to stack exhaustion when an untrusted RFC 6902 JSON Patch is applied via cJSONUtils_ApplyPatches() or cJSONUtils_ApplyPatchesCaseSensitive(). A patch containing add and copy operations grafts

  • 7.5 High severity

    Apache Traffic Server: Uncontrolled Recursion

    CVE-2026-58178Apache

    The Apache Traffic Server ESI plugin can recurse without bound and fetch attacker-controlled URLs. This issue affects Apache Traffic Server: from 8.0.0 through 8.1.11, from 9.0.0 through 9.2.14, from 10.0.0 through 10.1.3. Users are recommended to upgrade to v

  • 8.2 High severity

    Pivotick: Uncontrolled Resource Consumption

    CVE-2026-66920Pivotick

    Pivotick contains an uncontrolled-recursion vulnerability when processing caller-supplied graph and node data. The affected graph algorithms recursively traversed graph edges, while the JSON viewer recursively processed each level of a node’s data structure. A

  • 7.5 High severity

    OTP: Uncontrolled Recursion

    CVE-2026-58227Erlang

    The Erlang/OTP ssl application does not detect cycles when reconstructing an incomplete peer certificate chain during a TLS or DTLS handshake. In ssl_certificate:handle_incomplete_chain/5, the received chain is passed to ssl_certificate:build_certificate_chain

  • 7.0 High severity

    Linux: Uncontrolled Recursion

    CVE-2026-64219Linux

    In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: Validate payload length and link_index in dc_process_dmub_aux_transfer_async [Why&How] dc_process_dmub_aux_transfer_async() copies payload->length bytes into a 16-byte stack b

  • 7.5 High severity

    aws-sdk-rust: Uncontrolled Recursion

    CVE-2026-15957AWS

    Smithy-RS is a Rust code generation and runtime framework that generates HTTP clients and servers from Smithy interface definitions, powering the AWS SDK for Rust and custom service implementations. Uncontrolled recursion in the JSON, CBOR, and XML deserialize

  • 7.5 High severity

    Net::DNS: Uncontrolled Recursion

    CVE-2026-64194Nlnetlabs

    Net::DNS versions through 1.55 for Perl allow Denial of Service via deep DNS compression pointer chains. Net::DNS::DomainName::decode follows RFC 1035 compression pointers by recursing into itself with no depth limit. It is possible to construct a name which s

  • 7.5 High severity

    surrealdb: Uncontrolled Recursion

    CVE-2026-63760Surrealdb

    SurrealDB before 3.1.0 fails to enforce the configured recursion depth limit in the value and JSON parser when processing nested braces, brackets, or parentheses. Unauthenticated attackers can send deeply nested JSON payloads to the WebSocket /rpc endpoint to

  • 7.5 High severity

    Linux: Uncontrolled Recursion

    CVE-2026-53395Linux

    In the Linux kernel, the following vulnerability has been resolved: nfsd: fix dead ACL conflict guard in nfsd4_create nfsd4_create() steals create->cr_dpacl/cr_pacl into the local nfsd_attrs via the designated initializer, then immediately sets the source poin

  • 7.5 High severity

    symfony: Uncontrolled Recursion

    CVE-2026-45133Symfony

    Symfony is a PHP framework for web and console applications and a set of reusable PHP components. Prior to 5.4.52, 6.4.40, 7.4.12, and 8.0.12, when the parser is exposed to attacker-controlled input, deeply nested mappings or sequences cause both the block-lev

  • 7.5 High severity

    Apache IoTDB: Uncontrolled Resource Consumption

    CVE-2026-40007Apache

    Uncontrolled Recursion, Uncontrolled Resource Consumption vulnerability in Apache IoTDB. When pipe_air_gap_receiver_enabled=true, the IoTDB AirGap receiver's readLength method calls itself recursively each time it recognises the E-language prefix in socket dat