First published: Sat Jan 28 2023(Updated: )
Discourse is an open-source discussion platform. Prior to version 3.0.1 on the `stable` branch and version 3.1.0.beta2 on the `beta` and `tests-passed` branches, a malicious user can cause a regular expression denial of service using a carefully crafted user agent. This issue is patched in version 3.0.1 on the `stable` branch and version 3.1.0.beta2 on the `beta` and `tests-passed` branches. There are no known workarounds.
Credit: security-advisories@github.com
Affected Software | Affected Version | How to fix |
---|---|---|
Discourse | <3.0.1 | |
Discourse | =1.1.0-beta1 | |
Discourse | =1.1.0-beta2 | |
Discourse | =1.1.0-beta3 | |
Discourse | =1.1.0-beta4 | |
Discourse | =1.1.0-beta5 | |
Discourse | =1.1.0-beta6 | |
Discourse | =1.1.0-beta6b | |
Discourse | =1.1.0-beta7 | |
Discourse | =1.1.0-beta8 | |
Discourse | =1.2.0-beta1 | |
Discourse | =1.2.0-beta2 | |
Discourse | =1.2.0-beta3 | |
Discourse | =1.2.0-beta4 | |
Discourse | =1.2.0-beta5 | |
Discourse | =1.2.0-beta6 | |
Discourse | =1.2.0-beta7 | |
Discourse | =1.2.0-beta8 | |
Discourse | =1.2.0-beta9 | |
Discourse | =1.3.0-beta1 | |
Discourse | =1.3.0-beta10 | |
Discourse | =1.3.0-beta11 | |
Discourse | =1.3.0-beta2 | |
Discourse | =1.3.0-beta3 | |
Discourse | =1.3.0-beta4 | |
Discourse | =1.3.0-beta5 | |
Discourse | =1.3.0-beta6 | |
Discourse | =1.3.0-beta7 | |
Discourse | =1.3.0-beta8 | |
Discourse | =1.3.0-beta9 | |
Discourse | =1.4.0-beta1 | |
Discourse | =1.4.0-beta10 | |
Discourse | =1.4.0-beta11 | |
Discourse | =1.4.0-beta12 | |
Discourse | =1.4.0-beta2 | |
Discourse | =1.4.0-beta3 | |
Discourse | =1.4.0-beta4 | |
Discourse | =1.4.0-beta5 | |
Discourse | =1.4.0-beta6 | |
Discourse | =1.4.0-beta7 | |
Discourse | =1.4.0-beta8 | |
Discourse | =1.4.0-beta9 | |
Discourse | =1.5.0-beta1 | |
Discourse | =1.5.0-beta10 | |
Discourse | =1.5.0-beta11 | |
Discourse | =1.5.0-beta12 | |
Discourse | =1.5.0-beta13 | |
Discourse | =1.5.0-beta13b | |
Discourse | =1.5.0-beta14 | |
Discourse | =1.5.0-beta2 | |
Discourse | =1.5.0-beta3 | |
Discourse | =1.5.0-beta4 | |
Discourse | =1.5.0-beta5 | |
Discourse | =1.5.0-beta6 | |
Discourse | =1.5.0-beta7 | |
Discourse | =1.5.0-beta8 | |
Discourse | =1.5.0-beta9 | |
Discourse | =1.6.0-beta1 | |
Discourse | =1.6.0-beta10 | |
Discourse | =1.6.0-beta11 | |
Discourse | =1.6.0-beta12 | |
Discourse | =1.6.0-beta2 | |
Discourse | =1.6.0-beta3 | |
Discourse | =1.6.0-beta4 | |
Discourse | =1.6.0-beta5 | |
Discourse | =1.6.0-beta6 | |
Discourse | =1.6.0-beta7 | |
Discourse | =1.6.0-beta8 | |
Discourse | =1.6.0-beta9 | |
Discourse | =1.7.0-beta1 | |
Discourse | =1.7.0-beta10 | |
Discourse | =1.7.0-beta11 | |
Discourse | =1.7.0-beta2 | |
Discourse | =1.7.0-beta3 | |
Discourse | =1.7.0-beta4 | |
Discourse | =1.7.0-beta5 | |
Discourse | =1.7.0-beta6 | |
Discourse | =1.7.0-beta7 | |
Discourse | =1.7.0-beta8 | |
Discourse | =1.7.0-beta9 | |
Discourse | =1.8.0-beta1 | |
Discourse | =1.8.0-beta10 | |
Discourse | =1.8.0-beta11 | |
Discourse | =1.8.0-beta12 | |
Discourse | =1.8.0-beta13 | |
Discourse | =1.8.0-beta2 | |
Discourse | =1.8.0-beta3 | |
Discourse | =1.8.0-beta4 | |
Discourse | =1.8.0-beta5 | |
Discourse | =1.8.0-beta6 | |
Discourse | =1.8.0-beta7 | |
Discourse | =1.8.0-beta8 | |
Discourse | =1.8.0-beta9 | |
Discourse | =1.9.0-beta1 | |
Discourse | =1.9.0-beta10 | |
Discourse | =1.9.0-beta11 | |
Discourse | =1.9.0-beta12 | |
Discourse | =1.9.0-beta13 | |
Discourse | =1.9.0-beta14 | |
Discourse | =1.9.0-beta15 | |
Discourse | =1.9.0-beta16 | |
Discourse | =1.9.0-beta17 | |
Discourse | =1.9.0-beta2 | |
Discourse | =1.9.0-beta3 | |
Discourse | =1.9.0-beta4 | |
Discourse | =1.9.0-beta5 | |
Discourse | =1.9.0-beta6 | |
Discourse | =1.9.0-beta7 | |
Discourse | =1.9.0-beta8 | |
Discourse | =1.9.0-beta9 | |
Discourse | =2.0.0-beta1 | |
Discourse | =2.0.0-beta10 | |
Discourse | =2.0.0-beta2 | |
Discourse | =2.0.0-beta3 | |
Discourse | =2.0.0-beta4 | |
Discourse | =2.0.0-beta5 | |
Discourse | =2.0.0-beta6 | |
Discourse | =2.0.0-beta7 | |
Discourse | =2.0.0-beta8 | |
Discourse | =2.0.0-beta9 | |
Discourse | =2.1.0-beta1 | |
Discourse | =2.1.0-beta2 | |
Discourse | =2.1.0-beta3 | |
Discourse | =2.1.0-beta4 | |
Discourse | =2.1.0-beta5 | |
Discourse | =2.1.0-beta6 | |
Discourse | =2.2.0-beta1 | |
Discourse | =2.2.0-beta10 | |
Discourse | =2.2.0-beta2 | |
Discourse | =2.2.0-beta3 | |
Discourse | =2.2.0-beta4 | |
Discourse | =2.2.0-beta5 | |
Discourse | =2.2.0-beta6 | |
Discourse | =2.2.0-beta7 | |
Discourse | =2.2.0-beta8 | |
Discourse | =2.2.0-beta9 | |
Discourse | =2.3.0-beta1 | |
Discourse | =2.3.0-beta10 | |
Discourse | =2.3.0-beta11 | |
Discourse | =2.3.0-beta2 | |
Discourse | =2.3.0-beta3 | |
Discourse | =2.3.0-beta4 | |
Discourse | =2.3.0-beta5 | |
Discourse | =2.3.0-beta6 | |
Discourse | =2.3.0-beta7 | |
Discourse | =2.3.0-beta8 | |
Discourse | =2.3.0-beta9 | |
Discourse | =2.4.0-beta1 | |
Discourse | =2.4.0-beta10 | |
Discourse | =2.4.0-beta11 | |
Discourse | =2.4.0-beta2 | |
Discourse | =2.4.0-beta3 | |
Discourse | =2.4.0-beta4 | |
Discourse | =2.4.0-beta5 | |
Discourse | =2.4.0-beta6 | |
Discourse | =2.4.0-beta7 | |
Discourse | =2.4.0-beta8 | |
Discourse | =2.4.0-beta9 | |
Discourse | =2.5.0-beta1 | |
Discourse | =2.5.0-beta2 | |
Discourse | =2.5.0-beta3 | |
Discourse | =2.5.0-beta4 | |
Discourse | =2.5.0-beta5 | |
Discourse | =2.5.0-beta6 | |
Discourse | =2.5.0-beta7 | |
Discourse | =2.6.0-beta1 | |
Discourse | =2.6.0-beta2 | |
Discourse | =2.6.0-beta3 | |
Discourse | =2.6.0-beta4 | |
Discourse | =2.6.0-beta5 | |
Discourse | =2.6.0-beta6 | |
Discourse | =2.7.0-beta1 | |
Discourse | =2.7.0-beta2 | |
Discourse | =2.7.0-beta3 | |
Discourse | =2.7.0-beta4 | |
Discourse | =2.7.0-beta5 | |
Discourse | =2.7.0-beta6 | |
Discourse | =2.7.0-beta7 | |
Discourse | =2.7.0-beta8 | |
Discourse | =2.7.0-beta9 | |
Discourse | =2.8.0-beta1 | |
Discourse | =2.8.0-beta10 | |
Discourse | =2.8.0-beta11 | |
Discourse | =2.8.0-beta2 | |
Discourse | =2.8.0-beta3 | |
Discourse | =2.8.0-beta4 | |
Discourse | =2.8.0-beta5 | |
Discourse | =2.8.0-beta6 | |
Discourse | =2.8.0-beta7 | |
Discourse | =2.8.0-beta8 | |
Discourse | =2.8.0-beta9 | |
Discourse | =2.9.0-beta1 | |
Discourse | =2.9.0-beta10 | |
Discourse | =2.9.0-beta11 | |
Discourse | =2.9.0-beta12 | |
Discourse | =2.9.0-beta13 | |
Discourse | =2.9.0-beta14 | |
Discourse | =2.9.0-beta2 | |
Discourse | =2.9.0-beta3 | |
Discourse | =2.9.0-beta4 | |
Discourse | =2.9.0-beta5 | |
Discourse | =2.9.0-beta6 | |
Discourse | =2.9.0-beta7 | |
Discourse | =2.9.0-beta8 | |
Discourse | =2.9.0-beta9 | |
Discourse | =3.0.0-beta15 | |
Discourse | =3.0.0-beta16 | |
Discourse | =3.1.0-beta1 |
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.
CVE-2023-23621 has a critical severity rating due to its potential for regular expression denial of service attacks.
To mitigate CVE-2023-23621, upgrade to Discourse version 3.0.1 or later on the stable branch, or version 3.1.0.beta2 or later on the beta and tests-passed branches.
Discourse users running versions prior to 3.0.1 on the stable branch and 3.1.0.beta2 on beta or tests-passed branches are affected by CVE-2023-23621.
Attackers can exploit CVE-2023-23621 to launch denial of service attacks by sending specially crafted user agents that trigger excessive regex processing.
Yes, CVE-2023-23621 is patched in Discourse version 3.0.1 and later.