CVE-2024-8698
Public on
Last Modified:
Description
A flaw exists in the SAML signature validation method within the Keycloak XMLSignatureUtil class. The method incorrectly determines whether a SAML signature is for the full document or only for specific assertions based on the position of the signature in the XML document, rather than the Reference element used to specify the signed element. This flaw allows attackers to create crafted responses that can bypass the validation, potentially leading to privilege escalation or impersonation attacks.
Statement
This vulnerability is of high severity due to its potential to facilitate privilege escalation and user impersonation in systems using SAML for authentication. The core issue stems from improper validation logic in Keycloak's signature validation method, which relies on the position of signatures rather than explicitly checking the referenced elements. By manipulating the XML structure, an attacker can bypass signature validation and inject an unsigned assertion while retaining a valid signed one. This allows unauthorized access to high-privileged accounts, leading to significant security risks in SAML-based identity providers and service providers.
Mitigation
Mitigation for this issue is either not available or the currently available options do not meet the Red Hat Product Security criteria comprising ease of use and deployment, applicability to widespread installation base or stability.
Additional Information
- This content is not included.Bugzilla 2311641: keycloak-saml-core: Improper Verification of SAML Responses Leading to Privilege Escalation in Keycloak
- Content from cwe.mitre.org is not included.CWE-347: Improper Verification of Cryptographic Signature
- FAQ: Frequently asked questions about CVE-2024-8698
- Offline Security Data data is available for integration with other systems. See Offline Security Data API to get started.
External References
Content from www.cve.org is not included.https://www.cve.org/CVERecord?id=CVE-2024-8698
Content from nvd.nist.gov is not included.https://nvd.nist.gov/vuln/detail/CVE-2024-8698
Affected Packages and Issued Red Hat Security Errata
| Products / Services | Components | State | Errata |
|---|---|---|---|
| RHEL-8 based Middleware Containers | rh-sso-7/sso76-openshift-rhel8 | Fixed | RHSA-2024:6882 |
| Red Hat Build of Keycloak | org.keycloak/keycloak-saml-core-public | Affected | |
| Red Hat Build of Keycloak | Fixed | RHSA-2024:6888 | |
| Red Hat Build of Keycloak | org.keycloak/keycloak-saml-core | Fixed | RHSA-2024:6890 |
| Red Hat JBoss Enterprise Application Platform 8 | keycloak-saml-core-public | Fixed | RHSA-2024:8826 |
| Red Hat JBoss Enterprise Application Platform 8 | org.keycloak-keycloak-parent | Fixed | RHSA-2024:8826 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-activemq-artemis | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-activemq-artemis-native | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-aesh-extensions | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-aesh-readline | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-apache-commons-codec | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-apache-commons-collections | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-apache-commons-io | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-apache-commons-lang | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-apache-cxf | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-artemis-native | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-artemis-wildfly-integration | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-asyncutil | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-aws-java-sdk | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-cryptacular | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-eap-product-conf-parent | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-fastinfoset | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-hibernate | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-hibernate-validator | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-hppc | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-insights-java-client | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-jakarta-servlet-jsp-jstl-api | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-jboss-cert-helper | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-jboss-logging | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-jctools | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-jgroups | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-log4j | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-narayana | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-nimbus-jose-jwt | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-objectweb-asm | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-pem-keystore | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-resteasy-extensions | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-resteasy-spring | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-saaj-impl | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-shibboleth-java-support | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-slf4j | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-snakeyaml | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 8 | eap8-wildfly | Fixed | RHSA-2024:8823 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-activemq-artemis | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-activemq-artemis-native | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-aesh-extensions | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-aesh-readline | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-apache-commons-codec | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-apache-commons-collections | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-apache-commons-io | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-apache-commons-lang | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-apache-cxf | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-artemis-native | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-artemis-wildfly-integration | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-asyncutil | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-aws-java-sdk | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-cryptacular | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-eap-product-conf-parent | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-fastinfoset | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-hibernate | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-hibernate-validator | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-hppc | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-insights-java-client | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-jakarta-servlet-jsp-jstl-api | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-jboss-cert-helper | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-jboss-logging | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-jctools | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-jgroups | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-log4j | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-narayana | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-nimbus-jose-jwt | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-objectweb-asm | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-pem-keystore | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-resteasy-extensions | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-resteasy-spring | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-saaj-impl | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-shibboleth-java-support | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-slf4j | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-snakeyaml | Fixed | RHSA-2024:8824 |
| Red Hat JBoss Enterprise Application Platform 8.0 for RHEL 9 | eap8-wildfly | Fixed | RHSA-2024:8824 |
| Red Hat Single Sign-On 7 | org.keycloak/keycloak-saml-core-public | Affected | |
| Red Hat Single Sign-On 7 | org.keycloak/keycloak-saml-core | Fixed | RHSA-2024:6886 |
| Red Hat Single Sign-On 7.6 for RHEL 7 | rh-sso7-keycloak | Fixed | RHSA-2024:6878 |
| Red Hat Single Sign-On 7.6 for RHEL 8 | rh-sso7-keycloak | Fixed | RHSA-2024:6879 |
| Red Hat Single Sign-On 7.6 for RHEL 9 | rh-sso7-keycloak | Fixed | RHSA-2024:6880 |
| Red Hat build of Keycloak 22 | rhbk/keycloak-operator-bundle | Fixed | RHSA-2024:6887 |
| Red Hat build of Keycloak 22 | rhbk/keycloak-rhel9 | Fixed | RHSA-2024:6887 |
| Red Hat build of Keycloak 22 | rhbk/keycloak-rhel9-operator | Fixed | RHSA-2024:6887 |
| Red Hat build of Keycloak 24 | rhbk/keycloak-operator-bundle | Fixed | RHSA-2024:6889 |
| Red Hat build of Keycloak 24 | rhbk/keycloak-rhel9 | Fixed | RHSA-2024:6889 |
| Red Hat build of Keycloak 24 | rhbk/keycloak-rhel9-operator | Fixed | RHSA-2024:6889 |
Common Vulnerability Scoring System (CVSS) Score Details
Important note
CVSS scores for open source components depend on vendor-specific factors (e.g. version or build chain). Therefore, Red Hat's score and impact rating can be different from NVD and other vendors. Red Hat remains the authoritative CVE Naming Authorities (CNA) source for its products and services (see Red Hat classifications ).
| CVSS v3 Score Breakdown | Red Hat | NVD |
|---|---|---|
| CVSS v3 Base Score | 7.7 | |
| Attack Vector | Network | |
| Attack Complexity | High | |
| Privileges Required | Low | |
| User Interaction | None | |
| Scope | Changed | |
| Confidentiality Impact | High | |
| Integrity Impact | Low | |
| Availability Impact | Low |
CVSS v3 Vector
Red Hat CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:L/A:L
Acknowledgements
Red Hat would like to thank Tanner Emek for reporting this issue.
Frequently Asked Questions
Why is Red Hat's CVSS v3 score or Impact different from other vendors?
For more information, see https://access.redhat.com/solutions/762393.
My product is listed as "Under investigation" or "Affected", when will Red Hat release a fix for this vulnerability?
- "Under investigation" doesn't necessarily mean that the product is affected by this vulnerability. It only means that our Analysis Team is still working on determining whether the product is affected and how it is affected.
- "Affected" means that our Analysis Team has determined that this product is affected by this vulnerability and might release a fix to address this in the near future.
What can I do if my product is listed as "Will not fix"?
Available options depend mostly on the Impact of the vulnerability and the current Life Cycle phase of your product. Overall, you have the following options:
- Upgrade to a supported product version that includes a fix for this vulnerability (recommended).
- Apply a mitigation (if one exists).
- Open a This content is not included.support case to request a prioritization of releasing a fix for this vulnerability.
What can I do if my product is listed as "Fix deferred"?
Available options depend mostly on the Impact of the vulnerability and the current Life Cycle phase of your product. Overall, you have the following options:
- Apply a mitigation (if one exists).
- Open a This content is not included.support case to request a prioritization of releasing a fix for this vulnerability.
- Red Hat Engineering focuses on addressing high-priority issues based on their complexity or limited lifecycle support. Therefore, lower-priority issues will not receive immediate fixes.
What is a mitigation?
I have a Red Hat product but it is not in the above list, is it affected?
Why is my security scanner reporting my product as vulnerable to this vulnerability even though my product version is fixed or not affected?
Not sure what something means? Check out our Security Glossary.