Explore

Rule Explorer

Search the public rule index by CVE, GHSA, CWE, language, framework, author, or rule slug. Filter by language, framework, severity, confidence, license, and validation status.

Public rules
2917
Downloads
3.6M
Verified
2917
Authors
2
Search the rule indexUse CVE, GHSA, CWE, language, framework, package, or rule slug.
26 rules matched. Showing 24 loaded rules.
Publish rule
CVE-2026-48038: Joi Recursive Validation Doscve-2026-48038-joi-recursive-validation-dos

Missing try/catch for RangeError during recursive Joi validation call. Maliciously crafted deeply nested schema references can cause stack overflow and crash the process, resulting in a Denial of Service.

by Provallyupdated 2026-06-23Apache-2.0
8600 direct860 via packs
downloads
74quality
CVE-2026-47306: Cpp Missing Cycle Detection Tree Resolutioncve-2026-47306-cpp-missing-cycle-detection-tree-resolution

A map lookup is used to resolve hierarchical node references, but there is no check for circular references. When parsing untrusted or malformed data, this can create cyclical structures that lead to infinite recursion and stack exhaustion during traversal. Implement a cycle detection mechanism (e.g., matching against a set of cyclic nodes) before resolving

by Provallyupdated 2026-06-12Apache-2.0
1.2K0 direct1.2K via packs
downloads
74quality
CVE-2026-47180: Unbounded Recursion In Parsercve-2026-47180-unbounded-recursion-in-parser

The `$FUNC` method appears to parse or decode structures recursively without tracking the recursion depth. Although it passes unmodified state securely (e.g. typical cycle detection via a seen set), an attacker could provide a long chain of valid forward links that bypasses cycle checks but causes uncontrolled recursion, leading to a stack exhaustion Denial

by Provallyupdated 2026-06-12Apache-2.0
1.3K0 direct1.3K via packs
downloads
70quality
CVE-2026-44777: Jq Missing Cycle Detection Module Recursioncve-2026-44777-jq-missing-cycle-detection-module-recursion

Module dependencies are evaluated before registering the current module in the state tracking. This allows cyclic imports to trigger uncontrolled recursion (CWE-674), leading to stack exhaustion and Denial of Service. Ensure the module load state is updated to reflect that it is 'loading' before calling `process_dependencies`.

by Provallyupdated 2026-06-12Apache-2.0
1.2K0 direct1.2K via packs
downloads
70quality
CVE-2026-44479: Unhandled Index Route Unconditional Continuecve-2026-44479-unhandled-index-route-unconditional-continue

An unconditional 'continue' follows a specific exclusion condition. For loop control flows where the excluded value is intended to fall through and process subsequent configurations (such as SSR handler assignments), an unconditional continue mistakenly skips the rest of the loop block. Ensure the continue is guarded conditionally or correctly isolated.

by Provallyupdated 2026-06-12Apache-2.0
1.2K0 direct1.2K via packs
downloads
69quality
CVE-2026-43896: Unbounded Recursive Mergecve-2026-43896-unbounded-recursive-merge

Unbounded recursion detected in a generic merge or recursive function. This can lead to stack exhaustion (CWE-674) if processing attacker-controlled nested structures. Pass a depth/level parameter and abort if it exceeds a maximal threshold.

by Provallyupdated 2026-06-12Apache-2.0
1.2K0 direct1.2K via packs
downloads
70quality
CVE-2026-41311: Uncontrolled Block Render Recursioncve-2026-41311-uncontrolled-block-render-recursion

A block render generator function calls the template renderer without a re-entrancy (cycle-detection) guard. When the same block tag is nested inside itself via layout inheritance, the stored render closure is retrieved from the register and re-invoked indefinitely, exhausting heap memory and crashing the process (CWE-674, CVE-2026-41311). Before calling the

by Provallyupdated 2026-06-12Apache-2.0
1.4K0 direct1.4K via packs
downloads
76quality
CVE-2026-40324: Hotchocolate Utf8graphqlparser Missing Recursion Depth Guardcve-2026-40324-hotchocolate-utf8graphqlparser-missing-recursion-depth-guard

