CVE Vulnerabilities

CVE-2023-38498

Uncontrolled Resource Consumption

Published: Jul 28, 2023 | Modified: Nov 21, 2024
CVSS 3.x
6.5
MEDIUM
Source:
NVD
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
CVSS 2.x
RedHat/V2
RedHat/V3
Ubuntu
root.io logo minimus.io logo echo.ai logo

Discourse is an open source discussion platform. Prior to version 3.0.6 of the stable branch and version 3.1.0.beta7 of the beta and tests-passed branches, a malicious user can prevent the defer queue from proceeding promptly on sites hosted in the same multisite installation. The issue is patched in version 3.0.6 of the stable branch and version 3.1.0.beta7 of the beta and tests-passed branches. There are no known workarounds for this vulnerability. Users of multisite configurations should upgrade.

Weakness

The product does not properly control the allocation and maintenance of a limited resource.

Affected Software

NameVendorStart VersionEnd Version
DiscourseDiscourse*3.0.6 (excluding)
DiscourseDiscourse1.1.0-beta1 (including)1.1.0-beta1 (including)
DiscourseDiscourse1.1.0-beta2 (including)1.1.0-beta2 (including)
DiscourseDiscourse1.1.0-beta3 (including)1.1.0-beta3 (including)
DiscourseDiscourse1.1.0-beta4 (including)1.1.0-beta4 (including)
DiscourseDiscourse1.1.0-beta5 (including)1.1.0-beta5 (including)
DiscourseDiscourse1.1.0-beta6 (including)1.1.0-beta6 (including)
DiscourseDiscourse1.1.0-beta6b (including)1.1.0-beta6b (including)
DiscourseDiscourse1.1.0-beta7 (including)1.1.0-beta7 (including)
DiscourseDiscourse1.1.0-beta8 (including)1.1.0-beta8 (including)
DiscourseDiscourse1.2.0-beta1 (including)1.2.0-beta1 (including)
DiscourseDiscourse1.2.0-beta2 (including)1.2.0-beta2 (including)
DiscourseDiscourse1.2.0-beta3 (including)1.2.0-beta3 (including)
DiscourseDiscourse1.2.0-beta4 (including)1.2.0-beta4 (including)
DiscourseDiscourse1.2.0-beta5 (including)1.2.0-beta5 (including)
DiscourseDiscourse1.2.0-beta6 (including)1.2.0-beta6 (including)
DiscourseDiscourse1.2.0-beta7 (including)1.2.0-beta7 (including)
DiscourseDiscourse1.2.0-beta8 (including)1.2.0-beta8 (including)
DiscourseDiscourse1.2.0-beta9 (including)1.2.0-beta9 (including)
DiscourseDiscourse1.3.0-beta1 (including)1.3.0-beta1 (including)
DiscourseDiscourse1.3.0-beta10 (including)1.3.0-beta10 (including)
DiscourseDiscourse1.3.0-beta11 (including)1.3.0-beta11 (including)
DiscourseDiscourse1.3.0-beta2 (including)1.3.0-beta2 (including)
DiscourseDiscourse1.3.0-beta3 (including)1.3.0-beta3 (including)
DiscourseDiscourse1.3.0-beta4 (including)1.3.0-beta4 (including)
DiscourseDiscourse1.3.0-beta5 (including)1.3.0-beta5 (including)
DiscourseDiscourse1.3.0-beta6 (including)1.3.0-beta6 (including)
DiscourseDiscourse1.3.0-beta7 (including)1.3.0-beta7 (including)
DiscourseDiscourse1.3.0-beta8 (including)1.3.0-beta8 (including)
DiscourseDiscourse1.3.0-beta9 (including)1.3.0-beta9 (including)
DiscourseDiscourse1.4.0-beta1 (including)1.4.0-beta1 (including)
DiscourseDiscourse1.4.0-beta10 (including)1.4.0-beta10 (including)
DiscourseDiscourse1.4.0-beta11 (including)1.4.0-beta11 (including)
DiscourseDiscourse1.4.0-beta12 (including)1.4.0-beta12 (including)
DiscourseDiscourse1.4.0-beta2 (including)1.4.0-beta2 (including)
DiscourseDiscourse1.4.0-beta3 (including)1.4.0-beta3 (including)
DiscourseDiscourse1.4.0-beta4 (including)1.4.0-beta4 (including)
DiscourseDiscourse1.4.0-beta5 (including)1.4.0-beta5 (including)
DiscourseDiscourse1.4.0-beta6 (including)1.4.0-beta6 (including)
DiscourseDiscourse1.4.0-beta7 (including)1.4.0-beta7 (including)
DiscourseDiscourse1.4.0-beta8 (including)1.4.0-beta8 (including)
DiscourseDiscourse1.4.0-beta9 (including)1.4.0-beta9 (including)
DiscourseDiscourse1.5.0-beta1 (including)1.5.0-beta1 (including)
DiscourseDiscourse1.5.0-beta10 (including)1.5.0-beta10 (including)
DiscourseDiscourse1.5.0-beta11 (including)1.5.0-beta11 (including)
DiscourseDiscourse1.5.0-beta12 (including)1.5.0-beta12 (including)
DiscourseDiscourse1.5.0-beta13 (including)1.5.0-beta13 (including)
DiscourseDiscourse1.5.0-beta13b (including)1.5.0-beta13b (including)
DiscourseDiscourse1.5.0-beta14 (including)1.5.0-beta14 (including)
DiscourseDiscourse1.5.0-beta2 (including)1.5.0-beta2 (including)
DiscourseDiscourse1.5.0-beta3 (including)1.5.0-beta3 (including)
DiscourseDiscourse1.5.0-beta4 (including)1.5.0-beta4 (including)
DiscourseDiscourse1.5.0-beta5 (including)1.5.0-beta5 (including)
DiscourseDiscourse1.5.0-beta6 (including)1.5.0-beta6 (including)
DiscourseDiscourse1.5.0-beta7 (including)1.5.0-beta7 (including)
DiscourseDiscourse1.5.0-beta8 (including)1.5.0-beta8 (including)
DiscourseDiscourse1.5.0-beta9 (including)1.5.0-beta9 (including)
DiscourseDiscourse1.6.0-beta1 (including)1.6.0-beta1 (including)
DiscourseDiscourse1.6.0-beta10 (including)1.6.0-beta10 (including)
DiscourseDiscourse1.6.0-beta11 (including)1.6.0-beta11 (including)
DiscourseDiscourse1.6.0-beta12 (including)1.6.0-beta12 (including)
DiscourseDiscourse1.6.0-beta2 (including)1.6.0-beta2 (including)
DiscourseDiscourse1.6.0-beta3 (including)1.6.0-beta3 (including)
DiscourseDiscourse1.6.0-beta4 (including)1.6.0-beta4 (including)
DiscourseDiscourse1.6.0-beta5 (including)1.6.0-beta5 (including)
DiscourseDiscourse1.6.0-beta6 (including)1.6.0-beta6 (including)
DiscourseDiscourse1.6.0-beta7 (including)1.6.0-beta7 (including)
DiscourseDiscourse1.6.0-beta8 (including)1.6.0-beta8 (including)
DiscourseDiscourse1.6.0-beta9 (including)1.6.0-beta9 (including)
DiscourseDiscourse1.7.0-beta1 (including)1.7.0-beta1 (including)
DiscourseDiscourse1.7.0-beta10 (including)1.7.0-beta10 (including)
DiscourseDiscourse1.7.0-beta11 (including)1.7.0-beta11 (including)
DiscourseDiscourse1.7.0-beta2 (including)1.7.0-beta2 (including)
DiscourseDiscourse1.7.0-beta3 (including)1.7.0-beta3 (including)
DiscourseDiscourse1.7.0-beta4 (including)1.7.0-beta4 (including)
DiscourseDiscourse1.7.0-beta5 (including)1.7.0-beta5 (including)
DiscourseDiscourse1.7.0-beta6 (including)1.7.0-beta6 (including)
DiscourseDiscourse1.7.0-beta7 (including)1.7.0-beta7 (including)
DiscourseDiscourse1.7.0-beta8 (including)1.7.0-beta8 (including)
DiscourseDiscourse1.7.0-beta9 (including)1.7.0-beta9 (including)
DiscourseDiscourse1.8.0-beta1 (including)1.8.0-beta1 (including)
DiscourseDiscourse1.8.0-beta10 (including)1.8.0-beta10 (including)
DiscourseDiscourse1.8.0-beta11 (including)1.8.0-beta11 (including)
DiscourseDiscourse1.8.0-beta12 (including)1.8.0-beta12 (including)
DiscourseDiscourse1.8.0-beta13 (including)1.8.0-beta13 (including)
DiscourseDiscourse1.8.0-beta2 (including)1.8.0-beta2 (including)
DiscourseDiscourse1.8.0-beta3 (including)1.8.0-beta3 (including)
DiscourseDiscourse1.8.0-beta4 (including)1.8.0-beta4 (including)
DiscourseDiscourse1.8.0-beta5 (including)1.8.0-beta5 (including)
DiscourseDiscourse1.8.0-beta6 (including)1.8.0-beta6 (including)
DiscourseDiscourse1.8.0-beta7 (including)1.8.0-beta7 (including)
DiscourseDiscourse1.8.0-beta8 (including)1.8.0-beta8 (including)
DiscourseDiscourse1.8.0-beta9 (including)1.8.0-beta9 (including)
DiscourseDiscourse1.9.0-beta1 (including)1.9.0-beta1 (including)
DiscourseDiscourse1.9.0-beta10 (including)1.9.0-beta10 (including)
DiscourseDiscourse1.9.0-beta11 (including)1.9.0-beta11 (including)
DiscourseDiscourse1.9.0-beta12 (including)1.9.0-beta12 (including)
DiscourseDiscourse1.9.0-beta13 (including)1.9.0-beta13 (including)
DiscourseDiscourse1.9.0-beta14 (including)1.9.0-beta14 (including)
DiscourseDiscourse1.9.0-beta15 (including)1.9.0-beta15 (including)
DiscourseDiscourse1.9.0-beta16 (including)1.9.0-beta16 (including)
DiscourseDiscourse1.9.0-beta17 (including)1.9.0-beta17 (including)
DiscourseDiscourse1.9.0-beta2 (including)1.9.0-beta2 (including)
DiscourseDiscourse1.9.0-beta3 (including)1.9.0-beta3 (including)
DiscourseDiscourse1.9.0-beta4 (including)1.9.0-beta4 (including)
DiscourseDiscourse1.9.0-beta5 (including)1.9.0-beta5 (including)
DiscourseDiscourse1.9.0-beta6 (including)1.9.0-beta6 (including)
DiscourseDiscourse1.9.0-beta7 (including)1.9.0-beta7 (including)
DiscourseDiscourse1.9.0-beta8 (including)1.9.0-beta8 (including)
DiscourseDiscourse1.9.0-beta9 (including)1.9.0-beta9 (including)
DiscourseDiscourse2.0.0-beta1 (including)2.0.0-beta1 (including)
DiscourseDiscourse2.0.0-beta10 (including)2.0.0-beta10 (including)
DiscourseDiscourse2.0.0-beta2 (including)2.0.0-beta2 (including)
DiscourseDiscourse2.0.0-beta3 (including)2.0.0-beta3 (including)
DiscourseDiscourse2.0.0-beta4 (including)2.0.0-beta4 (including)
DiscourseDiscourse2.0.0-beta5 (including)2.0.0-beta5 (including)
DiscourseDiscourse2.0.0-beta6 (including)2.0.0-beta6 (including)
DiscourseDiscourse2.0.0-beta7 (including)2.0.0-beta7 (including)
DiscourseDiscourse2.0.0-beta8 (including)2.0.0-beta8 (including)
DiscourseDiscourse2.0.0-beta9 (including)2.0.0-beta9 (including)
DiscourseDiscourse2.1.0-beta1 (including)2.1.0-beta1 (including)
DiscourseDiscourse2.1.0-beta2 (including)2.1.0-beta2 (including)
DiscourseDiscourse2.1.0-beta3 (including)2.1.0-beta3 (including)
DiscourseDiscourse2.1.0-beta4 (including)2.1.0-beta4 (including)
DiscourseDiscourse2.1.0-beta5 (including)2.1.0-beta5 (including)
DiscourseDiscourse2.1.0-beta6 (including)2.1.0-beta6 (including)
DiscourseDiscourse2.2.0-beta1 (including)2.2.0-beta1 (including)
DiscourseDiscourse2.2.0-beta10 (including)2.2.0-beta10 (including)
DiscourseDiscourse2.2.0-beta2 (including)2.2.0-beta2 (including)
DiscourseDiscourse2.2.0-beta3 (including)2.2.0-beta3 (including)
DiscourseDiscourse2.2.0-beta4 (including)2.2.0-beta4 (including)
DiscourseDiscourse2.2.0-beta5 (including)2.2.0-beta5 (including)
DiscourseDiscourse2.2.0-beta6 (including)2.2.0-beta6 (including)
DiscourseDiscourse2.2.0-beta7 (including)2.2.0-beta7 (including)
DiscourseDiscourse2.2.0-beta8 (including)2.2.0-beta8 (including)
DiscourseDiscourse2.2.0-beta9 (including)2.2.0-beta9 (including)
DiscourseDiscourse2.3.0-beta1 (including)2.3.0-beta1 (including)
DiscourseDiscourse2.3.0-beta10 (including)2.3.0-beta10 (including)
DiscourseDiscourse2.3.0-beta11 (including)2.3.0-beta11 (including)
DiscourseDiscourse2.3.0-beta2 (including)2.3.0-beta2 (including)
DiscourseDiscourse2.3.0-beta3 (including)2.3.0-beta3 (including)
DiscourseDiscourse2.3.0-beta4 (including)2.3.0-beta4 (including)
DiscourseDiscourse2.3.0-beta5 (including)2.3.0-beta5 (including)
DiscourseDiscourse2.3.0-beta6 (including)2.3.0-beta6 (including)
DiscourseDiscourse2.3.0-beta7 (including)2.3.0-beta7 (including)
DiscourseDiscourse2.3.0-beta8 (including)2.3.0-beta8 (including)
DiscourseDiscourse2.3.0-beta9 (including)2.3.0-beta9 (including)
DiscourseDiscourse2.4.0-beta1 (including)2.4.0-beta1 (including)
DiscourseDiscourse2.4.0-beta10 (including)2.4.0-beta10 (including)
DiscourseDiscourse2.4.0-beta11 (including)2.4.0-beta11 (including)
DiscourseDiscourse2.4.0-beta2 (including)2.4.0-beta2 (including)
DiscourseDiscourse2.4.0-beta3 (including)2.4.0-beta3 (including)
DiscourseDiscourse2.4.0-beta4 (including)2.4.0-beta4 (including)
DiscourseDiscourse2.4.0-beta5 (including)2.4.0-beta5 (including)
DiscourseDiscourse2.4.0-beta6 (including)2.4.0-beta6 (including)
DiscourseDiscourse2.4.0-beta7 (including)2.4.0-beta7 (including)
DiscourseDiscourse2.4.0-beta8 (including)2.4.0-beta8 (including)
DiscourseDiscourse2.4.0-beta9 (including)2.4.0-beta9 (including)
DiscourseDiscourse2.5.0-beta1 (including)2.5.0-beta1 (including)
DiscourseDiscourse2.5.0-beta2 (including)2.5.0-beta2 (including)
DiscourseDiscourse2.5.0-beta3 (including)2.5.0-beta3 (including)
DiscourseDiscourse2.5.0-beta4 (including)2.5.0-beta4 (including)
DiscourseDiscourse2.5.0-beta5 (including)2.5.0-beta5 (including)
DiscourseDiscourse2.5.0-beta6 (including)2.5.0-beta6 (including)
DiscourseDiscourse2.5.0-beta7 (including)2.5.0-beta7 (including)
DiscourseDiscourse2.6.0-beta1 (including)2.6.0-beta1 (including)
DiscourseDiscourse2.6.0-beta2 (including)2.6.0-beta2 (including)
DiscourseDiscourse2.6.0-beta3 (including)2.6.0-beta3 (including)
DiscourseDiscourse2.6.0-beta4 (including)2.6.0-beta4 (including)
DiscourseDiscourse2.6.0-beta5 (including)2.6.0-beta5 (including)
DiscourseDiscourse2.6.0-beta6 (including)2.6.0-beta6 (including)
DiscourseDiscourse2.7.0-beta1 (including)2.7.0-beta1 (including)
DiscourseDiscourse2.7.0-beta2 (including)2.7.0-beta2 (including)
DiscourseDiscourse2.7.0-beta3 (including)2.7.0-beta3 (including)
DiscourseDiscourse2.7.0-beta4 (including)2.7.0-beta4 (including)
DiscourseDiscourse2.7.0-beta5 (including)2.7.0-beta5 (including)
DiscourseDiscourse2.7.0-beta6 (including)2.7.0-beta6 (including)
DiscourseDiscourse2.7.0-beta7 (including)2.7.0-beta7 (including)
DiscourseDiscourse2.7.0-beta8 (including)2.7.0-beta8 (including)
DiscourseDiscourse2.7.0-beta9 (including)2.7.0-beta9 (including)
DiscourseDiscourse2.8.0-beta1 (including)2.8.0-beta1 (including)
DiscourseDiscourse2.8.0-beta10 (including)2.8.0-beta10 (including)
DiscourseDiscourse2.8.0-beta11 (including)2.8.0-beta11 (including)
DiscourseDiscourse2.8.0-beta2 (including)2.8.0-beta2 (including)
DiscourseDiscourse2.8.0-beta3 (including)2.8.0-beta3 (including)
DiscourseDiscourse2.8.0-beta4 (including)2.8.0-beta4 (including)
DiscourseDiscourse2.8.0-beta5 (including)2.8.0-beta5 (including)
DiscourseDiscourse2.8.0-beta6 (including)2.8.0-beta6 (including)
DiscourseDiscourse2.8.0-beta7 (including)2.8.0-beta7 (including)
DiscourseDiscourse2.8.0-beta8 (including)2.8.0-beta8 (including)
DiscourseDiscourse2.8.0-beta9 (including)2.8.0-beta9 (including)
DiscourseDiscourse2.9.0-beta1 (including)2.9.0-beta1 (including)
DiscourseDiscourse2.9.0-beta10 (including)2.9.0-beta10 (including)
DiscourseDiscourse2.9.0-beta11 (including)2.9.0-beta11 (including)
DiscourseDiscourse2.9.0-beta12 (including)2.9.0-beta12 (including)
DiscourseDiscourse2.9.0-beta13 (including)2.9.0-beta13 (including)
DiscourseDiscourse2.9.0-beta14 (including)2.9.0-beta14 (including)
DiscourseDiscourse2.9.0-beta2 (including)2.9.0-beta2 (including)
DiscourseDiscourse2.9.0-beta3 (including)2.9.0-beta3 (including)
DiscourseDiscourse2.9.0-beta4 (including)2.9.0-beta4 (including)
DiscourseDiscourse2.9.0-beta5 (including)2.9.0-beta5 (including)
DiscourseDiscourse2.9.0-beta6 (including)2.9.0-beta6 (including)
DiscourseDiscourse2.9.0-beta7 (including)2.9.0-beta7 (including)
DiscourseDiscourse2.9.0-beta8 (including)2.9.0-beta8 (including)
DiscourseDiscourse2.9.0-beta9 (including)2.9.0-beta9 (including)
DiscourseDiscourse3.0.0-beta15 (including)3.0.0-beta15 (including)
DiscourseDiscourse3.0.0-beta16 (including)3.0.0-beta16 (including)
DiscourseDiscourse3.1.0-beta1 (including)3.1.0-beta1 (including)
DiscourseDiscourse3.1.0-beta2 (including)3.1.0-beta2 (including)
DiscourseDiscourse3.1.0-beta3 (including)3.1.0-beta3 (including)
DiscourseDiscourse3.1.0-beta5 (including)3.1.0-beta5 (including)
DiscourseDiscourse3.1.0-beta6 (including)3.1.0-beta6 (including)

Potential Mitigations

  • Mitigation of resource exhaustion attacks requires that the target system either:

  • The first of these solutions is an issue in itself though, since it may allow attackers to prevent the use of the system by a particular valid user. If the attacker impersonates the valid user, they may be able to prevent the user from accessing the server in question.

  • The second solution is simply difficult to effectively institute – and even when properly done, it does not provide a full solution. It simply makes the attack require more resources on the part of the attacker.

References