Spring MVC and WebFlux applications are vulnerable to cache poisoning when resolving static resources. More precisely, an application can be vulnerable when all the following are true: * the application is using Spring MVC or Spring WebFlux * the application is configuring the resource chain support https://docs.spring.io/spring-framework/reference/web/webmvc/mvc-config/static-resources.html#page-title with caching enabled * the application adds support for encoded resources resolution * the resource cache must be empty when the attacker has access to the application When all the conditions above are met, the attacker can send malicious requests and poison the resource cache with resources using the wrong encoding. This can cause a denial of service by breaking the front-end application for clients.
{
"binaries": [
{
"binary_name": "libspring-aop-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-beans-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-context-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-context-support-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-core-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-expression-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-instrument-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-jdbc-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-jms-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-messaging-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-orm-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-oxm-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-test-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-transaction-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-web-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-web-portlet-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-web-servlet-java",
"binary_version": "4.3.30-3ubuntu1"
}
]
}{
"binaries": [
{
"binary_name": "libspring-aop-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-beans-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-context-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-context-support-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-core-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-expression-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-instrument-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-jdbc-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-jms-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-messaging-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-orm-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-oxm-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-test-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-transaction-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-web-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-web-portlet-java",
"binary_version": "4.3.30-3ubuntu1"
},
{
"binary_name": "libspring-web-servlet-java",
"binary_version": "4.3.30-3ubuntu1"
}
]
}{
"binaries": [
{
"binary_name": "libspring-aop-java",
"binary_version": "3.0.6.RELEASE-13ubuntu0.1~esm2"
},
{
"binary_name": "libspring-beans-java",
"binary_version": "3.0.6.RELEASE-13ubuntu0.1~esm2"
},
{
"binary_name": "libspring-context-java",
"binary_version": "3.0.6.RELEASE-13ubuntu0.1~esm2"
},
{
"binary_name": "libspring-context-support-java",
"binary_version": "3.0.6.RELEASE-13ubuntu0.1~esm2"
},
{
"binary_name": "libspring-core-java",
"binary_version": "3.0.6.RELEASE-13ubuntu0.1~esm2"
},
{
"binary_name": "libspring-expression-java",
"binary_version": "3.0.6.RELEASE-13ubuntu0.1~esm2"
},
{
"binary_name": "libspring-instrument-java",
"binary_version": "3.0.6.RELEASE-13ubuntu0.1~esm2"
},
{
"binary_name": "libspring-jdbc-java",
"binary_version": "3.0.6.RELEASE-13ubuntu0.1~esm2"
},
{
"binary_name": "libspring-jms-java",
"binary_version": "3.0.6.RELEASE-13ubuntu0.1~esm2"
},
{
"binary_name": "libspring-orm-java",
"binary_version": "3.0.6.RELEASE-13ubuntu0.1~esm2"
},
{
"binary_name": "libspring-oxm-java",
"binary_version": "3.0.6.RELEASE-13ubuntu0.1~esm2"
},
{
"binary_name": "libspring-test-java",
"binary_version": "3.0.6.RELEASE-13ubuntu0.1~esm2"
},
{
"binary_name": "libspring-transaction-java",
"binary_version": "3.0.6.RELEASE-13ubuntu0.1~esm2"
},
{
"binary_name": "libspring-web-java",
"binary_version": "3.0.6.RELEASE-13ubuntu0.1~esm2"
},
{
"binary_name": "libspring-web-portlet-java",
"binary_version": "3.0.6.RELEASE-13ubuntu0.1~esm2"
},
{
"binary_name": "libspring-web-servlet-java",
"binary_version": "3.0.6.RELEASE-13ubuntu0.1~esm2"
},
{
"binary_name": "libspring-web-struts-java",
"binary_version": "3.0.6.RELEASE-13ubuntu0.1~esm2"
}
]
}{
"binaries": [
{
"binary_name": "libspring-aop-java",
"binary_version": "3.2.13-5ubuntu0.1~esm1"
},
{
"binary_name": "libspring-beans-java",
"binary_version": "3.2.13-5ubuntu0.1~esm1"
},
{
"binary_name": "libspring-context-java",
"binary_version": "3.2.13-5ubuntu0.1~esm1"
},
{
"binary_name": "libspring-context-support-java",
"binary_version": "3.2.13-5ubuntu0.1~esm1"
},
{
"binary_name": "libspring-core-java",
"binary_version": "3.2.13-5ubuntu0.1~esm1"
},
{
"binary_name": "libspring-expression-java",
"binary_version": "3.2.13-5ubuntu0.1~esm1"
},
{
"binary_name": "libspring-instrument-java",
"binary_version": "3.2.13-5ubuntu0.1~esm1"
},
{
"binary_name": "libspring-jdbc-java",
"binary_version": "3.2.13-5ubuntu0.1~esm1"
},
{
"binary_name": "libspring-jms-java",
"binary_version": "3.2.13-5ubuntu0.1~esm1"
},
{
"binary_name": "libspring-orm-java",
"binary_version": "3.2.13-5ubuntu0.1~esm1"
},
{
"binary_name": "libspring-oxm-java",
"binary_version": "3.2.13-5ubuntu0.1~esm1"
},
{
"binary_name": "libspring-test-java",
"binary_version": "3.2.13-5ubuntu0.1~esm1"
},
{
"binary_name": "libspring-transaction-java",
"binary_version": "3.2.13-5ubuntu0.1~esm1"
},
{
"binary_name": "libspring-web-java",
"binary_version": "3.2.13-5ubuntu0.1~esm1"
},
{
"binary_name": "libspring-web-portlet-java",
"binary_version": "3.2.13-5ubuntu0.1~esm1"
},
{
"binary_name": "libspring-web-servlet-java",
"binary_version": "3.2.13-5ubuntu0.1~esm1"
}
]
}{
"binaries": [
{
"binary_name": "libspring-aop-java",
"binary_version": "4.3.22-1~18.04.1~esm1"
},
{
"binary_name": "libspring-beans-java",
"binary_version": "4.3.22-1~18.04.1~esm1"
},
{
"binary_name": "libspring-context-java",
"binary_version": "4.3.22-1~18.04.1~esm1"
},
{
"binary_name": "libspring-context-support-java",
"binary_version": "4.3.22-1~18.04.1~esm1"
},
{
"binary_name": "libspring-core-java",
"binary_version": "4.3.22-1~18.04.1~esm1"
},
{
"binary_name": "libspring-expression-java",
"binary_version": "4.3.22-1~18.04.1~esm1"
},
{
"binary_name": "libspring-instrument-java",
"binary_version": "4.3.22-1~18.04.1~esm1"
},
{
"binary_name": "libspring-jdbc-java",
"binary_version": "4.3.22-1~18.04.1~esm1"
},
{
"binary_name": "libspring-jms-java",
"binary_version": "4.3.22-1~18.04.1~esm1"
},
{
"binary_name": "libspring-messaging-java",
"binary_version": "4.3.22-1~18.04.1~esm1"
},
{
"binary_name": "libspring-orm-java",
"binary_version": "4.3.22-1~18.04.1~esm1"
},
{
"binary_name": "libspring-oxm-java",
"binary_version": "4.3.22-1~18.04.1~esm1"
},
{
"binary_name": "libspring-test-java",
"binary_version": "4.3.22-1~18.04.1~esm1"
},
{
"binary_name": "libspring-transaction-java",
"binary_version": "4.3.22-1~18.04.1~esm1"
},
{
"binary_name": "libspring-web-java",
"binary_version": "4.3.22-1~18.04.1~esm1"
},
{
"binary_name": "libspring-web-portlet-java",
"binary_version": "4.3.22-1~18.04.1~esm1"
},
{
"binary_name": "libspring-web-servlet-java",
"binary_version": "4.3.22-1~18.04.1~esm1"
}
]
}{
"binaries": [
{
"binary_name": "libspring-aop-java",
"binary_version": "4.3.22-4ubuntu0.1~esm1"
},
{
"binary_name": "libspring-beans-java",
"binary_version": "4.3.22-4ubuntu0.1~esm1"
},
{
"binary_name": "libspring-context-java",
"binary_version": "4.3.22-4ubuntu0.1~esm1"
},
{
"binary_name": "libspring-context-support-java",
"binary_version": "4.3.22-4ubuntu0.1~esm1"
},
{
"binary_name": "libspring-core-java",
"binary_version": "4.3.22-4ubuntu0.1~esm1"
},
{
"binary_name": "libspring-expression-java",
"binary_version": "4.3.22-4ubuntu0.1~esm1"
},
{
"binary_name": "libspring-instrument-java",
"binary_version": "4.3.22-4ubuntu0.1~esm1"
},
{
"binary_name": "libspring-jdbc-java",
"binary_version": "4.3.22-4ubuntu0.1~esm1"
},
{
"binary_name": "libspring-jms-java",
"binary_version": "4.3.22-4ubuntu0.1~esm1"
},
{
"binary_name": "libspring-messaging-java",
"binary_version": "4.3.22-4ubuntu0.1~esm1"
},
{
"binary_name": "libspring-orm-java",
"binary_version": "4.3.22-4ubuntu0.1~esm1"
},
{
"binary_name": "libspring-oxm-java",
"binary_version": "4.3.22-4ubuntu0.1~esm1"
},
{
"binary_name": "libspring-test-java",
"binary_version": "4.3.22-4ubuntu0.1~esm1"
},
{
"binary_name": "libspring-transaction-java",
"binary_version": "4.3.22-4ubuntu0.1~esm1"
},
{
"binary_name": "libspring-web-java",
"binary_version": "4.3.22-4ubuntu0.1~esm1"
},
{
"binary_name": "libspring-web-portlet-java",
"binary_version": "4.3.22-4ubuntu0.1~esm1"
},
{
"binary_name": "libspring-web-servlet-java",
"binary_version": "4.3.22-4ubuntu0.1~esm1"
}
]
}{
"binaries": [
{
"binary_name": "libspring-aop-java",
"binary_version": "4.3.30-1ubuntu0.1~esm1"
},
{
"binary_name": "libspring-beans-java",
"binary_version": "4.3.30-1ubuntu0.1~esm1"
},
{
"binary_name": "libspring-context-java",
"binary_version": "4.3.30-1ubuntu0.1~esm1"
},
{
"binary_name": "libspring-context-support-java",
"binary_version": "4.3.30-1ubuntu0.1~esm1"
},
{
"binary_name": "libspring-core-java",
"binary_version": "4.3.30-1ubuntu0.1~esm1"
},
{
"binary_name": "libspring-expression-java",
"binary_version": "4.3.30-1ubuntu0.1~esm1"
},
{
"binary_name": "libspring-instrument-java",
"binary_version": "4.3.30-1ubuntu0.1~esm1"
},
{
"binary_name": "libspring-jdbc-java",
"binary_version": "4.3.30-1ubuntu0.1~esm1"
},
{
"binary_name": "libspring-jms-java",
"binary_version": "4.3.30-1ubuntu0.1~esm1"
},
{
"binary_name": "libspring-messaging-java",
"binary_version": "4.3.30-1ubuntu0.1~esm1"
},
{
"binary_name": "libspring-orm-java",
"binary_version": "4.3.30-1ubuntu0.1~esm1"
},
{
"binary_name": "libspring-oxm-java",
"binary_version": "4.3.30-1ubuntu0.1~esm1"
},
{
"binary_name": "libspring-test-java",
"binary_version": "4.3.30-1ubuntu0.1~esm1"
},
{
"binary_name": "libspring-transaction-java",
"binary_version": "4.3.30-1ubuntu0.1~esm1"
},
{
"binary_name": "libspring-web-java",
"binary_version": "4.3.30-1ubuntu0.1~esm1"
},
{
"binary_name": "libspring-web-portlet-java",
"binary_version": "4.3.30-1ubuntu0.1~esm1"
},
{
"binary_name": "libspring-web-servlet-java",
"binary_version": "4.3.30-1ubuntu0.1~esm1"
}
]
}{
"binaries": [
{
"binary_name": "libspring-aop-java",
"binary_version": "4.3.30-2ubuntu0.24.04.1~esm1"
},
{
"binary_name": "libspring-beans-java",
"binary_version": "4.3.30-2ubuntu0.24.04.1~esm1"
},
{
"binary_name": "libspring-context-java",
"binary_version": "4.3.30-2ubuntu0.24.04.1~esm1"
},
{
"binary_name": "libspring-context-support-java",
"binary_version": "4.3.30-2ubuntu0.24.04.1~esm1"
},
{
"binary_name": "libspring-core-java",
"binary_version": "4.3.30-2ubuntu0.24.04.1~esm1"
},
{
"binary_name": "libspring-expression-java",
"binary_version": "4.3.30-2ubuntu0.24.04.1~esm1"
},
{
"binary_name": "libspring-instrument-java",
"binary_version": "4.3.30-2ubuntu0.24.04.1~esm1"
},
{
"binary_name": "libspring-jdbc-java",
"binary_version": "4.3.30-2ubuntu0.24.04.1~esm1"
},
{
"binary_name": "libspring-jms-java",
"binary_version": "4.3.30-2ubuntu0.24.04.1~esm1"
},
{
"binary_name": "libspring-messaging-java",
"binary_version": "4.3.30-2ubuntu0.24.04.1~esm1"
},
{
"binary_name": "libspring-orm-java",
"binary_version": "4.3.30-2ubuntu0.24.04.1~esm1"
},
{
"binary_name": "libspring-oxm-java",
"binary_version": "4.3.30-2ubuntu0.24.04.1~esm1"
},
{
"binary_name": "libspring-test-java",
"binary_version": "4.3.30-2ubuntu0.24.04.1~esm1"
},
{
"binary_name": "libspring-transaction-java",
"binary_version": "4.3.30-2ubuntu0.24.04.1~esm1"
},
{
"binary_name": "libspring-web-java",
"binary_version": "4.3.30-2ubuntu0.24.04.1~esm1"
},
{
"binary_name": "libspring-web-portlet-java",
"binary_version": "4.3.30-2ubuntu0.24.04.1~esm1"
},
{
"binary_name": "libspring-web-servlet-java",
"binary_version": "4.3.30-2ubuntu0.24.04.1~esm1"
}
]
}