Vulnerabilities |
91 via 806 paths |
|---|---|
Dependencies |
132 |
Source |
GitHub |
Find, fix and prevent vulnerabilities in your code.
critical severity
- Vulnerable module: org.springframework.boot:spring-boot-autoconfigure
- Introduced through: com.github.hmcts:auth-checker-lib@2.1.5, org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-actuator-autoconfigure@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-starter-micrometer-metrics@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASERemediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › org.springframework.boot:spring-boot-starter-validation@3.5.16 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
Overview
Affected versions of this package are vulnerable to Improper Validation of Certificate with Host Mismatch due to establishing SSL connections to Cassandra without verifying that the hostname in the server's SSL certificate actually matched the hostname of the server being connected to. While the application might have verified that the certificate was signed by a trusted Certificate Authority (CA), failing to verify the hostname means an attacker could present any valid certificate (even one meant for a different domain) to successfully intercept the connection, leaving the application vulnerable to Man-in-the-Middle (MitM) attacks.
Remediation
Upgrade org.springframework.boot:spring-boot-autoconfigure to version 3.5.14, 4.0.6 or higher.
References
critical severity
- Vulnerable module: tools.jackson.core:jackson-databind
- Introduced through: net.logstash.logback:logstash-logback-encoder@9.0, org.flywaydb:flyway-core@12.11.0 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › net.logstash.logback:logstash-logback-encoder@9.0 › tools.jackson.core:jackson-databind@3.0.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-core@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-database-postgresql@12.11.0 › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-database-postgresql@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-jackson@4.2.0-M1 › tools.jackson.core:jackson-databind@3.0.1
Overview
Affected versions of this package are vulnerable to Deserialization of Untrusted Data in the DatabindContext._resolveAndValidateGeneric() method, which validates only the raw container class of a type identifier against the configured PolymorphicTypeValidator and not its nested generic type arguments. An attacker who controls the type identifier can instantiate a denied class, and reach unauthenticated remote code execution through an available gadget, by embedding that class as a generic parameter of an allowlisted container such as java.util.ArrayList<com.evil.Gadget>, which passes validation while the nested type is loaded, instantiated, and populated with attacker-controlled values. Exploitation requires polymorphic type validation to be enabled with a configured validator, the application to deserialize untrusted JSON, and a suitable gadget class on the classpath.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating object from sequence of bytes is called deserialization. Serialization is commonly used for communication (sharing objects between multiple hosts) and persistence (store the object state in a file or a database). It is an integral part of popular protocols like Remote Method Invocation (RMI), Java Management Extension (JMX), Java Messaging System (JMS), Action Message Format (AMF), Java Server Faces (JSF) ViewState, etc.
Deserialization of untrusted data (CWE-502) is when the application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, thus allowing the attacker to control the state or the flow of the execution.
Remediation
Upgrade tools.jackson.core:jackson-databind to version 3.1.4 or higher.
References
critical severity
- Vulnerable module: tools.jackson.core:jackson-databind
- Introduced through: net.logstash.logback:logstash-logback-encoder@9.0, org.flywaydb:flyway-core@12.11.0 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › net.logstash.logback:logstash-logback-encoder@9.0 › tools.jackson.core:jackson-databind@3.0.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-core@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-database-postgresql@12.11.0 › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-database-postgresql@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-jackson@4.2.0-M1 › tools.jackson.core:jackson-databind@3.0.1
Overview
Affected versions of this package are vulnerable to Incomplete List of Disallowed Inputs in the BasicPolymorphicTypeValidator.Builder.allowIfSubTypeIsArray() method, which allowlists an array based only on clazz.isArray() and does not validate the array's component type. An attacker who controls the deserialized JSON can instantiate types outside the configured allowlist by wrapping them in an array, because array elements without per-element type identifiers are constructed directly with no further validator check.
Remediation
Upgrade tools.jackson.core:jackson-databind to version 3.1.4 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-core
- Introduced through: com.fasterxml.jackson.core:jackson-core@2.9.9, com.fasterxml.jackson.core:jackson-databind@2.9.9.1 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to com.fasterxml.jackson.core:jackson-core@2.18.6.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.18.6.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-core is a Core Jackson abstractions, basic JSON streaming API implementation
Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling in which the non-blocking async JSON parser can be made to bypass the maxNumberLength constraint (default: 1000 characters) defined in StreamReadConstraints. An attacker can cause excessive memory allocation and CPU exhaustion by submitting JSON documents containing extremely long numeric values through the asynchronous parser interface.
PoC
The following JUnit 5 test demonstrates the vulnerability. It shows that the async parser accepts a 5,000-digit number, whereas the limit should be 1,000.
package tools.jackson.core.unittest.dos;
import java.nio.charset.StandardCharsets;
import org.junit.jupiter.api.Test;
import tools.jackson.core.*;
import tools.jackson.core.exc.StreamConstraintsException;
import tools.jackson.core.json.JsonFactory;
import tools.jackson.core.json.async.NonBlockingByteArrayJsonParser;
import static org.junit.jupiter.api.Assertions.*;
/**
* POC: Number Length Constraint Bypass in Non-Blocking (Async) JSON Parsers
*
* Authors: sprabhav7, rohan-repos
*
* maxNumberLength default = 1000 characters (digits).
* A number with more than 1000 digits should be rejected by any parser.
*
* BUG: The async parser never calls resetInt()/resetFloat() which is where
* validateIntegerLength()/validateFPLength() lives. Instead it calls
* _valueComplete() which skips all number length validation.
*
* CWE-770: Allocation of Resources Without Limits or Throttling
*/
class AsyncParserNumberLengthBypassTest {
private static final int MAX_NUMBER_LENGTH = 1000;
private static final int TEST_NUMBER_LENGTH = 5000;
private final JsonFactory factory = new JsonFactory();
// CONTROL: Sync parser correctly rejects a number exceeding maxNumberLength
@Test
void syncParserRejectsLongNumber() throws Exception {
byte[] payload = buildPayloadWithLongInteger(TEST_NUMBER_LENGTH);
// Output to console
System.out.println("[SYNC] Parsing " + TEST_NUMBER_LENGTH + "-digit number (limit: " + MAX_NUMBER_LENGTH + ")");
try {
try (JsonParser p = factory.createParser(ObjectReadContext.empty(), payload)) {
while (p.nextToken() != null) {
if (p.currentToken() == JsonToken.VALUE_NUMBER_INT) {
System.out.println("[SYNC] Accepted number with " + p.getText().length() + " digits — UNEXPECTED");
}
}
}
fail("Sync parser must reject a " + TEST_NUMBER_LENGTH + "-digit number");
} catch (StreamConstraintsException e) {
System.out.println("[SYNC] Rejected with StreamConstraintsException: " + e.getMessage());
}
}
// VULNERABILITY: Async parser accepts the SAME number that sync rejects
@Test
void asyncParserAcceptsLongNumber() throws Exception {
byte[] payload = buildPayloadWithLongInteger(TEST_NUMBER_LENGTH);
NonBlockingByteArrayJsonParser p =
(NonBlockingByteArrayJsonParser) factory.createNonBlockingByteArrayParser(ObjectReadContext.empty());
p.feedInput(payload, 0, payload.length);
p.endOfInput();
boolean foundNumber = false;
try {
while (p.nextToken() != null) {
if (p.currentToken() == JsonToken.VALUE_NUMBER_INT) {
foundNumber = true;
String numberText = p.getText();
assertEquals(TEST_NUMBER_LENGTH, numberText.length(),
"Async parser silently accepted all " + TEST_NUMBER_LENGTH + " digits");
}
}
// Output to console
System.out.println("[ASYNC INT] Accepted number with " + TEST_NUMBER_LENGTH + " digits — BUG CONFIRMED");
assertTrue(foundNumber, "Parser should have produced a VALUE_NUMBER_INT token");
} catch (StreamConstraintsException e) {
fail("Bug is fixed — async parser now correctly rejects long numbers: " + e.getMessage());
}
p.close();
}
private byte[] buildPayloadWithLongInteger(int numDigits) {
StringBuilder sb = new StringBuilder(numDigits + 10);
sb.append("{\"v\":");
for (int i = 0; i < numDigits; i++) {
sb.append((char) ('1' + (i % 9)));
}
sb.append('}');
return sb.toString().getBytes(StandardCharsets.UTF_8);
}
}
Details
Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its intended and legitimate users.
Unlike other vulnerabilities, DoS attacks usually do not aim at breaching security. Rather, they are focused on making websites and services unavailable to genuine users resulting in downtime.
One popular Denial of Service vulnerability is DDoS (a Distributed Denial of Service), an attack that attempts to clog network pipes to the system by generating a large volume of traffic from many machines.
When it comes to open source libraries, DoS vulnerabilities allow attackers to trigger such a crash or crippling of the service by using a flaw either in the application code or from the use of open source libraries.
Two common types of DoS vulnerabilities:
High CPU/Memory Consumption- An attacker sending crafted requests that could cause the system to take a disproportionate amount of time to process. For example, commons-fileupload:commons-fileupload.
Crash - An attacker sending crafted requests that could cause the system to crash. For Example, npm
wspackage
Remediation
Upgrade com.fasterxml.jackson.core:jackson-core to version 2.18.6, 2.21.1 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-core
- Introduced through: com.fasterxml.jackson.core:jackson-core@2.9.9, com.fasterxml.jackson.core:jackson-databind@2.9.9.1 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to com.fasterxml.jackson.core:jackson-core@2.18.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.18.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-core is a Core Jackson abstractions, basic JSON streaming API implementation
Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling in the enforcement of document length constraints in blocking, async, and DataInput parser processes. An attacker can cause excessive resource consumption by submitting oversized JSON documents that bypass configured size limits.
Remediation
Upgrade com.fasterxml.jackson.core:jackson-core to version 2.18.7, 2.21.2 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-core
- Introduced through: com.fasterxml.jackson.core:jackson-core@2.9.9, com.fasterxml.jackson.core:jackson-databind@2.9.9.1 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to com.fasterxml.jackson.core:jackson-core@2.18.8.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.18.8.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-core is a Core Jackson abstractions, basic JSON streaming API implementation
Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling in the NonBlockingUtf8JsonParserBase file. An attacker can exhaust system memory by streaming JSON input in small chunks to the asynchronous parser, causing unbounded accumulation of digit characters in memory due to missing validation of number length during chunked parsing. This can lead to denial of service by overwhelming the application's memory resources.
Remediation
Upgrade com.fasterxml.jackson.core:jackson-core to version 2.18.8, 2.21.4 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-core
- Introduced through: com.fasterxml.jackson.core:jackson-core@2.9.9, com.fasterxml.jackson.core:jackson-databind@2.9.9.1 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to com.fasterxml.jackson.core:jackson-core@2.15.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.15.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-core is a Core Jackson abstractions, basic JSON streaming API implementation
Affected versions of this package are vulnerable to Denial of Service (DoS) due to missing input size validation when performing numeric type conversions. A remote attacker can exploit this vulnerability by causing the application to deserialize data containing certain numeric types with large values, causing the application to exhaust all available resources.
Details
Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its intended and legitimate users.
Unlike other vulnerabilities, DoS attacks usually do not aim at breaching security. Rather, they are focused on making websites and services unavailable to genuine users resulting in downtime.
One popular Denial of Service vulnerability is DDoS (a Distributed Denial of Service), an attack that attempts to clog network pipes to the system by generating a large volume of traffic from many machines.
When it comes to open source libraries, DoS vulnerabilities allow attackers to trigger such a crash or crippling of the service by using a flaw either in the application code or from the use of open source libraries.
Two common types of DoS vulnerabilities:
High CPU/Memory Consumption- An attacker sending crafted requests that could cause the system to take a disproportionate amount of time to process. For example, commons-fileupload:commons-fileupload.
Crash - An attacker sending crafted requests that could cause the system to crash. For Example, npm
wspackage
Remediation
Upgrade com.fasterxml.jackson.core:jackson-core to version 2.15.0-rc1 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-core
- Introduced through: com.fasterxml.jackson.core:jackson-core@2.9.9, com.fasterxml.jackson.core:jackson-databind@2.9.9.1 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to com.fasterxml.jackson.core:jackson-core@2.15.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.15.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-core is a Core Jackson abstractions, basic JSON streaming API implementation
Affected versions of this package are vulnerable to Stack-based Buffer Overflow due to the parse process, which accepts an unlimited input file with deeply nested data. An attacker can cause a stack overflow and crash the application by providing input files with excessively deep nesting.
Remediation
Upgrade com.fasterxml.jackson.core:jackson-core to version 2.15.0-rc1 or higher.
References
high severity
- Vulnerable module: tools.jackson.core:jackson-core
- Introduced through: net.logstash.logback:logstash-logback-encoder@9.0, org.flywaydb:flyway-core@12.11.0 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › net.logstash.logback:logstash-logback-encoder@9.0 › tools.jackson.core:jackson-databind@3.0.1 › tools.jackson.core:jackson-core@3.0.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1 › tools.jackson.core:jackson-core@3.0.1Remediation: Upgrade to org.flywaydb:flyway-core@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-database-postgresql@12.11.0 › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1 › tools.jackson.core:jackson-core@3.0.1Remediation: Upgrade to org.flywaydb:flyway-database-postgresql@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-jackson@4.2.0-M1 › tools.jackson.core:jackson-databind@3.0.1 › tools.jackson.core:jackson-core@3.0.1
Overview
Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling in which the non-blocking async JSON parser can be made to bypass the maxNumberLength constraint (default: 1000 characters) defined in StreamReadConstraints. An attacker can cause excessive memory allocation and CPU exhaustion by submitting JSON documents containing extremely long numeric values through the asynchronous parser interface.
PoC
The following JUnit 5 test demonstrates the vulnerability. It shows that the async parser accepts a 5,000-digit number, whereas the limit should be 1,000.
package tools.jackson.core.unittest.dos;
import java.nio.charset.StandardCharsets;
import org.junit.jupiter.api.Test;
import tools.jackson.core.*;
import tools.jackson.core.exc.StreamConstraintsException;
import tools.jackson.core.json.JsonFactory;
import tools.jackson.core.json.async.NonBlockingByteArrayJsonParser;
import static org.junit.jupiter.api.Assertions.*;
/**
* POC: Number Length Constraint Bypass in Non-Blocking (Async) JSON Parsers
*
* Authors: sprabhav7, rohan-repos
*
* maxNumberLength default = 1000 characters (digits).
* A number with more than 1000 digits should be rejected by any parser.
*
* BUG: The async parser never calls resetInt()/resetFloat() which is where
* validateIntegerLength()/validateFPLength() lives. Instead it calls
* _valueComplete() which skips all number length validation.
*
* CWE-770: Allocation of Resources Without Limits or Throttling
*/
class AsyncParserNumberLengthBypassTest {
private static final int MAX_NUMBER_LENGTH = 1000;
private static final int TEST_NUMBER_LENGTH = 5000;
private final JsonFactory factory = new JsonFactory();
// CONTROL: Sync parser correctly rejects a number exceeding maxNumberLength
@Test
void syncParserRejectsLongNumber() throws Exception {
byte[] payload = buildPayloadWithLongInteger(TEST_NUMBER_LENGTH);
// Output to console
System.out.println("[SYNC] Parsing " + TEST_NUMBER_LENGTH + "-digit number (limit: " + MAX_NUMBER_LENGTH + ")");
try {
try (JsonParser p = factory.createParser(ObjectReadContext.empty(), payload)) {
while (p.nextToken() != null) {
if (p.currentToken() == JsonToken.VALUE_NUMBER_INT) {
System.out.println("[SYNC] Accepted number with " + p.getText().length() + " digits — UNEXPECTED");
}
}
}
fail("Sync parser must reject a " + TEST_NUMBER_LENGTH + "-digit number");
} catch (StreamConstraintsException e) {
System.out.println("[SYNC] Rejected with StreamConstraintsException: " + e.getMessage());
}
}
// VULNERABILITY: Async parser accepts the SAME number that sync rejects
@Test
void asyncParserAcceptsLongNumber() throws Exception {
byte[] payload = buildPayloadWithLongInteger(TEST_NUMBER_LENGTH);
NonBlockingByteArrayJsonParser p =
(NonBlockingByteArrayJsonParser) factory.createNonBlockingByteArrayParser(ObjectReadContext.empty());
p.feedInput(payload, 0, payload.length);
p.endOfInput();
boolean foundNumber = false;
try {
while (p.nextToken() != null) {
if (p.currentToken() == JsonToken.VALUE_NUMBER_INT) {
foundNumber = true;
String numberText = p.getText();
assertEquals(TEST_NUMBER_LENGTH, numberText.length(),
"Async parser silently accepted all " + TEST_NUMBER_LENGTH + " digits");
}
}
// Output to console
System.out.println("[ASYNC INT] Accepted number with " + TEST_NUMBER_LENGTH + " digits — BUG CONFIRMED");
assertTrue(foundNumber, "Parser should have produced a VALUE_NUMBER_INT token");
} catch (StreamConstraintsException e) {
fail("Bug is fixed — async parser now correctly rejects long numbers: " + e.getMessage());
}
p.close();
}
private byte[] buildPayloadWithLongInteger(int numDigits) {
StringBuilder sb = new StringBuilder(numDigits + 10);
sb.append("{\"v\":");
for (int i = 0; i < numDigits; i++) {
sb.append((char) ('1' + (i % 9)));
}
sb.append('}');
return sb.toString().getBytes(StandardCharsets.UTF_8);
}
}
Details
Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its intended and legitimate users.
Unlike other vulnerabilities, DoS attacks usually do not aim at breaching security. Rather, they are focused on making websites and services unavailable to genuine users resulting in downtime.
One popular Denial of Service vulnerability is DDoS (a Distributed Denial of Service), an attack that attempts to clog network pipes to the system by generating a large volume of traffic from many machines.
When it comes to open source libraries, DoS vulnerabilities allow attackers to trigger such a crash or crippling of the service by using a flaw either in the application code or from the use of open source libraries.
Two common types of DoS vulnerabilities:
High CPU/Memory Consumption- An attacker sending crafted requests that could cause the system to take a disproportionate amount of time to process. For example, commons-fileupload:commons-fileupload.
Crash - An attacker sending crafted requests that could cause the system to crash. For Example, npm
wspackage
Remediation
Upgrade tools.jackson.core:jackson-core to version 3.1.0 or higher.
References
high severity
- Vulnerable module: tools.jackson.core:jackson-core
- Introduced through: net.logstash.logback:logstash-logback-encoder@9.0, org.flywaydb:flyway-core@12.11.0 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › net.logstash.logback:logstash-logback-encoder@9.0 › tools.jackson.core:jackson-databind@3.0.1 › tools.jackson.core:jackson-core@3.0.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1 › tools.jackson.core:jackson-core@3.0.1Remediation: Upgrade to org.flywaydb:flyway-core@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-database-postgresql@12.11.0 › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1 › tools.jackson.core:jackson-core@3.0.1Remediation: Upgrade to org.flywaydb:flyway-database-postgresql@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-jackson@4.2.0-M1 › tools.jackson.core:jackson-databind@3.0.1 › tools.jackson.core:jackson-core@3.0.1
Overview
Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling in the enforcement of document length constraints in blocking, async, and DataInput parser processes. An attacker can cause excessive resource consumption by submitting oversized JSON documents that bypass configured size limits.
Remediation
Upgrade tools.jackson.core:jackson-core to version 3.1.1 or higher.
References
high severity
- Vulnerable module: tools.jackson.core:jackson-core
- Introduced through: net.logstash.logback:logstash-logback-encoder@9.0, org.flywaydb:flyway-core@12.11.0 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › net.logstash.logback:logstash-logback-encoder@9.0 › tools.jackson.core:jackson-databind@3.0.1 › tools.jackson.core:jackson-core@3.0.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1 › tools.jackson.core:jackson-core@3.0.1Remediation: Upgrade to org.flywaydb:flyway-core@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-database-postgresql@12.11.0 › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1 › tools.jackson.core:jackson-core@3.0.1Remediation: Upgrade to org.flywaydb:flyway-database-postgresql@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-jackson@4.2.0-M1 › tools.jackson.core:jackson-databind@3.0.1 › tools.jackson.core:jackson-core@3.0.1
Overview
Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling in the NonBlockingUtf8JsonParserBase file. An attacker can exhaust system memory by streaming JSON input in small chunks to the asynchronous parser, causing unbounded accumulation of digit characters in memory due to missing validation of number length during chunked parsing. This can lead to denial of service by overwhelming the application's memory resources.
Remediation
Upgrade tools.jackson.core:jackson-core to version 3.1.4 or higher.
References
high severity
new
- Vulnerable module: tools.jackson.core:jackson-databind
- Introduced through: net.logstash.logback:logstash-logback-encoder@9.0, org.flywaydb:flyway-core@12.11.0 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › net.logstash.logback:logstash-logback-encoder@9.0 › tools.jackson.core:jackson-databind@3.0.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-core@13.5.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-database-postgresql@12.11.0 › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-database-postgresql@13.5.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-jackson@4.2.0-M1 › tools.jackson.core:jackson-databind@3.0.1
Overview
Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling via the CoreXMLDeserializers.Std._deserialize path in src/main/java/com/fasterxml/jackson/databind/ext/CoreXMLDeserializers.java. An attacker can consume excessive CPU by supplying a JSON string bound to a javax.xml.datatype.Duration or XMLGregorianCalendar field, causing DatatypeFactory.newDuration(value) or newXMLGregorianCalendar(value) to parse arbitrarily long numeric components. This stalls the request-handling thread and can exhaust server CPU under default deserialization settings, denying service to other users.
Remediation
Upgrade tools.jackson.core:jackson-databind to version 3.1.6, 3.2.2 or higher.
References
high severity
new
- Vulnerable module: org.springframework:spring-expression
- Introduced through: org.springframework.security:spring-security-core@6.5.11, org.springframework.security:spring-security-web@6.5.11 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-expression@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-core@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-expression@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-web@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-core@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-config@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-config@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-web@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-config@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-expression@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-config@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-web@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-expression@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-web@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-config@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-config@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-web@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-web@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-health@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-http-converter@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-config@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.data:spring-data-jpa@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-config@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-web@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-actuator-autoconfigure@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-actuator-autoconfigure@4.2.0-M1 › org.springframework.boot:spring-boot-actuator@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-starter-micrometer-metrics@4.2.0-M1 › org.springframework.boot:spring-boot-micrometer-metrics@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-commons@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-sql@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-sql@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework.boot:spring-boot-http-converter@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-jackson@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework.boot:spring-boot-servlet@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-config@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-web@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-starter-micrometer-metrics@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-starter-micrometer-metrics@4.2.0-M1 › org.springframework.boot:spring-boot-micrometer-metrics@4.2.0-M1 › org.springframework.boot:spring-boot-micrometer-observation@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-commons@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-sql@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › org.springframework.boot:spring-boot-starter-validation@3.5.16 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-sql@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
Overview
Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling in the SimpleEvaluationContext file when the SpEL expression compiler is enabled through specific configuration settings. An attacker can cause unbounded class-loading growth and bypass enforced safety checks by submitting specially crafted expressions for evaluation.
Note: This is only exploitable if the application evaluates SpEL expressions using SimpleEvaluationContext and the SpEL expression compiler is active via the spring.expression.compiler.mode property or a SpelParserConfiguration set to IMMEDIATE or MIXED.
Remediation
Upgrade org.springframework:spring-expression to version 7.0.9 or higher.
References
high severity
new
- Vulnerable module: org.springframework:spring-web
- Introduced through: org.springframework.security:spring-security-web@6.5.11, org.springframework.boot:spring-boot-starter-web@4.2.0-M1 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-web@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-web@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-http-converter@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework.boot:spring-boot-http-converter@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework.boot:spring-boot-servlet@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
Overview
org.springframework:spring-web is a package that provides a comprehensive programming and configuration model for modern Java-based enterprise applications - on any kind of deployment platform.
Affected versions of this package are vulnerable to Sensitive Cookie in HTTPS Session Without "Secure" Attribute in the JettyCoreServerHttpResponse file. An attacker can compromise user session integrity by exploiting the omission of the sameSite attribute in serialized response cookies, potentially enabling cross-site request forgery (CSRF) attacks when a user interacts with a malicious website.
Remediation
Upgrade org.springframework:spring-web to version 7.0.9 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to XML External Entity (XXE) Injection. A flaw was found in FasterXML Jackson Databind, where it does not have entity expansion secured properly in the DOMDeserializer class. The highest threat from this vulnerability is data integrity.
Details
XXE Injection is a type of attack against an application that parses XML input. XML is a markup language that defines a set of rules for encoding documents in a format that is both human-readable and machine-readable. By default, many XML processors allow specification of an external entity, a URI that is dereferenced and evaluated during XML processing. When an XML document is being parsed, the parser can make a request and include the content at the specified URI inside of the XML document.
Attacks can include disclosing local files, which may contain sensitive data such as passwords or private user data, using file: schemes or relative paths in the system identifier.
For example, below is a sample XML document, containing an XML element- username.
<xml>
<?xml version="1.0" encoding="ISO-8859-1"?>
<username>John</username>
</xml>
An external XML entity - xxe, is defined using a system identifier and present within a DOCTYPE header. These entities can access local or remote content. For example the below code contains an external XML entity that would fetch the content of /etc/passwd and display it to the user rendered by username.
<xml>
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE foo [
<!ENTITY xxe SYSTEM "file:///etc/passwd" >]>
<username>&xxe;</username>
</xml>
Other XXE Injection attacks can access local resources that may not stop returning data, possibly impacting application availability and leading to Denial of Service.
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.6.7.4, 2.9.10.7, 2.10.5.1 or higher.
References
high severity
new
- Vulnerable module: org.springframework:spring-beans
- Introduced through: org.springframework.security:spring-security-core@6.5.11, org.springframework.security:spring-security-config@6.5.11 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-beans@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-core@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-config@6.5.11 › org.springframework:spring-beans@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-config@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-beans@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-web@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-core@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-config@6.5.11 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-config@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-web@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-core@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-config@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-config@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-web@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-config@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-beans@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-config@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-web@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-beans@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-web@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-web@6.2.19 › org.springframework:spring-beans@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-web@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-core@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-config@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-config@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-web@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-config@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-config@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-web@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-web@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-config@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-config@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-web@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-web@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-config@6.5.11 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-http-converter@4.2.0-M1 › org.springframework:spring-web@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework:spring-web@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework:spring-jdbc@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework:spring-jdbc@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.data:spring-data-jpa@4.2.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-config@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-config@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-web@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-web@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-config@6.5.11 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.data:spring-data-jpa@4.2.0-M1 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-health@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-http-converter@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-config@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.data:spring-data-jpa@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-config@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-web@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-web@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-web@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-web@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework.boot:spring-boot-http-converter@4.2.0-M1 › org.springframework:spring-web@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework.boot:spring-boot-servlet@4.2.0-M1 › org.springframework:spring-web@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework:spring-tx@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework:spring-tx@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework:spring-jdbc@7.1.0-M1 › org.springframework:spring-tx@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework:spring-jdbc@7.1.0-M1 › org.springframework:spring-tx@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.data:spring-data-jpa@4.2.0-M1 › org.springframework:spring-tx@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-commons@4.2.0-M1 › org.springframework.data:spring-data-commons@4.2.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.data:spring-data-jpa@4.2.0-M1 › org.springframework.data:spring-data-commons@4.2.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework:spring-jdbc@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework:spring-orm@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.data:spring-data-jpa@4.2.0-M1 › org.springframework:spring-orm@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-health@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-http-converter@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-config@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.data:spring-data-jpa@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-config@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-web@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-actuator-autoconfigure@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-actuator-autoconfigure@4.2.0-M1 › org.springframework.boot:spring-boot-actuator@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-starter-micrometer-metrics@4.2.0-M1 › org.springframework.boot:spring-boot-micrometer-metrics@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-commons@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-sql@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-sql@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework.boot:spring-boot-http-converter@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-jackson@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework.boot:spring-boot-servlet@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-config@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-web@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-commons@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework:spring-tx@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework:spring-tx@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework:spring-tx@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework:spring-tx@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework:spring-jdbc@7.1.0-M1 › org.springframework:spring-tx@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework:spring-orm@7.1.0-M1 › org.springframework:spring-tx@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.data:spring-data-jpa@4.2.0-M1 › org.springframework:spring-orm@7.1.0-M1 › org.springframework:spring-tx@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework:spring-orm@7.1.0-M1 › org.springframework:spring-jdbc@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.data:spring-data-jpa@4.2.0-M1 › org.springframework:spring-orm@7.1.0-M1 › org.springframework:spring-jdbc@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework:spring-orm@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-actuator-autoconfigure@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-actuator-autoconfigure@4.2.0-M1 › org.springframework.boot:spring-boot-actuator@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-starter-micrometer-metrics@4.2.0-M1 › org.springframework.boot:spring-boot-micrometer-metrics@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-commons@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-sql@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-sql@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework.boot:spring-boot-http-converter@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-jackson@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework.boot:spring-boot-servlet@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-config@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-web@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-starter-micrometer-metrics@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-starter-micrometer-metrics@4.2.0-M1 › org.springframework.boot:spring-boot-micrometer-metrics@4.2.0-M1 › org.springframework.boot:spring-boot-micrometer-observation@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-commons@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-sql@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework:spring-tx@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework:spring-tx@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework:spring-orm@7.1.0-M1 › org.springframework:spring-jdbc@7.1.0-M1 › org.springframework:spring-tx@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.data:spring-data-jpa@4.2.0-M1 › org.springframework:spring-orm@7.1.0-M1 › org.springframework:spring-jdbc@7.1.0-M1 › org.springframework:spring-tx@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework:spring-orm@7.1.0-M1 › org.springframework:spring-tx@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework:spring-jdbc@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework:spring-orm@7.1.0-M1 › org.springframework:spring-jdbc@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-starter-micrometer-metrics@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-starter-micrometer-metrics@4.2.0-M1 › org.springframework.boot:spring-boot-micrometer-metrics@4.2.0-M1 › org.springframework.boot:spring-boot-micrometer-observation@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-commons@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-sql@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework:spring-tx@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework:spring-tx@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework:spring-jdbc@7.1.0-M1 › org.springframework:spring-tx@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework:spring-orm@7.1.0-M1 › org.springframework:spring-jdbc@7.1.0-M1 › org.springframework:spring-tx@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › org.springframework.boot:spring-boot-starter-validation@3.5.16 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-sql@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework:spring-tx@7.1.0-M1 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › org.springframework.boot:spring-boot-starter-validation@3.5.16 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-sql@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-beans@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-aop@6.2.19 › org.springframework:spring-beans@6.2.19
Overview
org.springframework:spring-beans is a package that is the basis for Spring Framework's IoC container. The BeanFactory interface provides an advanced configuration mechanism capable of managing any type of object.
Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling via the data binding. An attacker can exhaust system memory by supplying a crafted property path with a large index value, causing unbounded allocation of list elements when the target object contains a self-populating list whose element type exposes sub-properties.
Note: This is only exploitable if the application uses Spring's data binding infrastructure to apply user-supplied property paths onto a target object, the target object contains a self-populating list implementation as a property, and the list's element type exposes sub-properties.
Remediation
Upgrade org.springframework:spring-beans to version 7.0.9 or higher.
References
high severity
new
- Vulnerable module: org.springframework:spring-expression
- Introduced through: org.springframework.security:spring-security-core@6.5.11, org.springframework.security:spring-security-web@6.5.11 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-expression@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-core@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-expression@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-web@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-core@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-config@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-config@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-web@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-config@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-expression@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-config@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-web@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-expression@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-web@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-config@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-config@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-web@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-web@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-health@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-http-converter@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-config@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.data:spring-data-jpa@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-config@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-web@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-actuator-autoconfigure@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-actuator-autoconfigure@4.2.0-M1 › org.springframework.boot:spring-boot-actuator@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-starter-micrometer-metrics@4.2.0-M1 › org.springframework.boot:spring-boot-micrometer-metrics@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-commons@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-sql@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-sql@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework.boot:spring-boot-http-converter@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-jackson@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework.boot:spring-boot-servlet@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-config@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-web@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-starter-micrometer-metrics@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-starter-micrometer-metrics@4.2.0-M1 › org.springframework.boot:spring-boot-micrometer-metrics@4.2.0-M1 › org.springframework.boot:spring-boot-micrometer-observation@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-commons@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-sql@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › org.springframework.boot:spring-boot-starter-validation@3.5.16 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-sql@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-hibernate@4.2.0-M1 › org.springframework.boot:spring-boot-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-transaction@4.2.0-M1 › org.springframework.boot:spring-boot-persistence@4.2.0-M1 › org.springframework.boot:spring-boot@4.2.0-M1 › org.springframework:spring-context@6.2.19 › org.springframework:spring-expression@6.2.19
Overview
Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling in the evaluation of user-supplied SpEL expressions containing the power operator (^) with a BigDecimal or BigInteger operand and a large exponent value. An attacker can cause excessive CPU and memory consumption by submitting specially crafted expressions.
Note: This is only exploitable if the application accepts and evaluates untrusted SpEL expressions and a BigDecimal or BigInteger value is accessible within the evaluation context.
Remediation
Upgrade org.springframework:spring-expression to version 7.0.9 or higher.
References
high severity
new
- Vulnerable module: org.springframework:spring-web
- Introduced through: org.springframework.security:spring-security-web@6.5.11, org.springframework.boot:spring-boot-starter-web@4.2.0-M1 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-web@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-web@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-http-converter@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework.boot:spring-boot-http-converter@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework.boot:spring-boot-servlet@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
Overview
org.springframework:spring-web is a package that provides a comprehensive programming and configuration model for modern Java-based enterprise applications - on any kind of deployment platform.
Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling in the PartEventHttpMessageReader file when maxInMemorySize is set to -1. An attacker can cause excessive memory consumption by uploading large multipart requests.
Note: This is only exploitable if the configuration explicitly sets maxInMemorySize to -1.
Remediation
Upgrade org.springframework:spring-web to version 7.0.9 or higher.
References
high severity
new
- Vulnerable module: org.springframework.security:spring-security-core
- Introduced through: org.springframework.security:spring-security-core@6.5.11, org.springframework.security:spring-security-config@6.5.11 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-core@6.5.11Remediation: Upgrade to org.springframework.security:spring-security-core@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-config@6.5.11 › org.springframework.security:spring-security-core@6.5.11Remediation: Upgrade to org.springframework.security:spring-security-config@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-web@6.5.11 › org.springframework.security:spring-security-core@6.5.11Remediation: Upgrade to org.springframework.security:spring-security-web@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-config@6.5.11 › org.springframework.security:spring-security-core@6.5.11
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-web@6.5.11 › org.springframework.security:spring-security-core@6.5.11
Overview
org.springframework.security:spring-security-core is a package that provides security services for the Spring IO Platform.
Affected versions of this package are vulnerable to Timing Attack via the comparison of sensitive values using standard string equality rather than constant-time comparison in DigestAuthenticationFilter, KeyBasedPersistenceTokenService, BalloonHashingPassword4jPasswordEncoder, Pbkdf2Password4jPasswordEncoder, and InMemoryOAuth2AuthorizationService. An attacker can recover secret values such as password hashes, authentication digests, verification keys, or OAuth2 token values by submitting a large number of requests and precisely measuring response times. This is only exploitable if an attacker can make a very large number of requests with low network jitter and precise timing measurements.
Remediation
Upgrade org.springframework.security:spring-security-core to version 7.0.7, 7.1.1 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.6.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. It mishandles the interaction between serialization gadgets and typing, related to com.pastdev.httpcomponents.configuration.JndiConfiguration.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.6.7.4, 2.9.10.6 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.4.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. It mishandles the interaction between serialization gadgets and typing, related to the class ignite-jta.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.6.7.4, 2.9.10.4 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.8.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. It mishandles the interaction between serialization gadgets and typing, related to org.apache.commons.dbcp2.datasources.PerUserPoolDataSource.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating object from sequence of bytes is called deserialization. Serialization is commonly used for communication (sharing objects between multiple hosts) and persistence (store the object state in a file or a database). It is an integral part of popular protocols like Remote Method Invocation (RMI), Java Management Extension (JMX), Java Messaging System (JMS), Action Message Format (AMF), Java Server Faces (JSF) ViewState, etc.
Deserialization of untrusted data (CWE-502), is when the application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, letting the attacker to control the state or the flow of the execution.
Java deserialization issues have been known for years. However, interest in the issue intensified greatly in 2015, when classes that could be abused to achieve remote code execution were found in a popular library (Apache Commons Collection). These classes were used in zero-days affecting IBM WebSphere, Oracle WebLogic and many other products.
An attacker just needs to identify a piece of software that has both a vulnerable class on its path, and performs deserialization on untrusted data. Then all they need to do is send the payload into the deserializer, getting the command executed.
Developers put too much trust in Java Object Serialization. Some even de-serialize objects pre-authentication. When deserializing an Object in Java you typically cast it to an expected type, and therefore Java's strict type system will ensure you only get valid object trees. Unfortunately, by the time the type checking happens, platform code has already created and executed significant logic. So, before the final type is checked a lot of code is executed from the readObject() methods of various objects, all of which is out of the developer's control. By combining the readObject() methods of various classes which are available on the classpath of the vulnerable application, an attacker can execute functions (including calling Runtime.exec() to execute local OS commands).
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.10.8 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.8.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. It mishandles the interaction between serialization gadgets and typing, related to org.apache.commons.dbcp2.datasources.SharedPoolDataSource.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating object from sequence of bytes is called deserialization. Serialization is commonly used for communication (sharing objects between multiple hosts) and persistence (store the object state in a file or a database). It is an integral part of popular protocols like Remote Method Invocation (RMI), Java Management Extension (JMX), Java Messaging System (JMS), Action Message Format (AMF), Java Server Faces (JSF) ViewState, etc.
Deserialization of untrusted data (CWE-502), is when the application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, letting the attacker to control the state or the flow of the execution.
Java deserialization issues have been known for years. However, interest in the issue intensified greatly in 2015, when classes that could be abused to achieve remote code execution were found in a popular library (Apache Commons Collection). These classes were used in zero-days affecting IBM WebSphere, Oracle WebLogic and many other products.
An attacker just needs to identify a piece of software that has both a vulnerable class on its path, and performs deserialization on untrusted data. Then all they need to do is send the payload into the deserializer, getting the command executed.
Developers put too much trust in Java Object Serialization. Some even de-serialize objects pre-authentication. When deserializing an Object in Java you typically cast it to an expected type, and therefore Java's strict type system will ensure you only get valid object trees. Unfortunately, by the time the type checking happens, platform code has already created and executed significant logic. So, before the final type is checked a lot of code is executed from the readObject() methods of various objects, all of which is out of the developer's control. By combining the readObject() methods of various classes which are available on the classpath of the vulnerable application, an attacker can execute functions (including calling Runtime.exec() to execute local OS commands).
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.10.8 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.8.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. It mishandles the interaction between serialization gadgets and typing, related to com.oracle.wls.shaded.org.apache.xalan.lib.sql.JNDIConnectionPool (aka embedded Xalan in org.glassfish.web/javax.servlet.jsp.jstl).
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.10.8 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.8.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. The package mishandles the interaction between serialization gadgets and typing, related to org.apache.tomcat.dbcp.dbcp.datasources.SharedPoolDataSource.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.10.8 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.8.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. The package mishandles the interaction between serialization gadgets and typing, related to org.apache.tomcat.dbcp.dbcp2.datasources.PerUserPoolDataSource.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.10.8 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.8.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. The package mishandles the interaction between serialization gadgets and typing, related to org.apache.tomcat.dbcp.dbcp.datasources.PerUserPoolDataSource.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.10.8 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.8.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. The package mishandles the interaction between serialization gadgets and typing, related to org.apache.commons.dbcp2.cpdsadapter.DriverAdapterCPDS.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.10.8 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.8.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. The package mishandles the interaction between serialization gadgets and typing, related to org.docx4j.org.apache.xalan.lib.sql.JNDIConnectionPool.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.10.8 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.8.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. The package mishandles the interaction between serialization gadgets and typing, related to oadd.org.apache.commons.dbcp.cpdsadapter.DriverAdapterCPDS.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.10.8 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.8.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. The package mishandles the interaction between serialization gadgets and typing, related to org.apache.tomcat.dbcp.dbcp2.cpdsadapter.DriverAdapterCPDS.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.10.8 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.8.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. The package mishandles the interaction between serialization gadgets and typing, related to org.apache.tomcat.dbcp.dbcp2.datasources.SharedPoolDataSource.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.10.8 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.8.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. The package mishandles the interaction between serialization gadgets and typing, related to com.newrelic.agent.deps.ch.qos.logback.core.db.DriverManagerConnectionSource.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.10.8 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.8.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. The package mishandles the interaction between serialization gadgets and typing, related to com.newrelic.agent.deps.ch.qos.logback.core.db.JNDIConnectionSource.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.10.8 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.8.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. The package mishandles the interaction between serialization gadgets and typing, related to org.apache.tomcat.dbcp.dbcp.cpdsadapter.DriverAdapterCPDS.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.10.8 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. A malicious user could perform a SSRF attack via the javax.swing gadget (specifically javax.swing.JTextPane).
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating object from sequence of bytes is called deserialization. Serialization is commonly used for communication (sharing objects between multiple hosts) and persistence (store the object state in a file or a database). It is an integral part of popular protocols like Remote Method Invocation (RMI), Java Management Extension (JMX), Java Messaging System (JMS), Action Message Format (AMF), Java Server Faces (JSF) ViewState, etc.
Deserialization of untrusted data (CWE-502), is when the application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, letting the attacker to control the state or the flow of the execution.
Java deserialization issues have been known for years. However, interest in the issue intensified greatly in 2015, when classes that could be abused to achieve remote code execution were found in a popular library (Apache Commons Collection). These classes were used in zero-days affecting IBM WebSphere, Oracle WebLogic and many other products.
An attacker just needs to identify a piece of software that has both a vulnerable class on its path, and performs deserialization on untrusted data. Then all they need to do is send the payload into the deserializer, getting the command executed.
Developers put too much trust in Java Object Serialization. Some even de-serialize objects pre-authentication. When deserializing an Object in Java you typically cast it to an expected type, and therefore Java's strict type system will ensure you only get valid object trees. Unfortunately, by the time the type checking happens, platform code has already created and executed significant logic. So, before the final type is checked a lot of code is executed from the readObject() methods of various objects, all of which is out of the developer's control. By combining the readObject() methods of various classes which are available on the classpath of the vulnerable application, an attacker can execute functions (including calling Runtime.exec() to execute local OS commands).
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.6.7.5, 2.9.10.7 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.9.2.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. SubTypeValidator.java mishandles default typing when ehcache is used, leading to remote code execution.
NOTE: This vulnerability has also been identified as: CVE-2019-14439
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.9.2, 2.8.11.4, 2.7.9.6 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. A Polymorphic Typing issue was discovered as com.zaxxer.hikari.HikariDataSource was not blocked.
Note: This is a different vulnerability than CVE-2019-14540.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.10, 2.8.11.5, 2.6.7.3 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. A Polymorphic Typing issue was discovered as com.zaxxer.hikari.HikariConfig was not blocked.
Note: This is a different vulnerability than CVE-2019-16335.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.10, 2.8.11.5, 2.6.7.3 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. It mishandles the interaction between serialization gadgets and typing, related to org.apache.cxf.jaxrs.provider.XSLTJaxbProvider.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.10, 2.8.11.5, 2.6.7.3 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. A Polymorphic Typing issue was discovered within org.apache.commons.dbcp.datasources.SharedPoolDataSource was not blocked. An attacker could leverage this gadget type to perform Remote Code Execution attacks through deserialization.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.10.1, 2.8.11.5, 2.6.7.3 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. A Polymorphic Typing issue was discovered as com.p6spy.engine.spy.P6DataSource was not blocked. An attacker could leverage this gadget type to perform Remote Code Execution attacks through deserialization.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.10.1, 2.8.11.5, 2.6.7.3 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. A Polymorphic Typing issue was discovered related to net.sf.ehcache.hibernate.EhcacheJtaTransactionManagerLookup.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.10 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. When Default Typing is enabled for an externally exposed JSON endpoint and the service has the apache-log4j-extra (version 1.2.x) jar in the classpath, and an attacker can provide a JNDI service to access, it is possible to make the service execute a malicious payload.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.10.1 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.2.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. Two additional net.sf.ehcache gadgets are not blacklisted.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.10.2 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.3.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data due to an incomplete black list (incomplete fix for CVE-2017-7525).
It lacks xbean-reflect/JNDI blocking, as demonstrated by org.apache.xbean.propertyeditor.JndiConverter.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.6.7.4, 2.7.9.7, 2.8.11.5, 2.9.10.3 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.4.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. Mishandles the interaction between serialization gadgets and typing, related to:
com.ibatis.sqlmap.engine.transaction.jta.JtaTransactionConfig(akaibatis-sqlmap)br.com.anteros.dbcp.AnterosDBCPConfig(akaanteros-core)org.apache.hadoop.shaded.com.zaxxer.hikari.HikariConfig(aka shadedhikari-config)
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.6.7.4, 2.7.9.7, 2.8.11.6, 2.9.10.4 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.3.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data due to an incomplete black list (incomplete fix for CVE-2017-7525).
It doesn't block common-configuration JNDI classes org.apache.commons.configuration.JNDIConfiguration and org.apache.commons.configuration2.JNDIConfiguration.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.6.7.3, 2.8.11.5, 2.9.10.3 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.4.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. The package mishandles the interaction between serialization gadgets and typing, related to com.caucho.config.types.ResourceRef (aka caucho-quercus).
Note: This vulnerability does not affect release 2.10.0 onward.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.6.7.4, 2.9.10.4 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.4.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. The package mishandles the interaction between serialization gadgets and typing, related to org.apache.aries.transaction.jms.internal.XaPooledConnectionFactory (aka aries.transaction.jms).
Note: This vulnerability does not affect release 2.10.0 onward.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.6.7.4, 2.9.10.4 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.4.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. The package mishandles the interaction between serialization gadgets and typing, related to gadget javax.swing.JEditorPane.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.6.7.4, 2.7.9.7, 2.8.11.6, 2.9.10.4 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.4.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. The package mishandles the interaction between serialization gadgets and typing, related to gadget org.aoju.bus.proxy.provider.remoting.RmiProvider (aka bus-proxy).
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.6.7.4, 2.9.10.4 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.4.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. It mishandles the interaction between serialization gadgets and typing, related to gadget org.apache.openjpa.ee.WASRegistryManagedRuntime (aka openjpa).
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.6.7.4, 2.9.10.4 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.4.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. It mishandles the interaction between serialization gadgets and typing, related to gadgets org.apache.activemq.* (aka activemq-jms, activemq-core, activemq-pool, and activemq-pool-jms).
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.6.7.4, 2.9.10.4 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.4.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. It mishandles the interaction between serialization gadgets and typing, related to gadget org.apache.commons.proxy.provider.remoting.RmiProvider (aka apache/commons-proxy).
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.6.7.4, 2.9.10.4 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.4.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. It mishandles the interaction between serialization gadgets and typing, related to org.apache.commons.jelly.impl.Embedded (aka commons-jelly).
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.6.7.4, 2.9.10.4 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.4.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. It mishandles the interaction between serialization gadgets and typing, related to org.springframework.aop.config.MethodLocatingFactoryBean (aka spring-aop).
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.6.7.4, 2.9.10.4 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.5.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. It is possible to conduct a Deserialization attack using the com.sun.org.apache.xalan.internal.lib.sql.JNDIConnectionPool (xalan2) class gadget if polymorphic type handling is enabled and an application using this package allows user input which gets deserialized.
Note: This vulnerability does not affect release 2.10.0 onward.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.6.7.4, 2.9.10.5 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.5.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. The package mishandles the interaction between serialization gadgets and typing, related to org.jsecurity.realm.jndi.JndiRealmFactory.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.6.7.4, 2.9.10.5 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.5.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. It is possible to conduct a Deserialization attack using the oadd.org.apache.xalan.lib.sql.JNDIConnectionPool (apache/drill) class gadget if polymorphic type handling is enabled and an application using this package allows user input which gets deserialized.
Note: This vulnerability does not affect release 2.10.0 onward.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.6.7.4, 2.9.10.5 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.5.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. It is possible to conduct a Deserialization attack using any of the following class gadget available within weblogic/oracle-aqjms if polymorphic type handling is enabled and an application using this package allows user input which gets deserialized.
- oracle.jms.AQjmsQueueConnectionFactory
- oracle.jms.AQjmsXATopicConnectionFactory
- oracle.jms.AQjmsTopicConnectionFactory
- oracle.jms.AQjmsXAQueueConnectionFactory
- oracle.jms.AQjmsXAConnectionFactory
Note: This vulnerability does not affect release 2.10.0 onward.
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.6.7.4, 2.9.10.5 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.9.2.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. SubTypeValidator.java mishandles default typing when ehcache is used, leading to remote code execution.
NOTE: This vulnerability has also been identified as: CVE-2019-14379
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating objects from a sequence of bytes is called deserialization. Deserialization of untrusted data (CWE-502) occurs when an application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, allowing the attacker to control the state or the flow of the execution.
com.fasterxml.jackson.core:jackson-databind allows deserialization of JSON input to Java objects. If an application using this dependency has the ability to deserialize a JSON string from an untrusted source, an attacker could leverage this vulnerability to conduct deserialization attacks.
Exploitation of unsafe deserialization attacks through jackson-databind requires the following prerequisites:
1. The target application allowing JSON user input which is processed by jackson-databind
An application using jackson-databind is only vulnerable if a user-provided JSON data is deserialized.
2. Polymorphic type handling for properties with nominal type are enabled
Polymorphic type handling refers to the addition of enough type information so that the deserializer can instantiate the appropriate subtype of a value. Use of "default typing" is considered dangerous due to the possibility of an untrusted method (gadget) managing to specify a class that is accessible through the class-loader and therefore, exposing a set of methods and/or fields.
3. An exploitable gadget class is available for the attacker to leverage
Gadget chains are specially crafted method sequences that can be created by an attacker in order to change the flow of code execution. These gadgets are often methods introduced by third-party components which an attacker could utilise in order to attack the target application. Not every gadget out there is supported by jackson-databind. The maintainers of jackson-databind proactively blacklists possible serialization gadgets in an attempt to ensure that it is not possible for an attacker to chain gadgets during serialization.
Further reading:
- On Jackson CVEs: Don’t Panic on Medium
- NCC Group Jackson Deserialization WhitePaper
- Java Security Best Practices
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.9.9.2, 2.8.11.4, 2.7.9.6 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.9.10.6.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data. It mishandles the interaction between serialization gadgets and typing, related to br.com.anteros.dbcp.AnterosDBCPDataSource (aka Anteros-DBCP).
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating object from sequence of bytes is called deserialization. Serialization is commonly used for communication (sharing objects between multiple hosts) and persistence (store the object state in a file or a database). It is an integral part of popular protocols like Remote Method Invocation (RMI), Java Management Extension (JMX), Java Messaging System (JMS), Action Message Format (AMF), Java Server Faces (JSF) ViewState, etc.
Deserialization of untrusted data (CWE-502), is when the application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, letting the attacker to control the state or the flow of the execution.
Java deserialization issues have been known for years. However, interest in the issue intensified greatly in 2015, when classes that could be abused to achieve remote code execution were found in a popular library (Apache Commons Collection). These classes were used in zero-days affecting IBM WebSphere, Oracle WebLogic and many other products.
An attacker just needs to identify a piece of software that has both a vulnerable class on its path, and performs deserialization on untrusted data. Then all they need to do is send the payload into the deserializer, getting the command executed.
Developers put too much trust in Java Object Serialization. Some even de-serialize objects pre-authentication. When deserializing an Object in Java you typically cast it to an expected type, and therefore Java's strict type system will ensure you only get valid object trees. Unfortunately, by the time the type checking happens, platform code has already created and executed significant logic. So, before the final type is checked a lot of code is executed from the readObject() methods of various objects, all of which is out of the developer's control. By combining the readObject() methods of various classes which are available on the classpath of the vulnerable application, an attacker can execute functions (including calling Runtime.exec() to execute local OS commands).
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.6.7.4, 2.9.10.6 or higher.
References
high severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.12.6.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Denial of Service (DoS) via a large depth of nested objects.
Details
Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its intended and legitimate users.
Unlike other vulnerabilities, DoS attacks usually do not aim at breaching security. Rather, they are focused on making websites and services unavailable to genuine users resulting in downtime.
One popular Denial of Service vulnerability is DDoS (a Distributed Denial of Service), an attack that attempts to clog network pipes to the system by generating a large volume of traffic from many machines.
When it comes to open source libraries, DoS vulnerabilities allow attackers to trigger such a crash or crippling of the service by using a flaw either in the application code or from the use of open source libraries.
Two common types of DoS vulnerabilities:
High CPU/Memory Consumption- An attacker sending crafted requests that could cause the system to take a disproportionate amount of time to process. For example, commons-fileupload:commons-fileupload.
Crash - An attacker sending crafted requests that could cause the system to crash. For Example, npm
wspackage
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.12.6.1, 2.13.2.1 or higher.
References
high severity
- Vulnerable module: org.springframework.boot:spring-boot-autoconfigure
- Introduced through: com.github.hmcts:auth-checker-lib@2.1.5, org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-actuator-autoconfigure@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-starter-micrometer-metrics@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASERemediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › org.springframework.boot:spring-boot-starter-validation@3.5.16 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
Overview
Affected versions of this package are vulnerable to Denial of Service (DoS) if Spring MVC is used together with a reverse proxy cache.
Specifically, an application is vulnerable if all of the conditions are true:
- The application has Spring MVC auto-configuration enabled. This is the case by default if Spring MVC is on the classpath.
- The application uses Spring Boot's welcome page support, either static or templated.
- The application is deployed behind a proxy which caches 404 responses.
The application is NOT vulnerable if any of the following are true:
- Spring MVC auto-configuration is disabled. This is true if
WebMvcAutoConfigurationis explicitly excluded, if Spring MVC is not on the classpath, or ifspring.main.web-application-typeis set to a value other thanSERVLET. - The application does not use Spring Boot's welcome page support.
- There is no proxy which caches 404 responses.
Workaround
Users who are unable to upgrade should configure the reverse proxy not to cache 404 responses and/or not to cache responses to requests to the root (/) of the application.
Details
Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its intended and legitimate users.
Unlike other vulnerabilities, DoS attacks usually do not aim at breaching security. Rather, they are focused on making websites and services unavailable to genuine users resulting in downtime.
One popular Denial of Service vulnerability is DDoS (a Distributed Denial of Service), an attack that attempts to clog network pipes to the system by generating a large volume of traffic from many machines.
When it comes to open source libraries, DoS vulnerabilities allow attackers to trigger such a crash or crippling of the service by using a flaw either in the application code or from the use of open source libraries.
Two common types of DoS vulnerabilities:
High CPU/Memory Consumption- An attacker sending crafted requests that could cause the system to take a disproportionate amount of time to process. For example, commons-fileupload:commons-fileupload.
Crash - An attacker sending crafted requests that could cause the system to crash. For Example, npm
wspackage
Remediation
Upgrade org.springframework.boot:spring-boot-autoconfigure to version 2.5.15, 2.6.15, 2.7.12, 3.0.7 or higher.
References
high severity
new
- Vulnerable module: org.springframework:spring-web
- Introduced through: org.springframework.security:spring-security-web@6.5.11, org.springframework.boot:spring-boot-starter-web@4.2.0-M1 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-web@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-web@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-http-converter@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework.boot:spring-boot-http-converter@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework.boot:spring-boot-servlet@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
Overview
org.springframework:spring-web is a package that provides a comprehensive programming and configuration model for modern Java-based enterprise applications - on any kind of deployment platform.
Affected versions of this package are vulnerable to Cross-site Scripting (XSS) via the Errors.getFieldErrors() or Errors.getFieldError() accessors when rendering field errors with HTML escaping enabled. An attacker can inject arbitrary HTML or JavaScript code by supplying crafted input that is not properly escaped.
Details
Cross-site scripting (or XSS) is a code vulnerability that occurs when an attacker “injects” a malicious script into an otherwise trusted website. The injected script gets downloaded and executed by the end user’s browser when the user interacts with the compromised website.
This is done by escaping the context of the web application; the web application then delivers that data to its users along with other trusted dynamic content, without validating it. The browser unknowingly executes malicious script on the client side (through client-side languages; usually JavaScript or HTML) in order to perform actions that are otherwise typically blocked by the browser’s Same Origin Policy.
Injecting malicious code is the most prevalent manner by which XSS is exploited; for this reason, escaping characters in order to prevent this manipulation is the top method for securing code against this vulnerability.
Escaping means that the application is coded to mark key characters, and particularly key characters included in user input, to prevent those characters from being interpreted in a dangerous context. For example, in HTML, < can be coded as < and > can be coded as > in order to be interpreted and displayed as themselves in text, while within the code itself, they are used for HTML tags. If malicious content is injected into an application that escapes special characters and that malicious content uses < and > as HTML tags, those characters are nonetheless not interpreted as HTML tags by the browser if they’ve been correctly escaped in the application code and in this way the attempted attack is diverted.
The most prominent use of XSS is to steal cookies (source: OWASP HttpOnly) and hijack user sessions, but XSS exploits have been used to expose sensitive information, enable access to privileged services and functionality and deliver malware.
Types of attacks
There are a few methods by which XSS can be manipulated:
| Type | Origin | Description |
|---|---|---|
| Stored | Server | The malicious code is inserted in the application (usually as a link) by the attacker. The code is activated every time a user clicks the link. |
| Reflected | Server | The attacker delivers a malicious link externally from the vulnerable web site application to a user. When clicked, malicious code is sent to the vulnerable web site, which reflects the attack back to the user’s browser. |
| DOM-based | Client | The attacker forces the user’s browser to render a malicious page. The data in the page itself delivers the cross-site scripting data. |
| Mutated | The attacker injects code that appears safe, but is then rewritten and modified by the browser, while parsing the markup. An example is rebalancing unclosed quotation marks or even adding quotation marks to unquoted parameters. |
Affected environments
The following environments are susceptible to an XSS attack:
- Web servers
- Application servers
- Web application environments
How to prevent
This section describes the top best practices designed to specifically protect your code:
- Sanitize data input in an HTTP request before reflecting it back, ensuring all data is validated, filtered or escaped before echoing anything back to the user, such as the values of query parameters during searches.
- Convert special characters such as
?,&,/,<,>and spaces to their respective HTML or URL encoded equivalents. - Give users the option to disable client-side scripts.
- Redirect invalid requests.
- Detect simultaneous logins, including those from two separate IP addresses, and invalidate those sessions.
- Use and enforce a Content Security Policy (source: Wikipedia) to disable any features that might be manipulated for an XSS attack.
- Read the documentation for any of the libraries referenced in your code to understand which elements allow for embedded HTML.
Remediation
Upgrade org.springframework:spring-web to version 7.0.9 or higher.
References
high severity
new
- Vulnerable module: org.springframework.security:spring-security-crypto
- Introduced through: org.springframework.security:spring-security-crypto@6.5.11, org.springframework.security:spring-security-core@6.5.11 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-crypto@6.5.11Remediation: Upgrade to org.springframework.security:spring-security-crypto@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-core@6.5.11 › org.springframework.security:spring-security-crypto@6.5.11Remediation: Upgrade to org.springframework.security:spring-security-core@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-config@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework.security:spring-security-crypto@6.5.11Remediation: Upgrade to org.springframework.security:spring-security-config@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-web@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework.security:spring-security-crypto@6.5.11Remediation: Upgrade to org.springframework.security:spring-security-web@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-config@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework.security:spring-security-crypto@6.5.11
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-web@6.5.11 › org.springframework.security:spring-security-core@6.5.11 › org.springframework.security:spring-security-crypto@6.5.11
Overview
org.springframework.security:spring-security-crypto is a spring-security-crypto library for Spring Security.
Affected versions of this package are vulnerable to Generation of Predictable IV with CBC Mode via AesBytesEncryptor when using the two-argument constructor or specifying a null IV generator with CBC mode. An attacker can correlate encrypted values, determine when two records share the same plaintext, and mount dictionary attacks by pre-encrypting candidate values and comparing the results if they have read access to the encrypted data store.
Remediation
Upgrade org.springframework.security:spring-security-crypto to version 7.0.7, 7.1.1 or higher.
References
high severity
- Vulnerable module: tools.jackson.core:jackson-core
- Introduced through: net.logstash.logback:logstash-logback-encoder@9.0, org.flywaydb:flyway-core@12.11.0 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › net.logstash.logback:logstash-logback-encoder@9.0 › tools.jackson.core:jackson-databind@3.0.1 › tools.jackson.core:jackson-core@3.0.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1 › tools.jackson.core:jackson-core@3.0.1Remediation: Upgrade to org.flywaydb:flyway-core@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-database-postgresql@12.11.0 › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1 › tools.jackson.core:jackson-core@3.0.1Remediation: Upgrade to org.flywaydb:flyway-database-postgresql@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-jackson@4.2.0-M1 › tools.jackson.core:jackson-databind@3.0.1 › tools.jackson.core:jackson-core@3.0.1
Overview
Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling in ReaderBasedJsonParser.java and UTF8DataInputJsonParser.java, when processing deeply nested data. A regression in 3.0 versions caused the StreamReadConstraints.maxNestingDepth setting for DataInput to not be checked, allowing resources to be overwhelmed by malicious inputs.
Remediation
Upgrade tools.jackson.core:jackson-core to version 3.1.0 or higher.
References
high severity
- Vulnerable module: tools.jackson.core:jackson-databind
- Introduced through: net.logstash.logback:logstash-logback-encoder@9.0, org.flywaydb:flyway-core@12.11.0 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › net.logstash.logback:logstash-logback-encoder@9.0 › tools.jackson.core:jackson-databind@3.0.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-core@13.0.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-database-postgresql@12.11.0 › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-database-postgresql@13.0.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-jackson@4.2.0-M1 › tools.jackson.core:jackson-databind@3.0.1
Overview
Affected versions of this package are vulnerable to Incorrect Authorization in the deserialization process when handling properties annotated with both @JsonView and @JsonUnwrapped. An attacker can modify data that should be restricted to a higher-privileged view by supplying crafted JSON input.
Remediation
Upgrade tools.jackson.core:jackson-databind to version 3.1.5, 3.2.1 or higher.
References
medium severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.18.9.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Improperly Controlled Modification of Dynamically-Determined Object Attributes in the BeanDeserializerBase.createContextual() method, which applies the per-property exclusions through _handleByNameInclusion() and then rebuilds the property map from the unfiltered original, overwriting the filtered map and restoring every property the exclusion had removed. An attacker can set fields that were marked ignored, enabling mass assignment, by supplying those property names in untrusted JSON during deserialization. Exploitation requires case-insensitive property matching to be enabled via @JsonFormat with ACCEPT_CASE_INSENSITIVE_PROPERTIES alongside per-property @JsonIgnoreProperties.
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.18.9, 2.21.5, 2.22.1 or higher.
References
medium severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.18.8.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Server-side Request Forgery (SSRF) in the JDKFromStringDeserializer class, which constructs InetSocketAddress and resolves the hostname through DNS at deserialization time. An attacker can force the server to issue outbound DNS lookups for chosen hostnames by submitting JSON that is deserialized into a type holding an InetSocketAddress field, with no authentication required. The observable effect is limited to DNS resolution of attacker-chosen names, useful for out-of-band interaction or internal resolver probing rather than a full outbound request, and it applies only where the application deserializes untrusted JSON into types containing such fields.
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.18.8, 2.21.4 or higher.
References
medium severity
new
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.18.9.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Server-side Request Forgery (SSRF) through the STD_INET_ADDRESS branch in FromStringDeserializer in src/main/java/com/fasterxml/jackson/databind/deser/std/FromStringDeserializer.java. An attacker can trigger outbound DNS lookups and blind SSRF behavior by supplying a hostname string in JSON that is deserialized into java.net.InetAddress. When application code binds untrusted input into an InetAddress field or type, the deserializer calls InetAddress.getByName(value) on the attacker-controlled string and resolves it before any application validation runs. This lets an attacker force DNS-based callbacks or probe internal hostnames, causing unwanted network egress and leaking resolver-visible information.
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.18.9, 2.21.5, 2.22.1 or higher.
References
medium severity
new
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.18.10.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Use of Externally-Controlled Input to Select Classes or Code ('Unsafe Reflection') through NioPathDeserializer in src/main/java/com/fasterxml/jackson/databind/ext/NioPathDeserializer.java. An attacker can force readValue() to resolve an attacker-controlled java.nio.file.Path URI by supplying a non-file scheme such as jar:, http:, s3:, or a custom provider scheme in untrusted JSON. That input reaches new URI(value) and then Path.of(uri), which falls back to ServiceLoader<FileSystemProvider> resolution and can invoke a matching provider’s getPath(uri) during deserialization. The result is unintended provider loading and provider-driven path handling inside the application, which can trigger denial of service or other side effects depending on what FileSystemProvider implementations are present on the classpath.
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.18.10, 2.21.6, 2.22.2 or higher.
References
medium severity
- Vulnerable module: tools.jackson.core:jackson-databind
- Introduced through: net.logstash.logback:logstash-logback-encoder@9.0, org.flywaydb:flyway-core@12.11.0 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › net.logstash.logback:logstash-logback-encoder@9.0 › tools.jackson.core:jackson-databind@3.0.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-core@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-database-postgresql@12.11.0 › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-database-postgresql@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-jackson@4.2.0-M1 › tools.jackson.core:jackson-databind@3.0.1
Overview
Affected versions of this package are vulnerable to Improperly Controlled Modification of Dynamically-Determined Object Attributes in the POJOPropertiesCollector._renameProperties() and BeanDeserializerFactory.addBeanProps() methods, which rename rather than drop a property whose getter carries @JsonProperty and whose setter carries @JsonIgnore, leaving the private backing field writable. An attacker can write a field that was meant to be unsettable, enabling property tampering and mass assignment, by supplying the renamed JSON key during deserialization, because the factory observes hasField()==true and builds a writable FieldProperty for the backing field. Exploitation requires MapperFeature.INFER_PROPERTY_MUTATORS to be enabled, which is the default, and a target type that pairs a renamed getter with an ignored setter, and the impact is limited to writing existing fields with no path to remote code execution.
Remediation
Upgrade tools.jackson.core:jackson-databind to version 3.1.4 or higher.
References
medium severity
- Vulnerable module: tools.jackson.core:jackson-databind
- Introduced through: net.logstash.logback:logstash-logback-encoder@9.0, org.flywaydb:flyway-core@12.11.0 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › net.logstash.logback:logstash-logback-encoder@9.0 › tools.jackson.core:jackson-databind@3.0.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-core@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-database-postgresql@12.11.0 › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-database-postgresql@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-jackson@4.2.0-M1 › tools.jackson.core:jackson-databind@3.0.1
Overview
Affected versions of this package are vulnerable to Improperly Controlled Modification of Dynamically-Determined Object Attributes in the BeanDeserializerBase.createContextual() method, which applies the per-property exclusions through _handleByNameInclusion() and then rebuilds the property map from the unfiltered original, overwriting the filtered map and restoring every property the exclusion had removed. An attacker can set fields that were marked ignored, enabling mass assignment, by supplying those property names in untrusted JSON during deserialization. Exploitation requires case-insensitive property matching to be enabled via @JsonFormat with ACCEPT_CASE_INSENSITIVE_PROPERTIES alongside per-property @JsonIgnoreProperties.
Remediation
Upgrade tools.jackson.core:jackson-databind to version 3.1.4 or higher.
References
medium severity
- Vulnerable module: tools.jackson.core:jackson-databind
- Introduced through: net.logstash.logback:logstash-logback-encoder@9.0, org.flywaydb:flyway-core@12.11.0 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › net.logstash.logback:logstash-logback-encoder@9.0 › tools.jackson.core:jackson-databind@3.0.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-core@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-database-postgresql@12.11.0 › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-database-postgresql@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-jackson@4.2.0-M1 › tools.jackson.core:jackson-databind@3.0.1
Overview
Affected versions of this package are vulnerable to Improperly Controlled Modification of Dynamically-Determined Object Attributes in the POJOPropertiesCollector._removeUnwantedIgnorals process. An attacker can access or modify properties that were intended to be ignored by supplying JSON input with keys matching the renamed property names, thereby bypassing intended access restrictions.
Remediation
Upgrade tools.jackson.core:jackson-databind to version 3.1.4 or higher.
References
medium severity
- Vulnerable module: tools.jackson.core:jackson-databind
- Introduced through: net.logstash.logback:logstash-logback-encoder@9.0, org.flywaydb:flyway-core@12.11.0 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › net.logstash.logback:logstash-logback-encoder@9.0 › tools.jackson.core:jackson-databind@3.0.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-core@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-database-postgresql@12.11.0 › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-database-postgresql@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-jackson@4.2.0-M1 › tools.jackson.core:jackson-databind@3.0.1
Overview
Affected versions of this package are vulnerable to Server-side Request Forgery (SSRF) in the JDKFromStringDeserializer class, which constructs InetSocketAddress and resolves the hostname through DNS at deserialization time. An attacker can force the server to issue outbound DNS lookups for chosen hostnames by submitting JSON that is deserialized into a type holding an InetSocketAddress field, with no authentication required. The observable effect is limited to DNS resolution of attacker-chosen names, useful for out-of-band interaction or internal resolver probing rather than a full outbound request, and it applies only where the application deserializes untrusted JSON into types containing such fields.
Remediation
Upgrade tools.jackson.core:jackson-databind to version 3.1.4 or higher.
References
medium severity
new
- Vulnerable module: tools.jackson.core:jackson-databind
- Introduced through: net.logstash.logback:logstash-logback-encoder@9.0, org.flywaydb:flyway-core@12.11.0 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › net.logstash.logback:logstash-logback-encoder@9.0 › tools.jackson.core:jackson-databind@3.0.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-core@13.0.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-database-postgresql@12.11.0 › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-database-postgresql@13.0.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-jackson@4.2.0-M1 › tools.jackson.core:jackson-databind@3.0.1
Overview
Affected versions of this package are vulnerable to Server-side Request Forgery (SSRF) through the STD_INET_ADDRESS branch in FromStringDeserializer in src/main/java/com/fasterxml/jackson/databind/deser/std/FromStringDeserializer.java. An attacker can trigger outbound DNS lookups and blind SSRF behavior by supplying a hostname string in JSON that is deserialized into java.net.InetAddress. When application code binds untrusted input into an InetAddress field or type, the deserializer calls InetAddress.getByName(value) on the attacker-controlled string and resolves it before any application validation runs. This lets an attacker force DNS-based callbacks or probe internal hostnames, causing unwanted network egress and leaking resolver-visible information.
Remediation
Upgrade tools.jackson.core:jackson-databind to version 3.1.5, 3.2.1 or higher.
References
medium severity
new
- Vulnerable module: tools.jackson.core:jackson-databind
- Introduced through: net.logstash.logback:logstash-logback-encoder@9.0, org.flywaydb:flyway-core@12.11.0 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › net.logstash.logback:logstash-logback-encoder@9.0 › tools.jackson.core:jackson-databind@3.0.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-core@13.5.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-database-postgresql@12.11.0 › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-database-postgresql@13.5.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-jackson@4.2.0-M1 › tools.jackson.core:jackson-databind@3.0.1
Overview
Affected versions of this package are vulnerable to Use of Externally-Controlled Input to Select Classes or Code ('Unsafe Reflection') through NioPathDeserializer in src/main/java/com/fasterxml/jackson/databind/ext/NioPathDeserializer.java. An attacker can force readValue() to resolve an attacker-controlled java.nio.file.Path URI by supplying a non-file scheme such as jar:, http:, s3:, or a custom provider scheme in untrusted JSON. That input reaches new URI(value) and then Path.of(uri), which falls back to ServiceLoader<FileSystemProvider> resolution and can invoke a matching provider’s getPath(uri) during deserialization. The result is unintended provider loading and provider-driven path handling inside the application, which can trigger denial of service or other side effects depending on what FileSystemProvider implementations are present on the classpath.
Remediation
Upgrade tools.jackson.core:jackson-databind to version 3.1.6, 3.2.2 or higher.
References
medium severity
new
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.18.10.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Deserialization of Untrusted Data in the isSafeSubType() method of DefaultBaseTypeLimitingValidator, whose denylist of unsafe base types omits java.lang.Comparable, so the method returns true for any subtype resolved under a Comparable base. An attacker can trigger instantiation of arbitrary classes that implement Comparable, such as java.io.File to reach path-traversal primitives, by sending JSON with attacker-controlled type identifiers. This requires the application to use a bare @JsonTypeInfo with the default validator and no explicit PolymorphicTypeValidator, and a property or class whose declared base type is Comparable.
Workaround
This vulnerability can be avoided by configuring an explicit restrictive PolymorphicTypeValidator, such as a BasicPolymorphicTypeValidator allowlist passed to activateDefaultTyping(), instead of relying on the default validator.
Note: The discoverer of this vulnerability reports that "I have not identified a class implementing Comparable that yields code execution purely through deserialization".
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating object from sequence of bytes is called deserialization. Serialization is commonly used for communication (sharing objects between multiple hosts) and persistence (store the object state in a file or a database). It is an integral part of popular protocols like Remote Method Invocation (RMI), Java Management Extension (JMX), Java Messaging System (JMS), Action Message Format (AMF), Java Server Faces (JSF) ViewState, etc.
Deserialization of untrusted data (CWE-502) is when the application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, thus allowing the attacker to control the state or the flow of the execution.
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.18.10, 2.21.6, 2.22.2 or higher.
References
medium severity
new
- Vulnerable module: org.springframework:spring-web
- Introduced through: org.springframework.security:spring-security-web@6.5.11, org.springframework.boot:spring-boot-starter-web@4.2.0-M1 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-web@6.2.19Remediation: Upgrade to org.springframework.security:spring-security-web@7.0.7.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-http-converter@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.security:spring-security-web@6.5.11 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework:spring-webmvc@7.1.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework.boot:spring-boot-http-converter@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-webmvc@4.2.0-M1 › org.springframework.boot:spring-boot-servlet@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat-runtime@4.2.0-M1 › org.springframework.boot:spring-boot-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-web-server@4.2.0-M1 › org.springframework:spring-web@6.2.19
Overview
org.springframework:spring-web is a package that provides a comprehensive programming and configuration model for modern Java-based enterprise applications - on any kind of deployment platform.
Affected versions of this package are vulnerable to HTTP Response Splitting via the Content-Disposition header when untrusted input is used to construct its value. An attacker can inject malicious characters to break the HTTP header or corrupt the framing of an outbound multipart body by supplying specially crafted file names or values.
Note: This is only exploitable if the application uses non-default or legacy HTTP connectors that do not reject malicious characters in header values, or if untrusted input is used to set the Content-Disposition of a part in an outbound multipart request body.
Remediation
Upgrade org.springframework:spring-web to version 7.0.9 or higher.
References
medium severity
new
- Vulnerable module: tools.jackson.core:jackson-databind
- Introduced through: net.logstash.logback:logstash-logback-encoder@9.0, org.flywaydb:flyway-core@12.11.0 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › net.logstash.logback:logstash-logback-encoder@9.0 › tools.jackson.core:jackson-databind@3.0.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-core@13.5.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-database-postgresql@12.11.0 › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-database-postgresql@13.5.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-jackson@4.2.0-M1 › tools.jackson.core:jackson-databind@3.0.1
Overview
Affected versions of this package are vulnerable to Deserialization of Untrusted Data in the isSafeSubType() method of DefaultBaseTypeLimitingValidator, whose denylist of unsafe base types omits java.lang.Comparable, so the method returns true for any subtype resolved under a Comparable base. An attacker can trigger instantiation of arbitrary classes that implement Comparable, such as java.io.File to reach path-traversal primitives, by sending JSON with attacker-controlled type identifiers. This requires the application to use a bare @JsonTypeInfo with the default validator and no explicit PolymorphicTypeValidator, and a property or class whose declared base type is Comparable.
Workaround
This vulnerability can be avoided by configuring an explicit restrictive PolymorphicTypeValidator, such as a BasicPolymorphicTypeValidator allowlist passed to activateDefaultTyping(), instead of relying on the default validator.
Note: The discoverer of this vulnerability reports that "I have not identified a class implementing Comparable that yields code execution purely through deserialization".
Details
Serialization is a process of converting an object into a sequence of bytes which can be persisted to a disk or database or can be sent through streams. The reverse process of creating object from sequence of bytes is called deserialization. Serialization is commonly used for communication (sharing objects between multiple hosts) and persistence (store the object state in a file or a database). It is an integral part of popular protocols like Remote Method Invocation (RMI), Java Management Extension (JMX), Java Messaging System (JMS), Action Message Format (AMF), Java Server Faces (JSF) ViewState, etc.
Deserialization of untrusted data (CWE-502) is when the application deserializes untrusted data without sufficiently verifying that the resulting data will be valid, thus allowing the attacker to control the state or the flow of the execution.
Remediation
Upgrade tools.jackson.core:jackson-databind to version 3.1.6, 3.2.2 or higher.
References
medium severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.12.7.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Denial of Service (DoS) in the _deserializeFromArray() function in BeanDeserializer, due to resource exhaustion when processing a deeply nested array.
NOTE:
For this vulnerability to be exploitable the non-default DeserializationFeature must be enabled.
Details
Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its intended and legitimate users.
Unlike other vulnerabilities, DoS attacks usually do not aim at breaching security. Rather, they are focused on making websites and services unavailable to genuine users resulting in downtime.
One popular Denial of Service vulnerability is DDoS (a Distributed Denial of Service), an attack that attempts to clog network pipes to the system by generating a large volume of traffic from many machines.
When it comes to open source libraries, DoS vulnerabilities allow attackers to trigger such a crash or crippling of the service by using a flaw either in the application code or from the use of open source libraries.
Two common types of DoS vulnerabilities:
High CPU/Memory Consumption- An attacker sending crafted requests that could cause the system to take a disproportionate amount of time to process. For example, commons-fileupload:commons-fileupload.
Crash - An attacker sending crafted requests that could cause the system to crash. For Example, npm
wspackage
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.12.7.1, 2.13.4 or higher.
References
medium severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-databind
- Introduced through: com.fasterxml.jackson.core:jackson-databind@2.9.9.1, com.github.hmcts:auth-checker-lib@2.1.5 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.12.7.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-databind is a library which contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor.
Affected versions of this package are vulnerable to Denial of Service (DoS) in the _deserializeWrappedValue() function in StdDeserializer.java, due to resource exhaustion when processing deeply nested arrays.
NOTE: This vulnerability is only exploitable when the non-default UNWRAP_SINGLE_VALUE_ARRAYS feature is enabled.
Details
Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its intended and legitimate users.
Unlike other vulnerabilities, DoS attacks usually do not aim at breaching security. Rather, they are focused on making websites and services unavailable to genuine users resulting in downtime.
One popular Denial of Service vulnerability is DDoS (a Distributed Denial of Service), an attack that attempts to clog network pipes to the system by generating a large volume of traffic from many machines.
When it comes to open source libraries, DoS vulnerabilities allow attackers to trigger such a crash or crippling of the service by using a flaw either in the application code or from the use of open source libraries.
Two common types of DoS vulnerabilities:
High CPU/Memory Consumption- An attacker sending crafted requests that could cause the system to take a disproportionate amount of time to process. For example, commons-fileupload:commons-fileupload.
Crash - An attacker sending crafted requests that could cause the system to crash. For Example, npm
wspackage
Remediation
Upgrade com.fasterxml.jackson.core:jackson-databind to version 2.12.7.1, 2.13.4.1 or higher.
References
medium severity
- Vulnerable module: tools.jackson.core:jackson-databind
- Introduced through: net.logstash.logback:logstash-logback-encoder@9.0, org.flywaydb:flyway-core@12.11.0 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › net.logstash.logback:logstash-logback-encoder@9.0 › tools.jackson.core:jackson-databind@3.0.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-core@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-database-postgresql@12.11.0 › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-database-postgresql@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-jackson@4.2.0-M1 › tools.jackson.core:jackson-databind@3.0.1
Overview
Affected versions of this package are vulnerable to Incorrect Authorization in the BeanDeserializer._deserializeUsingPropertyBased method, whose property-buffering branch omits the prop.visibleInView(activeView) check that the creator-property branch performs. An attacker can populate view-restricted setterless collection or map properties, such as admin-only fields, from untrusted JSON by supplying values for them during deserialization, bypassing @JsonView protection. This affects only setterless collection or map properties annotated with a restricted @JsonView and reached through the property-based creator path.
Remediation
Upgrade tools.jackson.core:jackson-databind to version 3.1.4 or higher.
References
medium severity
- Vulnerable module: tools.jackson.core:jackson-databind
- Introduced through: net.logstash.logback:logstash-logback-encoder@9.0, org.flywaydb:flyway-core@12.11.0 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › net.logstash.logback:logstash-logback-encoder@9.0 › tools.jackson.core:jackson-databind@3.0.1
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-core@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.flywaydb:flyway-database-postgresql@12.11.0 › org.flywaydb:flyway-core@12.11.0 › tools.jackson.core:jackson-databind@3.0.1Remediation: Upgrade to org.flywaydb:flyway-database-postgresql@12.11.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-jackson@4.2.0-M1 › tools.jackson.core:jackson-databind@3.0.1
Overview
Affected versions of this package are vulnerable to Incorrect Authorization in the UnwrappedPropertyHandler.processUnwrappedCreatorProperties() method, which replays buffered JSON into creator parameters without consulting prop.visibleInView(activeView). An attacker can set view-restricted constructor parameters annotated with both @JsonView and @JsonUnwrapped, such as admin-only fields, from untrusted JSON by supplying them during deserialization while a more restrictive view is active, defeating the @JsonView write-side authorization boundary.
Remediation
Upgrade tools.jackson.core:jackson-databind to version 3.1.4 or higher.
References
medium severity
- Vulnerable module: com.fasterxml.jackson.core:jackson-core
- Introduced through: com.fasterxml.jackson.core:jackson-core@2.9.9, com.fasterxml.jackson.core:jackson-databind@2.9.9.1 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to com.fasterxml.jackson.core:jackson-core@2.13.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.13.0.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › io.jsonwebtoken:jjwt@0.9.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › io.swagger.core.v3:swagger-core-jakarta@2.2.55 › com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.22.1 › com.fasterxml.jackson.core:jackson-databind@2.9.9.1 › com.fasterxml.jackson.core:jackson-core@2.9.9Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
Overview
com.fasterxml.jackson.core:jackson-core is a Core Jackson abstractions, basic JSON streaming API implementation
Affected versions of this package are vulnerable to Information Exposure due to the JsonLocation._appendSourceDesc method. An attacker can access up to 500 bytes of unintended memory content by exploiting exception messages that incorrectly read from the beginning of a byte array instead of the logical payload start.
Workaround
This vulnerability can be mitigated by disabling exception message exposure to clients to avoid returning parsing exception messages in HTTP responses and/or disabling source inclusion in exceptions to prevent Jackson from embedding any source content in exception messages, avoiding leakage.
PoC
byte[] buffer = new byte[1000];
System.arraycopy("SECRET".getBytes(), 0, buffer, 0, 6);
System.arraycopy("{ \"bad\": }".getBytes(), 0, buffer, 700, 10);
JsonFactory factory = new JsonFactory();
JsonParser parser = factory.createParser(buffer, 700, 20);
parser.nextToken(); // throws exception
// Exception message will include "SECRET"
Remediation
Upgrade com.fasterxml.jackson.core:jackson-core to version 2.13.0-rc1 or higher.
References
medium severity
- Vulnerable module: org.springframework.boot:spring-boot-autoconfigure
- Introduced through: com.github.hmcts:auth-checker-lib@2.1.5, org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 and others
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-actuator-autoconfigure@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.springframework.boot:spring-boot-starter-security@2.1.6.RELEASE › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-actuator@4.2.0-M1 › org.springframework.boot:spring-boot-starter-micrometer-metrics@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-data-jpa@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jdbc@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-tomcat@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springframework.boot:spring-boot-starter-web@4.2.0-M1 › org.springframework.boot:spring-boot-starter-jackson@4.2.0-M1 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASERemediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1.
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.springdoc:springdoc-openapi-starter-webmvc-ui@2.9.1 › org.springdoc:springdoc-openapi-starter-webmvc-api@2.9.1 › org.springdoc:springdoc-openapi-starter-common@2.9.1 › org.springframework.boot:spring-boot-starter-validation@3.5.16 › org.springframework.boot:spring-boot-starter@4.2.0-M1 › org.springframework.boot:spring-boot-autoconfigure@2.1.6.RELEASE
Overview
Affected versions of this package are vulnerable to Insecure Temporary File via the default data directory configuration in ArtemisEmbeddedConfigurationFactory. A local attacker can tamper with or redirect the embedded Artemis broker's data storage by pre-creating the predictable data directory or replacing it with a symlink before the application starts. This may allow unauthorized access to message data, injection of malicious messages, or further compromise through processing of attacker-controlled broker data.
Note: This is only exploitable by an attacker with local access to the host system before the application initializes the embedded broker.
Remediation
Upgrade org.springframework.boot:spring-boot-autoconfigure to version 3.5.15, 4.0.7, 4.1.0 or higher.
References
low severity
- Vulnerable module: commons-codec:commons-codec
- Introduced through: org.apache.httpcomponents:httpclient@4.5.14 and com.github.hmcts:auth-checker-lib@2.1.5
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › org.apache.httpcomponents:httpclient@4.5.14 › commons-codec:commons-codec@1.11
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › org.apache.httpcomponents:httpclient@4.5.14 › commons-codec:commons-codec@1.11
Overview
commons-codec:commons-codec is a package that contains simple encoder and decoders for various formats such as Base64 and Hexadecimal.
Affected versions of this package are vulnerable to Information Exposure. When there is no byte array value that can be encoded into a string the Base32 implementation does not reject it, and instead decodes it into an arbitrary value which can be re-encoded again using the same implementation. This allows for information exposure exploits such as tunneling additional information via seemingly valid base 32 strings.
Remediation
Upgrade commons-codec:commons-codec to version 1.14 or higher.
References
low severity
- Vulnerable module: com.google.guava:guava
- Introduced through: com.github.hmcts:auth-checker-lib@2.1.5
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.google.guava:guava@28.0-jre
Overview
com.google.guava:guava is a set of core libraries that includes new collection types (such as multimap and multiset,immutable collections, a graph library, functional types, an in-memory cache and more.
Affected versions of this package are vulnerable to Creation of Temporary File in Directory with Insecure Permissions due to the use of Java's default temporary directory for file creation in FileBackedOutputStream. Other users and apps on the machine with access to the default Java temporary directory can access the files created by this class. This more fully addresses the underlying issue described in CVE-2020-8908, by deprecating the permissive temp file creation behavior.
NOTE: Even though the security vulnerability is fixed in version 32.0.0, the maintainers recommend using version 32.0.1, as version 32.0.0 breaks some functionality under Windows.
Remediation
Upgrade com.google.guava:guava to version 32.0.0-android, 32.0.0-jre or higher.
References
low severity
- Vulnerable module: com.google.guava:guava
- Introduced through: com.github.hmcts:auth-checker-lib@2.1.5
Detailed paths
-
Introduced through: hmcts/ccd-user-profile-api@hmcts/ccd-user-profile-api › com.github.hmcts:auth-checker-lib@2.1.5 › com.google.guava:guava@28.0-jre
Overview
com.google.guava:guava is a set of core libraries that includes new collection types (such as multimap and multiset,immutable collections, a graph library, functional types, an in-memory cache and more.
Affected versions of this package are vulnerable to Information Disclosure.
The file permissions on the file created by com.google.common.io.Files.createTempDir allow an attacker running a malicious program co-resident on the same machine to steal secrets stored in this directory. This is because, by default, on unix-like operating systems the /tmp directory is shared between all users, so if the correct file permissions aren't set by the directory/file creator, the file becomes readable by all other users on that system.
PoC
File guavaTempDir = com.google.common.io.Files.createTempDir();
System.out.println("Guava Temp Dir: " + guavaTempDir.getName());
runLS(guavaTempDir.getParentFile(), guavaTempDir); // Prints the file permissions -> drwxr-xr-x
File child = new File(guavaTempDir, "guava-child.txt");
child.createNewFile();
runLS(guavaTempDir, child); // Prints the file permissions -> -rw-r--r--
For Android developers, choosing a temporary directory API provided by Android is recommended, such as context.getCacheDir(). For other Java developers, we recommend migrating to the Java 7 API java.nio.file.Files.createTempDirectory() which explicitly configures permissions of 700, or configuring the Java runtime's java.io.tmpdir system property to point to a location whose permissions are appropriately configured.
Remediation
There is no fix for com.google.guava:guava. However, in version 30.0 and above, the vulnerable functionality has been deprecated. In oder to mitigate this vulnerability, upgrade to version 30.0 or higher and ensure your dependencies don't use the createTempDir or createTempFile methods.