Skip to main content

Goobi Viewer Core EUVDEUVD-2026-109086

| CVE-2026-46347 MEDIUM
Use of Insufficiently Random Values (CWE-330)
2026-10-23 GitHub_M
6.8
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Observe victim-initiated password reset
  2. Delivery
    Infer server-side generation time from metadata
  3. Exploit
    Brute-force low-entropy replacement password
  4. Execution
    Authenticate as victim
  5. Impact
    Full account takeover

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A04:2025 - Cryptographic Failures
ASVS 5.0
V11 - Cryptography Cryptographic random values
Exploitation Conditions

Standalone exploitation requires that the victim has already triggered a password reset themselves, and that the attacker can approximate the server-side time at which the replacement password was generated from network or email metadata - only then can the low-entropy password (originally 4 bytes) be brute-forced to log in as the victim. Limiting factors: dependency on victim-initiated reset (UI:R) and on timing inference (AC:H), which prevent trivial mass exploitation. These limits are removed when chained with CVE-2026-46346, which disables the victim-initiation requirement for full unauthenticated takeover. Affected: goobi-viewer-core < 26.05; fixed in 26.05 (commits 9c2c83f and 1fa7a30a). The vendor states a reverse-proxy/Tomcat block disabling the /user/resetpw/ endpoint entirely is the only workaround (it disables password reset for all users); updating to 26.05 is the complete fix.

Impact

This is a medium-severity issue (CVSS 6.8) whose real-world standalone risk is constrained by two factors in the vector: AC:H, because the attacker must approximate the server-side password-generation time from network or email metadata, and UI:R, because the victim must have initiated the password reset themselves. PR:N confirms no authentication is needed. No EPSS score, KEV listing, or public exploit is present in the input, and the vuln.today Decision label is 'this_month' - not act_now or emergency - so this is a prioritize-and-patch item rather than a drop-everything emergency. The critical escalation signal comes from the vendor advisory: chained with CVE-2026-46346 (GHSA-gj5g-4rxf-8rmq), the victim-interaction requirement disappears and an attacker with only the victim's email achieves full unauthenticated account takeover at a combined CVSS of 9.1. Treat the realistic priority as driven by that chain: if CVE-2026-46346 is also present/unpatched, effective risk is far higher than this CVE's 6.8 implies.

Exploit ScenarioDerived

A victim initiates a password reset on a Goobi viewer instance (< 26.05). An attacker who can observe network or email metadata approximates the server-side timestamp at which the replacement password was generated and brute-forces the low-entropy value (originally only 4 bytes, per commit 9c2c83f), then logs in as the victim. No public exploit is identified in the input; AC:H reflects the timing-inference requirement and UI:R reflects the need for victim-initiated reset.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.4% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 23, 2026

Predictable replacement-password generation in Goobi Viewer Core (Maven io.goobi.viewer:viewer-core) before 26.05 lets an attacker who can approximate the server-side generation time brute-force the password that is emailed after a reset and log in as the victim, giving high confidentiality and integrity impact at CVSS 6.8. Standalone exploitation is gated by two assessed preconditions: the account holder must have triggered the reset themselves (UI:R) and the attacker must infer server time from network or email metadata (AC:H), so mass exploitation is not trivial. No public exploit code was identified at time of analysis; the vendor fixed the flaw in 26.05, and the advisory notes that chaining it with CVE-2026-46346 (GHSA-gj5g-4rxf-8rmq) removes the victim-interaction requirement and reaches a combined severity of 9.1 Critical.

RemediationAI

Upgrade to Goobi Viewer Core 26.05, which is the vendor-released fix (release tag v26.05; commits 9c2c83f00f497c11ab6aaa0bd5a68173cd446eef and 1fa7a30a3a7699a82ea0df9c1a8997b2894d7841); the vendor states the update is the complete fix. Where an update cannot be deployed immediately, the vendor's only documented workaround is to block the reset endpoint entirely at the reverse proxy, e.g. in the Apache httpd vhost with <LocationMatch ^.*user/resetpw/.*$> Require all denied </LocationMatch>, or in Tomcat via a web.xml security-constraint denying /user/resetpw/ and /user/resetpw/*; the trade-off is explicit - password reset is disabled for all users, and this same block is what mitigates the companion finding CVE-2026-46346, so removing it before upgrading re-exposes both issues. Patch timing per the supplied decision signal is the current monthly maintenance window rather than an emergency, though environments that cannot rule out the chained scenario should treat the upgrade as higher priority. Advisory: https://github.com/intranda/goobi-viewer-core/security/advisories/GHSA-hw9w-7r6g-2fjc.

