Summary
Loofah >= 2.2.0, < 2.19.1
uses recursion for sanitizing CDATA
sections, making it susceptible to stack exhaustion and raising a SystemStackError
exception. This may lead to a denial of service through CPU resource consumption.
Mitigation
Upgrade to Loofah >= 2.19.1
.
Users who are unable to upgrade may be able to mitigate this vulnerability by limiting the length of the strings that are sanitized.
Severity
The Loofah maintainers have evaluated this as High Severity 7.5 (CVSS3.1).
References
References
- https://github.com/flavorjones/loofah/security/advisories/GHSA-3x8r-x6xp-q4vm
- https://github.com/flavorjones/loofah/commit/86f7f6364491b0099d215db858ecdc0c89ded040
- https://github.com/rubysec/ruby-advisory-db/blob/master/gems/loofah/CVE-2022-23516.yml
- https://nvd.nist.gov/vuln/detail/CVE-2022-23516
- https://github.com/advisories/GHSA-3x8r-x6xp-q4vm