Impact
sqlite3-ruby provides Ruby bindings for SQLite. In versions 2.9.4 and earlier, redefining a SQLite function with a different number of arguments frees the previously registered function handler while SQLite may still hold a reference, creating a use‑after‑free that can corrupt memory and typically results in a crash or unpredictable behavior. This weakness is classified as CWE-416 and CWE-825 and poses a denial of service risk.
Affected Systems
The flaw affects all installations of the sparklemotion sqlite3‑ruby gem at version 2.9.4 or older. The vulnerability was fixed in release 2.9.5.
Risk and Exploitability
The CVSS score is 2, indicating low severity. The EPSS score is less than 1% and the vulnerability is not listed in the CISA KEV catalog, so the likelihood of exploitation is very low. Based on the description, it is inferred that no publicly known exploits exist. The likely attack vector is local, requiring an adversary who can run arbitrary Ruby code in the affected application to trigger a redefinition that differs in arity and provoke an application crash.
OpenCVE Enrichment
Github GHSA