Description
Both Spring Security 3.2.x, 4.0.x, 4.1.0 and the Spring Framework 3.2.x, 4.0.x, 4.1.x, 4.2.x rely on URL pattern mappings for authorization and for mapping requests to controllers respectively. Differences in the strictness of the pattern matching mechanisms, for example with regards to space trimming in path segments, can lead Spring Security to not recognize certain paths as not protected that are in fact mapped to Spring MVC controllers that should be protected. The problem is compounded by the fact that the Spring Framework provides richer features with regards to pattern matching as well as by the fact that pattern matching in each Spring Security and the Spring Framework can easily be customized creating additional differences.
Remediation
References
http://www.oracle.com/technetwork/security-advisory/cpuapr2018-3678067.html
http://www.securityfocus.com/bid/91687
https://pivotal.io/security/cve-2016-5007
https://www.oracle.com/technetwork/security-advisory/cpujul2019-5072835.html
Related Vulnerabilities
CVE-2020-28479 Vulnerability in maven package org.webjars.bower:jointjs
CVE-2016-10626 Vulnerability in npm package mystem3
CVE-2020-7714 Vulnerability in npm package confucious
CVE-2020-13936 Vulnerability in maven package org.apache.velocity:velocity-engine-core
CVE-2021-43570 Vulnerability in maven package com.starkbank.ellipticcurve:starkbank-ecdsa