NewApp Monitoring is liveSign up free
AgentbeamBeta
Open-source package vulnerability · Maven

CVE-2026-45083: Goobi viewer - Core: Unauthenticated Solr Streaming Expression Proxy

criticalCVSS 3.1 9.8GHSA-2rgp-f66f-4499

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.

Published May 13, 2026 · Updated Jun 8, 2026

Affected packages

io.goobi.viewer:viewer-core

Ecosystem
Maven
Affected
>= 4.8.0, <= 26.04
Fixed in
No patched version yet
Check
mvn dependency:tree -Dincludes=io.goobi.viewer:viewer-core

Advisory details

From the GitHub Advisory Database (CC BY 4.0).

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:

References

How this page is made: the data panel comes from the GitHub Advisory Database, CISA’s KEV catalog, the NVD and FIRST EPSS, and updates twice a day. No analysis has been written for this entry yet. Methodology