CVE-2024-52797 Searching Opencast may cause a denial of service

Medium 6.5 Published Updated

Attackers with admin or API view roles can trigger infinite retry loops via invalid search queries, causing disk exhaustion and denial of service.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2024-52797?

CVE-2024-52797 is a medium-severity denial of service vulnerability in opencast, published on 21 Nov 2024. Any signed-in user can exploit it over the network, with no action from the victim.

Official description

Opencast is free and open source software for automated video capture and distribution. First noticed in Opencast 13 and 14, Opencast's Elasticsearch integration may generate syntactically invalid Elasticsearch queries in relation to previously acceptable search queries. From Opencast version 11.4 and newer, Elasticsearch queries are retried a configurable number of times in the case of error to handle temporary losses of connection to Elasticsearch. These invalid queries would fail, causing the retry mechanism to begin requerying with the same syntactically invalid query immediately, in an infinite loop. This causes a massive increase in log size which can in some cases cause a denial of service due to disk exhaustion.

Opencast 13.10 and Opencast 14.3 contain patches which address the base issue, with Opencast 16.7 containing changes which harmonize the search behaviour between the admin UI and external API. Users are strongly recommended to upgrade as soon as possible if running versions prior to 13.10 or 14.3. While the relevant endpoints require (by default) `ROLE_ADMIN` or `ROLE_API_SERIES_VIEW`, the problem queries are otherwise innocuous. This issue could be easily triggered by normal administrative work on an affected Opencast system. Those who run a version newer than 13.10 and 14.3 and see different results when searching in their admin UI vs your external API or LMS, may resolve the issue by upgrading to 16.7. No known workarounds for the vulnerability are available.

Weakness: CWE-770

Which versions are affected by CVE-2024-52797?

6 open source packages ship an affected version, including org.opencastproject:opencast-elasticsearch-impl. It affects 1 product.

PackageAffectedFixed in
org.opencastproject:opencast-elasticsearch-impl MavenFrom 11.413.10
org.opencastproject:opencast-elasticsearch-impl MavenFrom 11.413.10
org.opencastproject:opencast-elasticsearch-impl MavenFrom 14.014.3
org.opencastproject:opencast-elasticsearch-impl MavenFrom 14.014.3
org.opencastproject:opencast-elasticsearch-impl MavenFrom 15.016.7
org.opencastproject:opencast-elasticsearch-impl MavenFrom 15.016.7

Products include Apereo Opencast.

How do I fix CVE-2024-52797?

Upgrade org.opencastproject:opencast-elasticsearch-impl to a fixed version for your release line: 13.10, 14.3 or 16.7.

Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.

Is CVE-2024-52797 being exploited?

There is no known exploitation of CVE-2024-52797 in the wild and no public exploit code.

Sources

Also known as GHSA-jh6x-7xfg-9cq2.

Is CVE-2024-52797 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free