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.
16 rules matched. Showing 16 loaded rules.
Publish rule
CVE-2026-53873: Picklescan Incomplete Profile Blocklistcve-2026-53873-picklescan-incomplete-profile-blocklist

The `profile` module blocklist is incomplete. It fails to block the module-level `profile.run` and `profile.runctx` functions, allowing attackers to achieve arbitrary code execution via exec() when unpickled.

by Provallyupdated 2026-06-23Apache-2.0
8580 direct858 via packs
downloads
70quality
CVE-2026-47140: Node Module Denylist Bypasscve-2026-47140-node-module-denylist-bypass

Exact string matching against a denylist or allowlist of Node.js modules can be bypassed by using the `node:` URL scheme prefix or by requesting module subpaths (e.g., `module/subpath`). Ensure that module names are normalized by stripping the `node:` prefix and splitting on `/` to extract the core module name before checking the list.

by Provallyupdated 2026-06-12Apache-2.0
5130 direct513 via packs
downloads
78quality
CVE-2026-47140: Incomplete Node Module Denylistcve-2026-47140-incomplete-node-module-denylist

A denylist checking for dangerous Node.js modules is potentially incomplete. Node.js module resolution allows bypassing exact-match denylists using the 'node:' URL prefix or by resolving subpaths (e.g., 'inspector/promises'). Additionally, ensure 'process' and other host-exposing primitives are blocked.

by Provallyupdated 2026-06-23Apache-2.0
8570 direct857 via packs
downloads
77quality
CVE-2026-47139: Bypass Node Internal Modules Filtercve-2026-47139-bypass-node-internal-modules-filter

Filtering Node.js builtin modules by ignoring 'internal/' does not sufficiently block all internal modules. Undocumented underscored modules like `_http_client` and `_http_server` bypass this filter and expose low-level network primitives. To securely restrict builtins, ensure underscored modules are also excluded (e.g., `!s.startsWith('_')`).

by Provallyupdated 2026-06-12Apache-2.0
5130 direct513 via packs
downloads
77quality
CVE-2026-47135: Incomplete Symbol For Namespace Blockcve-2026-47135-incomplete-symbol-for-namespace-block

Overriding `Symbol.for` with exact string matches (e.g., `=== 'nodejs.util.inspect.custom'`) against Node.js internal cross-realm symbols is an incomplete mitigation. Unhandled `nodejs.` symbols (such as streams or promisify hooks) can bypass the sandbox. Instead, block or isolate the entire `nodejs.` namespace using a prefix match.

by Provallyupdated 2026-06-12Apache-2.0
4960 direct496 via packs
downloads
72quality
CVE-2026-43566: Openclaw Heartbeat Wake Pending Events Omittedcve-2026-43566-openclaw-heartbeat-wake-pending-events-omitted

Heartbeat owner-downgrade logic computes shouldInspectPendingEvents (or ForceSenderIsOwnerFalse) without considering wake-triggered runs or untrusted pending events. CVE-2026-43566: webhook 'hook:wake' system events were excluded from the inspection set, allowing untrusted webhook payloads to be drained while senderIsOwner remained true. The patched code mus

by Provallyupdated 2026-06-12Apache-2.0
1.3K0 direct1.3K via packs
downloads
76quality
CVE-2026-35583: Incomplete Path Traversal Denylistcve-2026-35583-incomplete-path-traversal-denylist

Detected an incomplete denylist for preventing path traversal. Validating input using string methods like `contains("..")` or `contains("/")` can be bypassed via URL encoding, double encoding, or Unicode normalization because the decoded literal characters are not matched. Instead, use a strict regular expression allowlist (e.g., `^[a-zA-Z0-9._-]+$`) to vali

by Provallyupdated 2026-06-23Apache-2.0
8540 direct854 via packs
downloads
73quality
CVE-2026-34415: Incomplete Php Extension Denylist Regex Php Glob Misusecve-2026-34415-incomplete-php-extension-denylist-regex-php-glob-misuse

