goobi-viewer-core: Goobi viewer: OpenID JWT audience not enforced by the verifier
What fixes it
- 26.05io.goobi.viewer:viewer-core, mavenGitHub
<dependency><groupId>io.goobi.viewer</groupId><artifactId>viewer-core</artifactId><version>26.05</version></dependency>
A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.
Description
The Goobi viewer is a web application that allows digitised material to be displayed in a web browser. From version 25.01 to before version 26.05, AuthenticationEndpoint.verifyOpenIdToken builds its verifier as JWT.require(algorithm).withIssuer(issuer).build() and does not enforce the aud claim during cryptographic validation. The aud check is performed manually afterwards via a single string-equality call, which only handles single-string aud values. In a multi-RP IdP setup, a token whose single-string aud matches the viewer's client ID but was issued for a different relying party passes the check and authenticates the attacker as the token's sub. This issue has been patched in version 26.05.
Text from CVE List
Affected versions 2
- goobi-viewer-coreaffected: >= 25.01, < 26.05CVE List
- io.goobi.viewer:viewer-core, maven>=25.01GitHub