CVE-2022-24713: Regular expression denial of service in Rust's regex crate

Published Mar 8, 2022
·
Updated

regex is an implementation of regular expressions for the Rust language. The regex crate features built-in mitigations to prevent denial of service attacks caused by untrusted regexes, or untrusted input matched by trusted regexes. Those (tunable) mitigations already provide sane defaults to prevent attacks. This guarantee is documented and it's considered part of the crate's API. Unfortunately a bug was discovered in the mitigations designed to prevent untrusted regexes to take an arbitrary amount of time during parsing, and it's possible to craft regexes that bypass such mitigations. This makes it possible to perform denial of service attacks by sending specially crafted regexes to services accepting user-controlled, untrusted regexes. All versions of the regex crate before or equal to 1.5.4 are affected by this issue. The fix is include starting from regex 1.5.5. All users accepting user-controlled regexes are recommended to upgrade immediately to the latest version of the regex crate. Unfortunately there is no fixed set of problematic regexes, as there are practically infinite regexes that could be crafted to exploit this vulnerability. Because of this, it us not recommend to deny known problematic regexes.

Other sources

Regular expression denial of service in Rust's regex crate

Microsoft

The rust regex crate did not properly prevent crafted regular expressions from taking an arbitrary amount of time during parsing. If an attacker was able to supply input to this crate, they could have caused a denial of service in the browser.

Affected Software

21 affected componentsFixes available
debian/firefox
118.0.2-1
debian/firefox-esr
91.12.0esr-1~deb10u1115.3.1esr-1~deb10u1102.15.0esr-1~deb11u1115.3.1esr-1~deb11u1102.15.1esr-1~deb12u1115.3.0esr-1~deb12u1115.3.0esr-1
debian/rust-regex<=1.1.0-1, <=1.3.7-1
1.7.1-11.7.3-11.9.6-5
debian/thunderbird
1:91.12.0-1~deb10u11:115.3.1-1~deb10u11:102.13.1-1~deb11u11:115.3.1-1~deb11u11:102.15.1-1~deb12u11:115.3.1-1~deb12u11:115.3.1-1
Mozilla Firefox ESR<91.8
91.8
Mozilla Thunderbird<91.8
91.8
Mozilla Firefox<99
99
rust-lang Regex Rust<1.5.5
Fedoraproject Fedora=34
Fedoraproject Fedora=35
Fedoraproject Fedora=36
Debian Debian Linux=9.0
Debian Debian Linux=10.0
Debian Debian Linux=11.0
Microsoft azl3 rust 1.75.0-14
Microsoft azl3 rpm-ostree 2022.1-7<2024.4-1
2024.4-1
Microsoft azl3 rpm-ostree 2024.4-1<2024.4-1
2024.4-1
Microsoft azl3 librsvg2 2.58.1-1<2.58.1-1
2.58.1-1
Microsoft azl3 rust regex-1.8.4<regex-1.8.4
regex-1.8.4
Microsoft azl3 librsvg2 2.50.3-4<2.58.1-1
2.58.1-1
Microsoft azl3 rust 1.86.0-1<regex-1.8.4
regex-1.8.4

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade debian/firefox to a version that resolves this vulnerability.

    Fixed in 118.0.2-1
  2. Upgrade

    Upgrade debian/firefox-esr to a version that resolves this vulnerability.

    Fixed in 91.12.0esr-1~deb10u1Fixed in 115.3.1esr-1~deb10u1Fixed in 102.15.0esr-1~deb11u1Fixed in 115.3.1esr-1~deb11u1Fixed in 102.15.1esr-1~deb12u1Fixed in 115.3.0esr-1~deb12u1Fixed in 115.3.0esr-1
  3. Upgrade

    Upgrade debian/rust-regex to a version that resolves this vulnerability.

    Fixed in 1.7.1-1Fixed in 1.7.3-1Fixed in 1.9.6-5
  4. Upgrade

    Upgrade debian/thunderbird to a version that resolves this vulnerability.

    Fixed in 1:91.12.0-1~deb10u1Fixed in 1:115.3.1-1~deb10u1Fixed in 1:102.13.1-1~deb11u1Fixed in 1:115.3.1-1~deb11u1Fixed in 1:102.15.1-1~deb12u1Fixed in 1:115.3.1-1~deb12u1Fixed in 1:115.3.1-1
  5. Upgrade

    Upgrade Firefox ESR to a version that resolves this vulnerability.

    Fixed in 91.8
  6. Upgrade

    Upgrade Thunderbird to a version that resolves this vulnerability.

    Fixed in 91.8
  7. Upgrade

    Upgrade Firefox to a version that resolves this vulnerability.

    Fixed in 99
  8. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 2024.4-1
  9. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 2.58.1-1
  10. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in regex-1.8.4
  11. Upgrade

    Upgrade regex crate to a version that resolves this vulnerability.

    Fixed in 1.5.5
  12. Compensating control

    Do not rely on denying a fixed set of 'known problematic regexes'—the material states there is no fixed set of problematic regexes because it is practically infinite.

Event History

Mar 8, 2022
CVE Published
via MITRE·07:00 PM
Data Sourced
via MITRE·07:00 PM
DescriptionSeverityWeakness
Jun 30, 2024
Data Sourced
via Microsoft·02:00 PM
DescriptionSeverityWeakness
Data Sourced
via Microsoft·02:00 PM
Affected Software
Updated
via Microsoft·02:00 PM
Affected Software
Updated
via Microsoft·02:00 PM
DescriptionSeverity

Parent advisories

This vulnerability appears in the following advisories.

Frequently Asked Questions

1

What is the vulnerability ID?

CVE-2022-24713

2

What is the severity of CVE-2022-24713?

The severity of CVE-2022-24713 is high with a severity value of 7.5.

3

Which software products are affected by CVE-2022-24713?

Mozilla Firefox ESR, Mozilla Firefox, Debian Firefox, Debian Firefox ESR, Rust-regex, and Thunderbird are affected by CVE-2022-24713.

4

How can I fix CVE-2022-24713?

To fix CVE-2022-24713, update to the recommended versions: Mozilla Firefox ESR 91.8, Mozilla Firefox 99, Debian Firefox 118.0.2-1, Debian Firefox ESR 91.12.0esr-1~deb10u1 or 91.12.0-1~deb10u1, Rust-regex 1.7.1-1, and Thunderbird 91.8.

5

Are there any references or additional information about CVE-2022-24713?

Yes, you can find more information about CVE-2022-24713 in the references: [Bugzilla](https://bugzilla.mozilla.org/show_bug.cgi?id=1758509), [Mozilla Security Advisory](https://www.mozilla.org/en-US/security/advisories/mfsa2022-14/), and [GitHub commit](https://github.com/rust-lang/regex/commit/ae70b41d4f46641dbc45c7a4f87954aea356283e).

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203