Recursive descent parser entry-point method in Utf8GraphQLParser is missing the IncreaseDepth() / DecreaseDepth() recursion-depth guard. An attacker can submit a GraphQL document with deeply nested selection sets, list values, object values, or list/non-null type references that exhausts the managed stack and raises a StackOverflowException, which is uncatch

by Provallyupdated 2026-06-12Apache-2.0
1.3K0 direct1.3K via packs
downloads
80quality
CVE-2026-39865: Array Splice Missing Unconditional Return In Backward While Loopcve-2026-39865-array-splice-missing-unconditional-return-in-backward-while-loop

Array.splice() is called inside a backward-decrement while loop but the enclosing block only returns conditionally (inside a nested if) after removal. When the condition is false the loop continues iterating over the now-shorter array with stale index bounds, causing state corruption that can crash the process or corrupt shared state under concurrent access

by Provallyupdated 2026-06-12Apache-2.0
1.4K0 direct1.4K via packs
downloads
76quality
CVE-2026-33947: Unbounded Array Recursion Depthcve-2026-33947-unbounded-array-recursion-depth

A function operating on an array checks its type and base case (length == 0), but fails to enforce a maximum length limit or recursion depth limit. If this function is recursive, processing a deeply nested or excessively long array originating from untrusted input could lead to unbounded recursion, causing a stack overflow (DoS).

by Provallyupdated 2026-06-12Apache-2.0
1.2K0 direct1.2K via packs
downloads
74quality
CVE-2026-33908: Unbounded Xml Tree Recursioncve-2026-33908-unbounded-xml-tree-recursion

This tree destruction function recursively frees nodes without maintaining a depth counter. Deeply nested data structures can cause stack exhaustion leading to Denial of Service.

by Provallyupdated 2026-06-12Apache-2.0
1.3K0 direct1.3K via packs
downloads
70quality
CVE-2026-29649: Nemu Henvcfg Overbroad Menvcfg Wmaskcve-2026-29649-nemu-henvcfg-overbroad-menvcfg-wmask

The read value of CSR henvcfg is masked with the full MENVCFG_WMASK against menvcfg (e.g. `henvcfg_out &= menvcfg->val & MENVCFG_WMASK;`). Because MENVCFG_WMASK covers bits [7:4] (CBIE/CBCFE/CBZE) in addition to STCE/DTE/PBMTE, this overbroad mask incorrectly subordinates henvcfg's cache-block-management fields to menvcfg. Per the RISC-V H-extension specific

by Provallyupdated 2026-06-12Apache-2.0
1.3K0 direct1.3K via packs
downloads
78quality
CVE-2026-25727: Rfc Rfc2822 Rs Cwe 000 Cve 2026 25727cve-2026-25727-rfc-rfc2822-rs-cwe-000-cve-2026-25727

Uncontrolled mutual recursion (CWE-674) in standard parser combinators. The functions recursively call each other when parsing nested grammar elements without tracking recursion depth. An attacker can craft deeply nested inputs (such as repeating parenthesis) to exhaust the call stack, resulting in Denial of Service (DoS) via stack overflow.

by Provallyupdated 2026-06-12Apache-2.0
1.3K0 direct1.3K via packs
downloads
66quality
CVE-2026-0994: Recursion Depth Bypass Dynamic Dispatchcve-2026-0994-recursion-depth-bypass-dynamic-dispatch

Dynamically dispatching recursive parsing operations using `methodcaller` can bypass recursion depth limits tracked in centralized parsing methods. This can lead to uncontrolled recursion (DoS). Ensure that nested structures are routed through methods that actively enforce recursion depth limits.

by Provallyupdated 2026-06-12Apache-2.0
1.3K0 direct1.3K via packs
downloads
70quality
CVE-2025-66031: Uncontrolled Recursion Depth Limitcve-2025-66031-uncontrolled-recursion-depth-limit

Uncontrolled recursion detected. The recursive function takes a depth parameter but does not validate it against a maximum threshold. A deeply nested structure could trigger stack exhaustion and lead to a Denial of Service (DoS).

