CVE-2023-37471: Openam federation library OpenAM Vulnerable To User Impersonation Vulnerability

CRITICAL
Advisory Identifier: GHSA-4mh8-9wq6-rjxg
CVSS 9.1
CWE-287
Published
Advisory Summary

CVE-2023-37471 is a CRITICAL (CVSS 9.1) openam vulnerable to user impersonation vulnerability (CWE-287: Improper Authentication) affecting Openam federation library libraries in the Maven ecosystem. The issue involves openam vulnerable to user impersonation using samlv1.x sso process. Remediation is available by upgrading affected packages to version 14.7.3.

CVE-2023-37471 at a Glance

CVE Identifier CVE-2023-37471
GHSA Identifier GHSA-4mh8-9wq6-rjxg
Severity CRITICAL
CVSS v3.1 Base Score 9.1
CWE Classification CWE-287: Improper Authentication
Affected Product Openam federation library
Package Ecosystem Maven
Published Date
Last Updated

Security Impact

CVSS: 9.1

The security impact metrics below are parsed directly from the CVSS v3.1 vector string (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N).

Attack Vector Network (AV:N)
Attack Complexity Low (AC:L)
Privileges Required None (PR:N)
User Interaction None (UI:N)
Scope Unchanged (S:U)
Confidentiality High (C:H)
Integrity High (I:H)
Availability None (A:N)

How to Fix CVE-2023-37471

To remediate this vulnerability, upgrade all affected Openam federation library dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.

org.openidentityplatform.openam:openam-federation-library fixed: 14.7.3
<dependency>
    <groupId>org.openidentityplatform.openam</groupId>
    <artifactId>openam-federation-library</artifactId>
    <version>14.7.3</version>
</dependency>
Verify Direct and Transitive Dependencies

Run the following command in your project directory to verify that all resolved dependencies use the patched release:

mvn dependency:tree -Dincludes=org.openidentityplatform.openam

How to Check if You Are Affected

To determine whether your Java application is affected by CVE-2023-37471, inspect your build dependencies using the Maven Dependency Plugin:

mvn dependency:tree -Dincludes=org.openidentityplatform.openam

Analyze the terminal output to locate any version of Openam federation library in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 14.7.3), your application is affected.

Note: The mvn dependency:tree -Dincludes=org.openidentityplatform.openam command inspects the resolved dependency graph declared in your project's POM files; it does not perform automated security scanning or inspect runtime dynamic classpaths. Always verify runtime container classpaths and shaded JARs.

Technical Details

Vulnerability Mechanism & Technical Analysis

This vulnerability is classified under CWE-287: Improper Authentication, where when an actor claims to have a given identity, the product does not prove or insufficiently proves that the claim is correct. In Openam federation library, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.

Source Advisory Statement

### Impact OpenAM up to version 14.7.2 does not properly validate the signature of SAML responses received as part of the SAMLv1.x Single Sign-On process. Attackers can use this fact to impersonate any OpenAM user, including the administrator, by sending a specially crafted SAML response to the SAMLPOSTProfileServlet servlet. ### Patches This problem has been patched in OpenAM 14.7.3-SNAPSHOT and later ### Workarounds One should comment servlet `SAMLPOSTProfileServlet` in web.xml or disable SAML in OpenAM ```xml <servlet> <description>SAMLPOSTProfileServlet</description> <servlet-name>SAMLPOSTProfileServlet</servlet-name> <servlet-class>com.sun.identity.saml.servlet.SAMLPOSTProfileServlet</servlet-class> </servlet> ... <servlet-mapping> <servlet-name>SAMLSOAPReceiver</servlet-name> <url-pattern>/SAMLSOAPReceiver</url-pattern> </servlet-mapping> ``` ### References #624

CVE-2023-37471 Affected Openam federation library Versions

1 component(s)
Fixed Versions:
14.7.3
Product / Package Ecosystem Affected Versions Fixed Version
org.openidentityplatform.openam:openam-federation-library
Maven
< 14.7.3
14.7.3

References

Frequently Asked Questions

