Skip to main content

Goobi viewer CVE-2026-45083

CRITICAL
Missing Authentication for Critical Function (CWE-306)
2026-05-13 https://github.com/intranda/goobi-viewer-core GHSA-2rgp-f66f-4499
9.8
CVSS 3.1 · GitHub Advisory
Share

Severity by source

GitHub Advisory PRIMARY
9.8 CRITICAL
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Primary rating from GitHub Advisory · only source for this CVE.

CVSS VectorGitHub Advisory

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

Lifecycle Timeline

3
Source Code Evidence Fetched
Jun 08, 2026 - 08:33 vuln.today
Analysis Generated
Jun 08, 2026 - 08:33 vuln.today
CVE Published
May 13, 2026 - 15:33 nvd
CRITICAL 9.8

DescriptionGitHub Advisory

Summary

The Goobi viewer REST endpoint POST /api/v1/index/stream accepted an arbitrary Solr streaming expression from unauthenticated network clients and forwarded it to the backend Solr server without restriction. An attacker could read the complete Solr index and, in default Solr deployments, also modify or delete indexed records.

The API endpoint has now been removed.

Impact

  • Complete Solr index read without authentication.

All documents indexed by the viewer including those protected by access conditions such as moving walls, licence requirements or IP restrictions - can be read in full.

  • Index data modification.

update() streaming expressions overwrite indexed field values. An attacker can alter metadata, change ACCESSCONDITION values, or corrupt document structure.

  • Index data deletion.

delete() streaming expressions permanently remove documents. A single expression can delete the entire collection, requiring a full re-index to recover.

Patches

The endpoint was removed in 326980f24c

Workarounds

Until an update can be deployed, the endpoint should be blocked by a reverse proxy or in the tomcat configuration.

For Apache httpd the following block can be used in the vhost configuration:

<LocationMatch ^.*api/v[12]/index/stream.*$>
    Require all denied
</LocationMatch>

Alternatively the following security constraint can be added in tomcat via the relevant web.xml:

<security-constraint>
      <web-resource-collection>
        <web-resource-name>blocked endpoint</web-resource-name>
        <url-pattern>/api/v1/index/stream</url-pattern>
        <url-pattern>/api/v1/index/stream/*</url-pattern>
      </web-resource-collection>
      <auth-constraint/>
</security-constraint>

References

Contact

If you have any questions or comments about this advisory:

  • Email us at [support@intranda.com](mailto:support@intranda.com)

AnalysisAI

Unauthenticated Solr streaming expression injection in Goobi viewer Core (versions 4.8.0 through 26.04) allows remote attackers to fully read, modify, or delete the backend Solr index by posting arbitrary expressions to the /api/v1/index/stream endpoint. No public exploit identified at time of analysis, but the vulnerability is trivially exploitable with CVSS 9.8 and bypasses access-condition protections such as moving walls and licence restrictions. EPSS is currently low (0.04%) reflecting the niche audience rather than technical difficulty.

Technical ContextAI

Goobi viewer is a Java/Maven web application (pkg:maven/io.goobi.viewer:viewer-core) developed by intranda for presenting digitised cultural heritage collections backed by an Apache Solr index. The vulnerable IndexResource JAX-RS endpoint accepted a raw Solr streaming expression as a text/plain body and forwarded it verbatim to SolrJ's SolrStream, which executes powerful Solr functions including search(), update(), and delete(). The root cause is CWE-306 (Missing Authentication for Critical Function): the endpoint was exposed without any auth-constraint and without filtering the expression grammar, effectively turning the viewer into an open proxy to Solr's full Streaming Expressions API.

RemediationAI

Vendor-released patch: upgrade Goobi viewer Core to v26.04.1 or later (https://github.com/intranda/goobi-viewer-core/releases/tag/v26.04.1), which removes the /api/v1/index/stream endpoint and the solr-solrj-streaming dependency per fix commit 326980f24ce1e7cfabf658dd5f615934ca68ebbd. If immediate upgrade is not possible, block the endpoint at a reverse proxy - for Apache httpd add <LocationMatch ^.*api/v[12]/index/stream.*$>Require all denied</LocationMatch> in the vhost - or add a Tomcat <security-constraint> in web.xml denying /api/v1/index/stream and /api/v1/index/stream/* (note: this also blocks any legitimate internal callers, though no such callers ship with the viewer). As a defence-in-depth step, harden the backing Solr instance by disabling the /stream request handler or binding Solr to localhost only so that even direct access requires authentication and update/delete handlers are not exposed; advisory details at https://github.com/intranda/goobi-viewer-core/security/advisories/GHSA-2rgp-f66f-4499.

More in Tomcat

View all
CVE-2017-12617 HIGH POC
8.1 Oct 04

When running Apache Tomcat versions 9.0.0.M1 to 9.0.0, 8.5.0 to 8.5.22, 8.0.0.RC1 to 8.0.46 and 7.0.0 to 7.0.81 with HTT

CVE-2020-1938 CRITICAL POC
9.8 Feb 24

When using the Apache JServ Protocol (AJP), care must be taken when trusting incoming connections to Apache Tomcat. Rate

CVE-2023-47246 CRITICAL POC
9.8 Nov 10

In SysAid On-Premise before 23.3.36, a path traversal vulnerability leads to code execution after an attacker writes a f

CVE-2016-8735 CRITICAL POC
9.8 Apr 06

Remote code execution is possible with Apache Tomcat before 6.0.48, 7.x before 7.0.73, 8.x before 8.0.39, 8.5.x before 8

CVE-2017-12615 HIGH POC
8.1 Sep 19

When running Apache Tomcat 7.0.0 to 7.0.79 on Windows with HTTP PUTs enabled (e.g. Rated high severity (CVSS 8.1), this

CVE-2023-44487 HIGH POC
7.5 Oct 10

Denial of service against HTTP/2 server implementations allows remote unauthenticated attackers to exhaust server resour

CVE-2014-0050 HIGH POC
7.5 Apr 01

MultipartStream.java in Apache Commons FileUpload before 1.3.1, as used in Apache Tomcat, JBoss Web, and other products,

CVE-2020-13935 HIGH POC
7.5 Jul 14

The payload length in a WebSocket frame was not correctly validated in Apache Tomcat 10.0.0-M1 to 10.0.0-M6, 9.0.0.M1 to

CVE-2017-12616 HIGH
7.5 Sep 19

When using a VirtualDirContext with Apache Tomcat 7.0.0 to 7.0.80 it was possible to bypass security constraints and/or

CVE-2020-9484 HIGH POC
7.0 May 20

When using Apache Tomcat versions 10.0.0-M1 to 10.0.0-M4, 9.0.0.M1 to 9.0.34, 8.5.0 to 8.5.54 and 7.0.0 to 7.0.103 if a)

CVE-2014-0227 MEDIUM
6.4 Feb 16

java/org/apache/coyote/http11/filters/ChunkedInputFilter.java in Apache Tomcat 6.x before 6.0.42, 7.x before 7.0.55, and

CVE-2026-34486 HIGH POC
7.5 Apr 09

Missing encryption of cluster replication traffic in Apache Tomcat 11.0.20, 10.1.53, and 9.0.116 exposes sensitive sessi

Share

CVE-2026-45083 vulnerability details – vuln.today

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