by Provallyupdated 2026-06-12Apache-2.0
1.3K0 direct1.3K via packs
downloads
70quality
CVE-2025-53012: Unbounded Cycle Detection Depthcve-2025-53012-unbounded-cycle-detection-depth

A cycle detection mechanism was found that throws or returns upon detecting a duplicate, but lacks a corresponding limit on the collection's size. When this collection represents traversal depth or inclusion history, lacking a size bound can lead to Stack Exhaustion (CWE-674) or Uncontrolled Resource Consumption (CWE-400) via deeply nested structures. Enforc

by Provallyupdated 2026-06-12Apache-2.0
1.3K0 direct1.3K via packs
downloads
74quality
CVE-2025-11362: Infinite Redirect Recursioncve-2025-11362-infinite-redirect-recursion

Missing depth limit in recursive HTTP redirect handling. Recursively following HTTP redirects without maintaining and checking a recursion depth limit allows an attacker to cause an infinite redirect loop (DoS). Add a depth counter parameter and reject if it exceeds a maximum threshold.

by Provallyupdated 2026-06-12Apache-2.0
1.4K0 direct1.4K via packs
downloads
78quality
CVE-2024-51745: Incomplete Windows Reserved Device Denylist Superscriptscve-2024-51745-incomplete-windows-reserved-device-denylist-superscripts

A Windows reserved-device-name denylist enumerates the ASCII variants COM1..COM9 and LPT1..LPT9 but does not include the ISO-8859-1 superscript variants COM¹, COM², COM³, LPT¹, LPT², LPT³ (U+00B9 / U+00B2 / U+00B3). Windows resolves these Unicode names to the same physical COM/LPT devices, and `to_uppercase()` / ASCII case folding does not normalize superscr

by Provallyupdated 2026-06-12Apache-2.0
1.3K0 direct1.3K via packs
downloads
80quality
CVE-2024-47053: Php Recursive Sanitization By Value Bypasscve-2024-47053-php-recursive-sanitization-by-value-bypass

A function accepting an array by reference recursively calls itself using a by-value copy of an element from a `foreach` loop. Modifications made by the recursive call overwrite the local copy rather than the original array, meaning sanitizations and validations are bypassed for nested items. To fix this, pass the explicit array index reference (e.g., `$ARR[

by Provallyupdated 2026-06-12Apache-2.0
1.3K0 direct1.3K via packs
downloads
77quality
CVE-2024-28244: Recursive Parser State Losscve-2024-28244-recursive-parser-state-loss

A recursive parser instantiation drops the parent parser state. By using `new $CLASS(...)` inside its own class methods instead of using an internal subparser method, the new parser starts with reset resource limits (like depth counters or macro expansion limits). This can allow attackers to bypass Denial of Service (DoS) protections like recursion depth or

by Provallyupdated 2026-06-12Apache-2.0
1.2K0 direct1.2K via packs
downloads
74quality
Other Ios Self Signed Sslgitlab-sast-rules-lgpl-oc-other-rule-ios-self-signed-ssl

App allows self signed or invalid SSL certificates. App is vulnerable to MITM attacks. If the app does not verify the authenticity of the server's SSL certificate, an attacker could impersonate the server and intercept sensitive data transmitted between the app and the server. To fix these security issues, you should ensure proper SSL certificate validation

GenericCWE-676
by GitLab Security Productsupdated 2026-06-03LGPL-3.0-only
1.3K0 direct1.3K via packs
downloads
78quality
Obsolete Usleepgitlab-sast-c-obsolete-rule-usleep

The `usleep` function has been deprecated, use `nanosleep` or `setitimer` instead. For more information please see: https://linux.die.net/man/3/setitimer

by GitLab Security Productsupdated 2026-06-03GPL-2.0-only
1.3K0 direct1.3K via packs
downloads
86quality
Obsolete Ulimitgitlab-sast-c-obsolete-rule-ulimit

The ulimit function is obsolete and no longer recommended. Use `getrlimit(2)`, `setrlimit`, or `sysconf` instead. For more information please see: https://linux.die.net/man/3/setrlimit

by GitLab Security Productsupdated 2026-06-03GPL-2.0-only
1.3K0 direct1.3K via packs
downloads
86quality
24 of 26 loaded