{"id":"CVE-2026-55442","kind":"vulnerability","aliases":["CVE-2026-55442"],"related":[],"title":"Goobi viewer: query sanitizer bypass lets attackers inject Solr local parameters","description":"The Goobi viewer is a web application that allows digitised material to be displayed in a web browser. From version 23.03 to before version 26.05, SolrTools.cleanUpQuery() strips Solr local-parameter syntax ({!...}) from user-supplied query strings before they reach Solr. Its regex can be bypassed by wrapping the local parameter in a second pair of curly braces ({{!...}}): the outer braces are stripped, the inner {!...} survives intact, and a valid Solr local parameter is forwarded. The flaw is in the shared sanitizer, so it affects any endpoint that routes user input through cleanUpQuery. The double-brace bypass applies from v23.10 (the greedy \\{(.+)\\} regex); a related bare-!join rewrap path is present. This issue has been patched in version 26.05.","summary":"Goobi viewer's cleanUpQuery sanitizer can be bypassed by wrapping Solr local parameters in doubled curly braces, so a valid local parameter reaches Solr. An attacker can use injected Solr parameters to alter or extend search queries against the backend index.","severity":"medium","cvss":5.3,"epss":0.0045,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["goobi-viewer","java","package","self-hosted","solr"],"not_affected_if":["version-26.05-or-later"],"how_to_check":"- Check the Goobi viewer version in the deployment; versions from 23.03 up to but not including 26.05 are affected per the sources\n- Look for the Goobi viewer application version in the deployed build or release tag, e.g. unknown if not exposed","fix":"- Upgrade Goobi viewer to `26.05` or later, per the sources\n- Unknown whether a configuration workaround exists before upgrading","status":"open","published_at":"2026-10-23T15:17:32+00:00","first_seen_at":"2026-10-23T21:57:34+00:00","triaged_at":"2026-10-25T04:18:52+00:00","updated_at":"2026-10-25T12:38:49+00:00","category":"package","confidence":0.6,"triage":{"at":"2026-10-25T04:18:52Z","model":"claude-haiku-5-5","output":{"fix":"- Upgrade Goobi viewer to `26.05` or later, per the sources\n- Unknown whether a configuration workaround exists before upgrading","reach":"internet","title":"Goobi viewer: query sanitizer bypass lets attackers inject Solr local parameters","impact":"medium","summary":"Goobi viewer's cleanUpQuery sanitizer can be bypassed by wrapping Solr local parameters in doubled curly braces, so a valid local parameter reaches Solr. An attacker can use injected Solr parameters to alter or extend search queries against the backend index.","category":"package","nicknames":[],"who_cares":["goobi-viewer","solr","java","self-hosted"],"confidence":0.6,"needs_auth":"unknown","worst_case":"Attacker alters Solr queries, possibly reading or manipulating index data","analyst_note":"Confirm the Solr local parameters reachable through the bypass and whether any endpoint is unauthenticated; check the NVD entry and Goobi project advisory for details.","how_to_check":"- Check the Goobi viewer version in the deployment; versions from 23.03 up to but not including 26.05 are affected per the sources\n- Look for the Goobi viewer application version in the deployed build or release tag, e.g. unknown if not exposed","needs_analyst":true,"not_affected_if":["version-26.05-or-later"],"who_is_affected":"Deployments of Goobi viewer from 23.03 before 26.05 that accept user search input routed through SolrTools.cleanUpQuery are affected, and the double-brace bypass specifically applies from 23.10. The flaw sits in the shared sanitizer, so any endpoint using it is in scope. Teams not running Goobi viewer can skip it.","user_interaction":"no","needs_special_setup":"unknown","severity_if_unknown":"medium"},"cost_usd":0.000668,"input_tokens":3482,"output_tokens":639,"severity_before":"medium"},"analyst_status":null,"analyst_note":null,"search":"'-2026':13A,16A '-55442':14A,17A '23.03':88C '26.05':92C,188C 'affect':153C 'allow':76C 'alter':59B 'appli':167C 'applic':74C 'attack':7A,52B 'backend':66B 'bare':175C 'brace':43B,126C,129C,165C 'browser':85C 'bypass':5A,34B,114C,166C 'cleanupqueri':30B,161C 'cur':42B,125C 'cve':12A,15A 'digitis':77C 'display':81C 'doubl':41B,164C 'double-brac':163C 'endpoint':155C 'extend':61B 'flaw':145C 'forward':143C 'goobi':1A,19B,27B,69C 'goobi-view':18B 'greedi':171C 'host':25B 'index':67B 'inject':8A,55B 'inner':133C 'input':159C 'intact':135C 'issu':182C 'java':21B 'join':176C 'let':6A 'local':10A,38B,47B,97C,118C,140C 'local-paramet':96C 'materi':78C 'outer':128C 'packag':22B 'pair':123C 'paramet':11A,39B,48B,57B,98C,119C,141C 'patch':185C 'path':178C 'present':180C 'queri':3A,63B,104C 'reach':49B,108C 'regex':111C,172C 'relat':174C 'rewrap':177C 'rout':157C 'sanit':4A,31B,150C 'search':62B 'second':122C 'self':24B 'self-host':23B 'share':149C 'solr':9A,26B,37B,50B,56B,95C,109C,139C 'solrtools.cleanupquery':93C 'string':105C 'strip':94C,131C 'suppli':103C 'surviv':134C 'syntax':99C 'use':54B 'user':102C,158C 'user-suppli':101C 'v23.10':169C 'valid':46B,138C 'version':87C,91C,187C 'viewer':2A,20B,28B,70C 'web':73C,84C 'wrap':36B,116C","nicknames":[],"mitigations":[],"who_affected":"Deployments of Goobi viewer from 23.03 before 26.05 that accept user search input routed through SolrTools.cleanUpQuery are affected, and the double-brace bypass specifically applies from 23.10. The flaw sits in the shared sanitizer, so any endpoint using it is in scope. Teams not running Goobi viewer can skip it.","tier":"C","verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-23T15:17:32+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N","cvss_by":"security-advisories@github.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-55442","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-55442","severity":null,"published_at":"2026-10-23T15:17:32+00:00","modified_at":"2026-10-23T16:28:32+00:00","first_seen_at":"2026-10-23T21:57:34+00:00","fetched_at":"2026-10-23T22:29:03+00:00","note":null},{"source":"epss","external_id":"CVE-2026-55442","url":"https://api.first.org/data/v1/epss?cve=CVE-2026-55442","severity":null,"published_at":null,"modified_at":null,"first_seen_at":"2026-10-25T12:38:49+00:00","fetched_at":"2026-10-25T12:38:49+00:00","note":null}],"documents":[],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}