CVE-2021-43807: Authentication Bypass by Spoofing (CWE-290)
value: Opencast is an Open Source Lecture Capture & Video Management for Education. 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. The vulnerability allows attackers to craft links or forms which may change the server state. This issue is fixed in Opencast 9.10 and 10.0. 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.
CWE description: This attack-focused weakness is caused by incorrectly implemented authentication schemes that are subject to spoofing attacks.
CVSS v3 base score: 6.5
Published: 2021-12-14T18:15Z
Repository: https://github.com/opencast/opencast
Language: XML
Files changed: modules/security-aai/pom.xml, pom.xml
Commit date: 2021-12-13 14:05:37 +0100
Commit message: Update CXF

This updates CXF to version 3.4.3, fixing among other things
[CVE-2019-12419], [CVE-2019-12423], [CVE-2021-22696], [CVE-2019-12406],
[CVE-2020-13954], [CVE-2019-17573], [CVE-2020-1954].

The security issues should not be problematic for Opencast and we can
treat this as a regular update.

Diff: diff --git a/modules/security-aai/pom.xml b/modules/security-aai/pom.xml
index 0aeb280ccc..4a89786cfc 100644
--- a/modules/security-aai/pom.xml
+++ b/modules/security-aai/pom.xml
@@ -104,11 +104,11 @@
             </goals>
             <configuration>
               <failOnWarning>true</failOnWarning>
               <ignoredUsedUndeclaredDependencies>
                 <ignoredUsedUndeclaredDependency>junit:junit</ignoredUsedUndeclaredDependency>
-                <ignoredUsedUndeclaredDependency>javax.annotation:javax.annotation-api</ignoredUsedUndeclaredDependency>
+                <ignoredUsedUndeclaredDependency>jakarta.annotation:jakarta.annotation-api</ignoredUsedUndeclaredDependency>
                 <ignoredUsedUndeclaredDependency>org.springframework:spring-expression</ignoredUsedUndeclaredDependency>
                 <ignoredUsedUndeclaredDependency>org.springframework:spring-core</ignoredUsedUndeclaredDependency>
                 <ignoredUsedUndeclaredDependency>org.springframework.security:spring-security-core</ignoredUsedUndeclaredDependency>
                 <ignoredUsedUndeclaredDependency>org.springframework:spring-beans</ignoredUsedUndeclaredDependency>
                 <ignoredUsedUndeclaredDependency>org.hamcrest:hamcrest</ignoredUsedUndeclaredDependency>
diff --git a/pom.xml b/pom.xml
index 7606df7822..5287e80769 100644
--- a/pom.xml
+++ b/pom.xml
@@ -23,11 +23,11 @@
     <commons-csv.version>1.8</commons-csv.version>
     <commons-fileupload.version>1.4</commons-fileupload.version>
     <commons-io.version>2.8.0</commons-io.version>
     <commons-lang3.version>3.11</commons-lang3.version>
     <commons-text.version>1.9</commons-text.version>
-    <cxf.version>3.3.3</cxf.version>
+    <cxf.version>3.4.3</cxf.version>
     <eclipselink.version>2.7.5</eclipselink.version>
     <failureaccess.version>1.0.1</failureaccess.version>
     <freemarker.version>2.3.30</freemarker.version>
     <functional.version>1.4.2</functional.version>
     <gson.version>2.8.5</gson.version>

Vulnerable code:                 <ignoredUsedUndeclaredDependency>javax.annotation:javax.annotation-api</ignoredUsedUndeclaredDependency>
    <cxf.version>3.3.3</cxf.version>
Fixed code:                 <ignoredUsedUndeclaredDependency>jakarta.annotation:jakarta.annotation-api</ignoredUsedUndeclaredDependency>
    <cxf.version>3.4.3</cxf.version>