Description
JHipster generator-jhipster before 2.23.0 allows a timing attack against validateToken due to a string comparison that stops at the first character that is different. Attackers can guess tokens by brute forcing one character at a time and observing the timing. This of course drastically reduces the search space to a linear amount of guesses based on the token length times the possible characters.
Remediation
References
https://github.com/jhipster/generator-jhipster/commit/79fe5626cb1bb80f9ac86cf46980748e65d2bdbc
https://github.com/jhipster/generator-jhipster/commit/7c49ab3d45dc4921b831a2ca55fb1e2a2db1ee25
https://github.com/jhipster/generator-jhipster/compare/v2.22.0...v2.23.0
https://github.com/jhipster/generator-jhipster/issues/2095
Related Vulnerabilities
CVE-2022-3509 Vulnerability in maven package com.google.protobuf:protobuf-javalite
CVE-2019-10744 Vulnerability in maven package org.webjars:lodash
CVE-2020-7758 Vulnerability in npm package browserless-chrome
CVE-2016-1000346 Vulnerability in maven package org.bouncycastle:bcprov-jdk15on
CVE-2023-40345 Vulnerability in maven package org.jenkins-ci.plugins:delphix