The regex token `php*` is being used inside a denylist alternation, but in PCRE `*` is a quantifier on the preceding character, so `php*` matches 'ph', 'php', 'phpp', ... and does NOT match '.php4', '.php7', or '.phps'. This is an incomplete list of disallowed inputs (CWE-184): attackers can upload/rename files with PHP-executable extensions like .php4 that

by Provallyupdated 2026-06-12Apache-2.0
1.3K0 direct1.3K via packs
downloads
81quality
CVE-2026-31952: Incomplete Sql Keyword Blocklist Bypasscve-2026-31952-incomplete-sql-keyword-blocklist-bypass

Using `str_replace` or `str_ireplace` with an empty string to sanitize input based on a blocklist is unsafe. Attackers can bypass this by nesting blocklisted words (e.g., 'SELSELECTECT') or using mixed casing. Use a robust sanitization library or parameterized queries instead.

by Provallyupdated 2026-06-12Apache-2.0
1.3K0 direct1.3K via packs
downloads
73quality
CVE-2026-28291: Git Upload Pack Blocklist Bypasscve-2026-28291-git-upload-pack-blocklist-bypass

Validation of Git arguments using the regex `/^\s*-u\b/` is insufficient to prevent dangerous option injection. Git allows single-letter options to be grouped (e.g., `-vu`, `-4u`), which bypasses this regex check. Attackers could execute arbitrary code by passing a modified `-u` (upload-pack) option. Use a more robust check that accounts for Git's option gro

by Provallyupdated 2026-06-12Apache-2.0
1.3K0 direct1.3K via packs
downloads
68quality
CVE-2026-10617: Incomplete Privesc Regex Blocklistcve-2026-10617-incomplete-privesc-regex-blocklist

A regular expression blocklist explicitly blocks `sudo` but does not include `doas`. Hardcoded command blocklists are inherently incomplete and prone to bypasses (CWE-184). A missing check for `doas` can allow arbitrary command execution as root if the binary is present in the environment (e.g., `doas apk` or `doas sh`). Consider using an allow-list, robust

by Provallyupdated 2026-06-12Apache-2.0
1.4K0 direct1.4K via packs
downloads
70quality
CVE-2026-3960: Cve 2026 3960 Incomplete Jdbc Denylist Missing Postgresql Paramscve-2026-3960-cve-2026-3960-incomplete-jdbc-denylist-missing-postgresql-params

JDBC parameter denylist contains MySQL-specific entries such as "autoDeserialize" but is missing critical PostgreSQL JDBC driver parameters ("socketFactory", "socketFactoryArg"). An attacker can bypass this denylist by supplying a jdbc:postgresql: URL with socketFactory pointing to an arbitrary Java class (e.g., ClassPathXmlApplicationContext) to achieve una

by Provallyupdated 2026-06-12Apache-2.0
1.3K0 direct1.3K via packs
downloads
83quality
CVE-2025-71358: Incomplete Picklescan Unsafe Globalscve-2025-71358-incomplete-picklescan-unsafe-globals

Picklescan's `_unsafe_globals` blocklist is incomplete. Leaving certain attributes in `cProfile`, `profile`, and entirely omitting gadgets like `pkgutil.resolve_name` allows malicious pickle files to bypass malware detection and achieve arbitrary code execution if the analyzed files are later deserialized.

by Provallyupdated 2026-06-23Apache-2.0
8580 direct858 via packs
downloads
70quality
CVE-2025-71344: Picklescan Incomplete Denylistcve-2025-71344-picklescan-incomplete-denylist

Incomplete denylist for Python pickle deserialization in picklescan. Omitting wildcards for profiling modules can allow malicious RCE payloads to bypass the scanner.

by Provallyupdated 2026-06-23Apache-2.0
8580 direct858 via packs
downloads
70quality
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
All matching rules loaded.