Ecosyste.ms: Advisories

An open API service providing security vulnerability metadata for many open source software ecosystems.

Security Advisories: GSA_kwCzR0hTQS1qNG1tLTdwajMtamY3ds0bQQ

HTTP Method Spoofing

Opencast versions prior to 9.10 allow HTTP method spoofing, allowing to change the assumed HTTP method via URL parameter. This allows attackers to turn HTTP GET requests into PUT requests or an HTTP form to send DELETE requests. This bypasses restrictions otherwise put on these types of requests and aids in cross-site request forgery (CSRF) attacks, which would otherwise not be possible.

Impact

The vulnerability allows attackers to craft links or forms which may change the server state. For example, the following GET request would create a new user:

% curl -i -u admin:opencast \
  'https://legacy.opencast.org/admin-ng/users/test.json?_method=PUT&username=test&password=attack'
HTTP/2 200

If an admin is logged in to legacy.opencast.org and accidentally clicks this link, a user will silently be created.

Patches

This issue is fixed in Opencast 9.10 and 10.0.

Workarounds

You can mitigate the problem by setting the SameSite=Strict attribute for your cookies. If this is a viable option for you depends on your integrations. We strongly recommend updating in any case.

References

For more information

If you have any questions or comments about this advisory:

Permalink: https://github.com/advisories/GHSA-j4mm-7pj3-jf7v
JSON: https://advisories.ecosyste.ms/api/v1/advisories/GSA_kwCzR0hTQS1qNG1tLTdwajMtamY3ds0bQQ
Source: GitHub Advisory Database
Origin: Unspecified
Severity: High
Classification: General
Published: over 2 years ago
Updated: about 1 year ago


CVSS Score: 7.5
CVSS vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H

Identifiers: GHSA-j4mm-7pj3-jf7v, CVE-2021-43807
References: Repository: https://github.com/opencast/opencast
Blast Radius: 11.8

Affected Packages

maven:org.opencastproject:opencast-common
Dependent packages: 243
Dependent repositories: 37
Downloads:
Affected Version Ranges: < 9.10
Fixed in: 9.10
All affected versions:
All unaffected versions: