{"id":"CVE-2026-45083","aliases":["GHSA-2rgp-f66f-4499"],"url":"https://o3.security/vulnerability/CVE-2026-45083","summary":"Goobi viewer: Unauthenticated Solr Streaming Expression Proxy","details":"### Summary\n\nThe Goobi viewer REST endpoint `POST /api/v1/index/stream` accepted an arbitrary Solr streaming\nexpression from unauthenticated network clients and forwarded it to the backend Solr server without restriction.\nAn attacker could read the complete Solr index and, in default Solr deployments, also modify or delete indexed records.\n\nThe API endpoint has now been removed.\n\n### Impact\n\n- **Complete Solr index read without authentication.**\n  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.\n\n- **Index data modification.**\n  `update()` streaming expressions overwrite indexed field values. An attacker can alter metadata, change `ACCESSCONDITION` values, or corrupt document structure.\n\n- **Index data deletion.**\n  `delete()` streaming expressions permanently remove documents. A single expression can delete the entire collection, requiring a full re-index to recover.\n\n### Patches\n\nThe endpoint was removed in 326980f24c\n\n### Workarounds\n\nUntil an update can be deployed, the endpoint should be blocked by a reverse proxy or in the tomcat configuration.\n\nFor Apache httpd the following block can be used in the vhost configuration:\n\n```\n<LocationMatch ^.*api/v[12]/index/stream.*$>\n    Require all denied\n</LocationMatch>\n```\n\nAlternatively the following security constraint can be added in tomcat via the relevant web.xml:\n```\n<security-constraint>\n      <web-resource-collection>\n        <web-resource-name>blocked endpoint</web-resource-name>\n        <url-pattern>/api/v1/index/stream</url-pattern>\n        <url-pattern>/api/v1/index/stream/*</url-pattern>\n      </web-resource-collection>\n      <auth-constraint/>\n</security-constraint>\n```\n\n### References\n\n- Fix commit: 326980f24c\n- Introducing commit: 6bfb1cbd42\n- [Solr Streaming Expressions reference](https://solr.apache.org/guide/solr/latest/query-guide/streaming-expressions.html)\n\n\n### Contact\n\nIf you have any questions or comments about this advisory:\n\n- Email us at [support@intranda.com](mailto:support@intranda.com)","published":"2026-05-27T21:00:52.103Z","modified":"2026-08-12T16:24:34.300129Z","cvss":{"score":9.8,"severity":"CRITICAL","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H"},"epss":{"score":0.0041,"percentile":0.34012,"asOf":"2026-08-31"},"cisaKev":null,"exploitsKnown":0,"affectedPackages":[{"ecosystem":"Maven","name":"io.goobi.viewer:viewer-core","fixedVersion":null}],"fix":{"url":"https://github.com/intranda/goobi-viewer-core/commit/326980f24ce1e7cfabf658dd5f615934ca68ebbd","label":"intranda/goobi-viewer-core@326980f"},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/45xxx/CVE-2026-45083.json"},{"type":"ADVISORY","url":"https://github.com/intranda/goobi-viewer-core/security/advisories/GHSA-2rgp-f66f-4499"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-45083"},{"type":"FIX","url":"https://github.com/intranda/goobi-viewer-core/commit/326980f24ce1e7cfabf658dd5f615934ca68ebbd"},{"type":"FIX","url":"https://github.com/intranda/goobi-viewer-core/commit/6bfb1cbd4250b0b347e84a80f38e8bf46acac705"},{"type":"PACKAGE","url":"https://github.com/intranda/goobi-viewer-core"},{"type":"WEB","url":"https://github.com/intranda/goobi-viewer-core/releases/tag/v26.04.1"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2026-08-12T16:24:34.300129Z"}}