Caller-supplied mapping $OPT is mutated in place ($OPT[$K] = $OPT.get($K, $DEFAULT)) under a condition read from the same mapping. Dict arguments are aliased, so the caller's mapping is silently modified with these injected defaults. If the caller reuses the same mapping for a later call with stricter settings (e.g. verification re-enabled), the stale defaul
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
- 6965
- Downloads
- 12.9M
- Verified
- 6965
- Authors
- 2
The amount or currency of an existing order payment (the last payment in the target state, returned by getLastPayment()) is overwritten via setAmount() or setCurrencyCode() without checking whether that payment was already claimed by a payment gateway (a CAPTURE/AUTHORIZE payment request past the NEW/FAILED/CANCELLED states). If the order is recalculated aft
Norman user store Update() persists the client-controlled request body ($DATA) straight through to the backing store without stripping any keys from it, so the immutable identity fields of a user resource (client.UserFieldUsername and client.UserFieldPrincipalIDs) are written verbatim: a caller holding only the update verb on users.management.cattle.io can r
extract() with EXTR_OVERWRITE (or no flag, which defaults to EXTR_OVERWRITE) imports every key of the given array as a local variable and overwrites variables already defined in the enclosing scope, including function parameters. When the array's KEY SET is request-controlled (e.g. a wp_parse_args()-built array like $this->query_vars), an attacker can supply
$CONST is mutated in place through `.tap` without an intervening `.dup`/`.clone`. Upper-case Ruby constants are shared, process-global objects and are frequently frozen (e.g. OpenSSL::SSL::SSLContext::DEFAULT_PARAMS, which SSLContext#set_params consumes for every newly created TLS context). Assigning through `.tap`'s block parameter writes through to that sh
The pointer returned by `getenv()` refers directly to the process environment block. Modifying this memory invokes undefined behavior and can corrupt the environment or crash the program. Functions like `strtok`, `strtok_r`, and `strsep` modify the string in-place by inserting null terminators. Always copy the string (e.g., using `strdup()`) before parsing o