What is CVE-2023-37471?
CVE-2023-37471 is a security vulnerability in Openam federation library involving OpenAM vulnerable to user impersonation using SAMLv1.x SSO process under CWE-287: Improper Authentication.
Which Openam federation library versions are affected?
Affected versions include releases prior to 14.7.3 across affected packages: org.openidentityplatform.openam:openam-federation-library.
What version fixes CVE-2023-37471?
Upgrading to 14.7.3 (or the latest patched release for your respective branch) resolves the vulnerability.
Is openam-federation-library affected?
Yes, org.openidentityplatform.openam:openam-federation-library is affected in releases prior to 14.7.3. Upgrade your dependency to 14.7.3 or later.
What is the CVSS score of CVE-2023-37471?
CVE-2023-37471 has a CVSS v3.1 base score of 9.1 (CRITICAL) with vector string CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N.
What CWE is associated with CVE-2023-37471?
CVE-2023-37471 is classified under CWE-287: Improper Authentication (When an actor claims to have a given identity, the product does not prove or insufficiently proves that the claim is correct.).
How can I check Maven dependencies for CVE-2023-37471?
Run the dependency tree command: 'mvn dependency:tree -Dincludes=org.openidentityplatform.openam'. This command lists direct and transitive dependencies in your build configuration so you can verify if a vulnerable version is resolved.
Machine-readable OSV JSON OSV v1.5 Schema
Normalized schema output
{
  "schema_version" : "1.4.0",
  "id" : "GHSA-4mh8-9wq6-rjxg",
  "modified" : "2023-07-20T18:54:13Z",
  "published" : "2023-07-20T18:54:13Z",
  "aliases" : [ "CVE-2023-37471" ],
  "summary" : "OpenAM vulnerable to user impersonation using SAMLv1.x SSO process",
  "details" : "### Impact\nOpenAM up to version 14.7.2 does not properly validate the signature of SAML responses received as part of the SAMLv1.x Single Sign-On process. Attackers can use this fact to impersonate any OpenAM user, including the administrator, by sending a specially crafted SAML response to the SAMLPOSTProfileServlet servlet.\n\n### Patches\nThis problem has been patched in  OpenAM 14.7.3-SNAPSHOT and later\n\n### Workarounds\nOne should comment servlet `SAMLPOSTProfileServlet` in web.xml or disable SAML in OpenAM\n```xml\n<servlet>\n    <description>SAMLPOSTProfileServlet</description>\n    <servlet-name>SAMLPOSTProfileServlet</servlet-name>\n    <servlet-class>com.sun.identity.saml.servlet.SAMLPOSTProfileServlet</servlet-class>\n</servlet>\n...\n<servlet-mapping>\n    <servlet-name>SAMLSOAPReceiver</servlet-name>\n    <url-pattern>/SAMLSOAPReceiver</url-pattern>\n</servlet-mapping>\n```\n\n### References\n#624\n",
  "severity" : [ {
    "type" : "CVSS_V3",
    "score" : "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N"
  } ],
  "affected" : [ {
    "package" : {
      "ecosystem" : "Maven",
      "name" : "org.openidentityplatform.openam:openam-federation-library"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "0"
      }, {
        "fixed" : "14.7.3"
      } ]
    } ]
  } ],
  "references" : [ {
    "type" : "WEB",
    "url" : "https://github.com/OpenIdentityPlatform/OpenAM/security/advisories/GHSA-4mh8-9wq6-rjxg"
  }, {
    "type" : "ADVISORY",
    "url" : "https://nvd.nist.gov/vuln/detail/CVE-2023-37471"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/OpenIdentityPlatform/OpenAM/pull/624"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/OpenIdentityPlatform/OpenAM/commit/7c18543d126e8a567b83bb4535631825aaa9d742"
  }, {
    "type" : "PACKAGE",
    "url" : "https://github.com/OpenIdentityPlatform/OpenAM"
  } ],
  "database_specific" : {
    "cwe_ids" : [ "CWE-287" ],
    "severity" : "CRITICAL",
    "github_reviewed" : true,
    "github_reviewed_at" : "2023-07-20T18:54:13Z",
    "nvd_published_at" : "2023-07-20T17:15:10Z"
  }
}