Affected VersionsENISA

goobi-viewer-core < 26.05

Affected Packages

euvd goobi_viewer_core fix: 26.05

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Goobi Viewer Core is a Java web application for presenting digitised holdings; the reset flow is implemented in the JSF managed bean io.goobi.viewer.managedbeans.UserBean, method resetPasswordAction, where the replacement password is built into a raw byte buffer. The vendor's fix commit 9c2c83f changes new byte[4] to new byte[7], i.e. the password entropy grows from a 32-bit space to a 56-bit space (the exact encoding and post-processing of the buffer is not shown in the supplied diff), and commit 1fa7a30a further hardens the generation. The advisory classifies this as CWE-330 (use of insufficiently random values) and additionally tags CWE-340 (generation of predictable numbers or identifiers) and CWE-640 (weak password recovery mechanism for forgotten password) - the root cause class is a non-cryptographically-adequate random source feeding an account-recovery credential. Because the password is mailed to the user, the entropy of that credential is the only barrier once generation time is known. The supplied sources do not describe the precise internal call path beyond the reset action, so the exact triggering sequence beyond 'reset link visited' is not described in the available sources.

Know when Goobi Viewer Core gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 6.8 MEDIUM
AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N
vuln.today AI 6.8 MEDIUM

Brute-forcing requires inferring the server-side generation time (AC:H) and the victim must initiate the reset (UI:R); no authentication is needed (PR:N); account takeover yields C:H/I:H with no availability impact.

3.1 AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N
4.0 AV:N/AC:H/AT:N/PR:N/UI:A/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
Required
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
None

Lifecycle Timeline

1
Patch available
Oct 23, 2026 - 15:02 EUVD

DescriptionCVE.org

The Goobi viewer is a web application that allows digitised material to be displayed in a web browser. Prior to version 26.05, when a password reset link is visited, the application generates a replacement password in a predictable way and emails it to the account holder. The insufficient entropy allows the password to be brute-forced by an attacker who can approximate the server-side generation time. Exploiting this finding in isolation requires the victim to have triggered the reset themselves and the attacker to infer the server time from network or email metadata. This issue has been patched in version 26.05.

Threat Intelligence Overview

EPSS Score
0.4%
Top 64% exploitable
Prevalence
Low
niche cultural-heritage/library digitisation viewer, limited enterprise footprint
Social Media
1
Sightings
Data Quality
4 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.4%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

34
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +34
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

CVE-2026-46652 CRITICAL
9.8 Oct 23

Unauthenticated path traversal in Goobi viewer allows a malicious HTTP server to supply an absolute path or ../ sequence

CVE-2026-46651 CRITICAL
9.8 Oct 23

Goobi viewer 24.03 through 26.04 exposes the DownloadTaskEndpoint WebSocket at /tasks/download/monitor.socket to unauthe

CVE-2026-55486 CRITICAL
9.3 Oct 23

Reflected cross-site scripting in the IIIF Auth 2.0 endpoints auth/login and auth/token of Goobi Viewer Core (maven io.g

CVE-2026-55459 HIGH
7.4 Oct 23

OpenID Connect login in Goobi viewer 25.01 through 26.04 validates the JWT audience outside the cryptographic verifier,

CVE-2026-55457 HIGH
7.4 Oct 23

Goobi Viewer deployments that leave webapi.authorization.token unset accept an empty ?token= value on every @Authorizati

CVE-2026-55463 MEDIUM
6.5 Oct 23

Missing server-side authentication on four Jakarta WebSocket endpoints in goobi-viewer-core (DownloadTaskEndpoint, Campa

CVE-2026-46346 MEDIUM
6.5 Oct 23

Unauthenticated remote attackers can force a password reset on any Goobi Viewer Core account prior to 26.05 because the

CVE-2020-15124 MEDIUM
6.5 Jul 22

In Goobi Viewer Core before version 4.8.3, a path traversal vulnerability allows for remote attackers to access files on

CVE-2023-29016 MEDIUM
6.1 Apr 06

The Goobi viewer is a web application that allows digitised material to be displayed in a web browser. Rated medium seve

CVE-2023-29015 MEDIUM
6.1 Apr 06

The Goobi viewer is a web application that allows digitised material to be displayed in a web browser. Rated medium seve

CVE-2023-29014 MEDIUM
6.1 Apr 06

The Goobi viewer is a web application that allows digitised material to be displayed in a web browser. Rated medium seve

CVE-2026-55465 MEDIUM
5.3 Oct 23

Unauthenticated Solr query injection in the Goobi viewer spatial search endpoint (GET /api/v1/index/{solrField}/spatial/

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy