CVE-2022-31100 json
Reachable Assertion in rulex
published 4y ago modified 28d ago also GHSA-8v9w-p43c-r885 , RUSTSEC-2022-0031 , EUVD-2022-6000
- cvss
- 6.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.9%
- EPSS 0.9% chance of exploitation in 30 days, percentile 59%
- public exploits
- 0
- none known
Summary
rulex is a new, portable, regular expression language. When parsing untrusted rulex expressions, rulex may crash, possibly enabling a Denial of Service attack. This happens when the expression contains a multi-byte UTF-8 code point in a string literal or after a backslash, because rulex tries to slice into the code point and panics as a result. This is a security concern for you, if your service parses untrusted rulex expressions (expressions provided by an untrusted user), and your service becomes unavailable when the thread running rulex panics. The crashes are fixed in version **0.4.3**. Affected users are advised to update to this version. The only known workaround for this issue is to assume that regular expression parsing will panic and to add logic to catch panics.
Patch / fix
Is CVE-2022-31100 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerCISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- last yr.
Exploit prediction
0.88% chance of exploitation in the next 30 days, higher than 59% of all scored CVEs (FIRST EPSS, 2026-11-09).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 6.5 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H |
| NVD | 3.1 | 6.5 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H |
| NVD | 2.0 | 4.0 | AV:N/AC:L/Au:S/C:N/I:N/A:P |
| GitHub | 3.1 | 6.5 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| crates.io | rulex | <0.4.3 >=0.0.0-0, <0.4.3 |
0.4.3 |
Affected products
- rulex-rs rulex
Classification
- Weakness
-
- CWE-617 Reachable Assertion
References
-
github.com
/rulex-rs/rulex/commit/fac6d58b25c6f9f8c0a6cdc4dec75b37b219f1d6
web, patch, third-party-advisory
-
github.com
/rulex-rs/rulex/security/advisories/GHSA-8v9w-p43c-r885
web, mitigation, third-party-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2022-31100
advisory
-
github.com
/rulex-rs/rulex
package
-
rustsec.org
/advisories/RUSTSEC-2022-0031.html
web, advisory
-
crates.io
/crates/rulex
package
Sources
- CVE List CVE-2022-31100
- GitHub Advisory GHSA-8v9w-p43c-r885
- NVD CVE-2022-31100
- OSV RUSTSEC-2022-0031
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.