CVE Vulnerabilities

CVE-2021-20289

Generation of Error Message Containing Sensitive Information

Published: Mar 26, 2021 | Modified: May 10, 2022
CVSS 3.x
5.3
MEDIUM
Source:
NVD
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
CVSS 2.x
5 MEDIUM
AV:N/AC:L/Au:N/C:P/I:N/A:N
RedHat/V2
RedHat/V3
5.3 LOW
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
Ubuntu
LOW

A flaw was found in RESTEasy in all versions of RESTEasy up to 4.6.0.Final. The endpoint class and method names are returned as part of the exception response when RESTEasy cannot convert one of the request URI path or query values to the matching JAX-RS resource methods parameter value. The highest threat from this vulnerability is to data confidentiality.

Weakness

The product generates an error message that includes sensitive information about its environment, users, or associated data.

Affected Software

Name Vendor Start Version End Version
Resteasy Redhat * 4.6.0 (including)
EAP 7.3.10 GA RedHat resteasy-jaxrs *
EAP 7.4.2 release RedHat *
Red Hat AMQ 7.9.0 RedHat resteasy-jaxrs *
Red Hat build of Quarkus 2.2.3 RedHat resteasy-core *
Red Hat EAP-XP 2 via EAP 7.3.x base RedHat resteasy-jaxrs *
Red Hat Integration Camel Quarkus RedHat resteasy-core *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 6 RedHat eap7-apache-cxf-0:3.3.12-1.redhat_00001.1.el6eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 6 RedHat eap7-ironjacamar-0:1.5.3-1.Final_redhat_00001.1.el6eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 6 RedHat eap7-jakarta-el-0:3.0.3-3.redhat_00007.1.el6eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 6 RedHat eap7-jboss-ejb-client-0:4.0.43-1.Final_redhat_00001.1.el6eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 6 RedHat eap7-jboss-server-migration-0:1.7.2-10.Final_redhat_00011.1.el6eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 6 RedHat eap7-jsoup-0:1.14.2-1.redhat_00002.1.el6eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 6 RedHat eap7-resteasy-0:3.11.5-1.Final_redhat_00001.1.el6eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 6 RedHat eap7-undertow-0:2.0.41-1.SP1_redhat_00001.1.el6eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 6 RedHat eap7-wildfly-0:7.3.10-2.GA_redhat_00003.1.el6eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 6 RedHat eap7-wildfly-elytron-0:1.10.15-1.Final_redhat_00001.1.el6eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 6 RedHat eap7-wss4j-0:2.2.7-1.redhat_00001.1.el6eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 6 RedHat eap7-xml-security-0:2.1.7-1.redhat_00001.1.el6eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 7 RedHat eap7-apache-cxf-0:3.3.12-1.redhat_00001.1.el7eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 7 RedHat eap7-ironjacamar-0:1.5.3-1.Final_redhat_00001.1.el7eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 7 RedHat eap7-jakarta-el-0:3.0.3-3.redhat_00007.1.el7eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 7 RedHat eap7-jboss-ejb-client-0:4.0.43-1.Final_redhat_00001.1.el7eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 7 RedHat eap7-jboss-server-migration-0:1.7.2-10.Final_redhat_00011.1.el7eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 7 RedHat eap7-jsoup-0:1.14.2-1.redhat_00002.1.el7eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 7 RedHat eap7-resteasy-0:3.11.5-1.Final_redhat_00001.1.el7eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 7 RedHat eap7-undertow-0:2.0.41-1.SP1_redhat_00001.1.el7eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 7 RedHat eap7-wildfly-0:7.3.10-2.GA_redhat_00003.1.el7eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 7 RedHat eap7-wildfly-elytron-0:1.10.15-1.Final_redhat_00001.1.el7eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 7 RedHat eap7-wss4j-0:2.2.7-1.redhat_00001.1.el7eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 7 RedHat eap7-xml-security-0:2.1.7-1.redhat_00001.1.el7eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 8 RedHat eap7-apache-cxf-0:3.3.12-1.redhat_00001.1.el8eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 8 RedHat eap7-ironjacamar-0:1.5.3-1.Final_redhat_00001.1.el8eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 8 RedHat eap7-jakarta-el-0:3.0.3-3.redhat_00007.1.el8eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 8 RedHat eap7-jboss-ejb-client-0:4.0.43-1.Final_redhat_00001.1.el8eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 8 RedHat eap7-jboss-server-migration-0:1.7.2-10.Final_redhat_00011.1.el8eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 8 RedHat eap7-jsoup-0:1.14.2-1.redhat_00002.1.el8eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 8 RedHat eap7-resteasy-0:3.11.5-1.Final_redhat_00001.1.el8eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 8 RedHat eap7-undertow-0:2.0.41-1.SP1_redhat_00001.1.el8eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 8 RedHat eap7-wildfly-0:7.3.10-2.GA_redhat_00003.1.el8eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 8 RedHat eap7-wildfly-elytron-0:1.10.15-1.Final_redhat_00001.1.el8eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 8 RedHat eap7-wss4j-0:2.2.7-1.redhat_00001.1.el8eap *
Red Hat JBoss Enterprise Application Platform 7.3 for RHEL 8 RedHat eap7-xml-security-0:2.1.7-1.redhat_00001.1.el8eap *
Red Hat JBoss Enterprise Application Platform 7.4 for RHEL 8 RedHat eap7-resteasy-0:3.15.2-1.Final_redhat_00001.1.el8eap *
Red Hat JBoss Enterprise Application Platform 7.4 on RHEL 7 RedHat eap7-resteasy-0:3.15.2-1.Final_redhat_00001.1.el7eap *
Red Hat Single Sign-On 7.4.10 RedHat resteasy-jaxrs *
Red Hat Single Sign-On 7.5 for RHEL 7 RedHat rh-sso7-keycloak-0:15.0.4-1.redhat_00001.1.el7sso *
Red Hat Single Sign-On 7.5 for RHEL 8 RedHat rh-sso7-keycloak-0:15.0.4-1.redhat_00001.1.el8sso *
Red Hat Support for Spring Boot 2.5.10 RedHat resteasy-jaxrs *
RHAF Camel-K 1.8 RedHat resteasy-core *
RHEL-8 based Middleware Containers RedHat rh-sso-7/sso75-openshift-rhel8:7.5-15 *
RHINT Service Registry 2.0.2 GA RedHat resteasy-core *
RHSSO 7.5.1 RedHat *
Resteasy Ubuntu groovy *
Resteasy Ubuntu hirsute *
Resteasy Ubuntu impish *
Resteasy Ubuntu kinetic *
Resteasy Ubuntu lunar *
Resteasy Ubuntu mantic *
Resteasy Ubuntu trusty *
Resteasy Ubuntu xenial *
Resteasy3.0 Ubuntu bionic *
Resteasy3.0 Ubuntu groovy *
Resteasy3.0 Ubuntu hirsute *
Resteasy3.0 Ubuntu impish *
Resteasy3.0 Ubuntu kinetic *
Resteasy3.0 Ubuntu lunar *
Resteasy3.0 Ubuntu mantic *
Resteasy3.0 Ubuntu trusty *

Extended Description

The sensitive information may be valuable information on its own (such as a password), or it may be useful for launching other, more serious attacks. The error message may be created in different ways:

An attacker may use the contents of error messages to help launch another, more focused attack. For example, an attempt to exploit a path traversal weakness (CWE-22) might yield the full pathname of the installed application. In turn, this could be used to select the proper number of “..” sequences to navigate to the targeted file. An attack using SQL injection (CWE-89) might not initially succeed, but an error message could reveal the malformed query, which would expose query logic and possibly even passwords or other sensitive information used within the query.

Potential Mitigations

  • Ensure that error messages only contain minimal details that are useful to the intended audience and no one else. The messages need to strike the balance between being too cryptic (which can confuse users) or being too detailed (which may reveal more than intended). The messages should not reveal the methods that were used to determine the error. Attackers can use detailed information to refine or optimize their original attack, thereby increasing their chances of success.
  • If errors must be captured in some detail, record them in log messages, but consider what could occur if the log messages can be viewed by attackers. Highly sensitive information such as passwords should never be saved to log files.
  • Avoid inconsistent messaging that might accidentally tip off an attacker about internal state, such as whether a user account exists or not.

References