Description
Dropwizard-Validation before 1.3.19, and 2.0.2 may allow arbitrary code execution on the host system, with the privileges of the Dropwizard service account, by injecting arbitrary Java Expression Language expressions when using the self-validating feature. The issue has been fixed in dropwizard-validation 1.3.19 and 2.0.2.
Remediation
References
https://beanvalidation.org/2.0/spec/#validationapi-message-defaultmessageinterpolation
https://docs.jboss.org/hibernate/validator/6.1/reference/en-US/html_single/#section-interpolation-with-message-expressions
https://docs.oracle.com/javaee/7/tutorial/jsf-el.htm
https://github.com/dropwizard/dropwizard/commit/28479f743a9d0aab6d0e963fc07f3dd98e8c8236
https://github.com/dropwizard/dropwizard/commit/d87d1e4f8e20f6494c0232bf8560c961b46db634
https://github.com/dropwizard/dropwizard/pull/3157
https://github.com/dropwizard/dropwizard/pull/3160
https://github.com/dropwizard/dropwizard/security/advisories/GHSA-3mcp-9wr4-cjqf
Related Vulnerabilities
CVE-2016-6346 Vulnerability in maven package org.jboss.resteasy:resteasy-jaxrs
CVE-2018-16487 Vulnerability in maven package org.webjars.npm:lodash.merge
CVE-2016-15026 Vulnerability in maven package com.googlecode.plist:dd-plist
CVE-2017-5637 Vulnerability in maven package org.apache.zookeeper:zookeeper