NetSight
medium6.5

CVE-2022-31100

Reachable Assertion in rulex

Impact

### Impact 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. ### Patches The crashes are fixed in version **0.4.3**. Affected users are advised to update to this version. ### Workarounds You can use `catch_unwind` to recover from panics. ### For more information If you have any questions or comments about this advisory: * Open an issue in [rulex](https://github.com/rulex-rs/rulex/issues) * Email me at [ludwig.stecher@gmx.de](mailto:ludwig.stecher@gmx.de) ### Credits Credit for finding these bugs goes to - [cargo fuzz](https://github.com/rust-fuzz/cargo-fuzz) and [afl.rs](https://github.com/rust-fuzz/afl.rs) - [evanrichter](https://github.com/evanrichter) - [ForAllSecure Mayhem](https://forallsecure.com/)

Affected packages

EcosystemPackageAffectedFixed in
rustrulex< 0.4.30.4.3

Affected products

VendorProductAffected versions
Pomsky-LangPomsky
before 0.4.3

Weakness classification

References