{"id":"CVE-2026-114661","kind":"vulnerability","aliases":["CVE-2026-114661"],"related":[],"title":"OpenRemote: any logged-in user can open network tunnels into edge gateways","description":"OpenRemote 1.2.0 before 1.31.0 contains a missing authorization vulnerability in GatewayServiceResource that allows any authenticated user to start, stop and query gateway tunnels without an administrative role. Attackers can send POST or DELETE requests to the gateway tunnel endpoint to open persistent bidirectional TCP circuits into an edge gateway's network or tear down operator tunnels.","summary":"OpenRemote versions from 1.2.0 before 1.31.0 let any authenticated user start, stop and query gateway tunnels without an admin role. An attacker can open persistent bidirectional TCP tunnels into an edge gateway's network or tear down tunnels operators rely on.","severity":"critical","cvss":9.0,"epss":0.00239,"exploited":false,"exploited_at":null,"products":[{"name":"openremote","fixed":["1.31.0"],"affected":">= 1.2.0, < 1.31.0","ecosystem":"other"}],"ecosystems":["other"],"tags":["authorization","gateway","iot","openremote","other","self-hosted","tunnel"],"not_affected_if":["no-gateway-tunnels-in-use","version-1.31.0-or-later"],"how_to_check":"Check the OpenRemote version running on the manager (1.2.0 up to but not including 1.31.0 is affected).","fix":"Upgrade OpenRemote to 1.31.0 or later.\nUntil then, restrict who holds accounts on the instance and review gateway tunnel activity.","status":"open","published_at":"2026-10-22T02:16:58+00:00","first_seen_at":"2026-10-23T21:57:30+00:00","triaged_at":"2026-10-23T22:32:39+00:00","updated_at":"2026-10-24T07:15:52+00:00","category":"other","confidence":0.8,"triage":{"at":"2026-10-23T22:32:39Z","model":"claude-haiku-5-5","output":{"fix":"Upgrade OpenRemote to 1.31.0 or later.\nUntil then, restrict who holds accounts on the instance and review gateway tunnel activity.","reach":"network","title":"OpenRemote: any logged-in user can open network tunnels into edge gateways","impact":"high","summary":"OpenRemote versions from 1.2.0 before 1.31.0 let any authenticated user start, stop and query gateway tunnels without an admin role. An attacker can open persistent bidirectional TCP tunnels into an edge gateway's network or tear down tunnels operators rely on.","category":"other","who_cares":["openremote","self-hosted","iot"],"confidence":0.8,"needs_auth":"yes","worst_case":"Attacker opens TCP tunnels into an edge gateway's internal network","analyst_note":"Confirm the exact affected endpoint path and whether the fix commit or advisory at the NVD link gives a config-based workaround; the sources do not give a how-to-check command.","how_to_check":"Check the OpenRemote version running on the manager (1.2.0 up to but not including 1.31.0 is affected).\nunknown","needs_analyst":true,"not_affected_if":["version-1.31.0-or-later","no-gateway-tunnels-in-use"],"user_interaction":"no","needs_special_setup":"unknown","severity_if_unknown":"critical"},"cost_usd":0.000541,"input_tokens":3021,"output_tokens":477,"severity_before":"critical"},"analyst_status":"done","analyst_note":"Confirm the exact gateway tunnel endpoint path and whether gateway tunnels are enabled by default, via the NVD entry and the OpenRemote advisory or changelog.","search":"'-114661':16A,19A '-2026':15A,18A '1.2.0':33B,71C '1.31.0':35B,73C 'admin':48B 'administr':95C 'allow':82C 'attack':51B,97C 'authent':38B,84C 'author':21B,77C 'bidirect':55B,112C 'circuit':114C 'contain':74C 'cve':14A,17A 'delet':102C 'edg':12A,60B,117C 'endpoint':108C 'gateway':13A,22B,44B,61B,91C,106C,118C 'gatewayserviceresourc':80C 'host':28B 'iot':23B 'let':36B 'log':4A 'logged-in':3A 'miss':76C 'network':9A,63B,120C 'open':8A,53B,110C 'openremot':1A,24B,30B,70C 'openremote':20A 'oper':68B,124C 'persist':54B,111C 'post':100C 'queri':43B,90C 'reli':69B 'request':103C 'role':49B,96C 'self':27B 'self-host':26B 'send':99C 'start':40B,87C 'stop':41B,88C 'tcp':56B,113C 'tear':65B,122C 'tunnel':10A,29B,45B,57B,67B,92C,107C,125C 'user':6A,39B,85C 'version':31B 'vulner':78C 'without':46B,93C","nicknames":[],"mitigations":[],"who_affected":null,"tier":"B","verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-22T02:16:58+00:00","kev":null,"cvss_vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:L/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","cvss_by":"disclosure@vulncheck.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-114661","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-114661","severity":null,"published_at":"2026-10-22T02:16:58+00:00","modified_at":"2026-10-22T02:16:58+00:00","first_seen_at":"2026-10-23T21:57:30+00:00","fetched_at":"2026-10-23T22:29:02+00:00","note":null},{"source":"analyst","external_id":"CVE-2026-114661:217","url":null,"severity":null,"published_at":"2026-10-23T22:25:22+00:00","modified_at":"2026-10-23T22:25:22+00:00","first_seen_at":"2026-10-23T22:25:22+00:00","fetched_at":"2026-10-23T22:25:22+00:00","note":"Read VulnCheck advisory, 1.31.0 release notes, and source of GatewayServiceResource (1.30.1 interface, 1.31.0 impl). Endpoints: POST/DELETE gateway/tunnel (plus GETs tunnel/{realm}/{id}...) in the manager REST API; full /api/{realm}/ prefix inferred, not read. GHSA-5h8w-vg25-fw38 page not fetchable. Whether tunnels are on by default: not stated in sources, unknown. No exploitation or PoC found; no X search done. Sibling cross-realm gateway GHSAs also fixed in 1.31.0."},{"source":"epss","external_id":"CVE-2026-114661","url":"https://api.first.org/data/v1/epss?cve=CVE-2026-114661","severity":null,"published_at":null,"modified_at":null,"first_seen_at":"2026-10-24T07:15:52+00:00","fetched_at":"2026-10-25T12:38:51+00:00","note":null}],"documents":[{"id":1433,"url":"https://www.vulncheck.com/advisories/openremote-1.2.0-before-1.31.0-missing-authorization-in-gateway-tunnel-endpoints","title":"VulnCheck: OpenRemote missing authorization in gateway tunnel endpoints","kind":"advisory","source":"analyst","text":null,"published_at":null,"relation":"advisory","confidence":null,"note":null},{"id":1434,"url":"https://github.com/openremote/openremote/releases/tag/1.31.0","title":"OpenRemote 1.31.0 release notes","kind":"release","source":"analyst","text":null,"published_at":null,"relation":"fix","confidence":null,"note":null},{"id":1435,"url":"https://raw.githubusercontent.com/openremote/openremote/1.30.1/model/src/main/java/org/openremote/model/gateway/GatewayServiceResource.java","title":"GatewayServiceResource.java at 1.30.1 (vulnerable interface, endpoint paths)","kind":"other","source":"analyst","text":null,"published_at":null,"relation":"describes","confidence":null,"note":null}],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}