---
id: CVE-2026-67310
title: >-
  OpenRemote (org.openremote:openremote) versions <= 1.26.2 contain an insecure
  direct object reference vulnerability in the setAssetLinks endpoint of
  AlarmResourceImpl
summary: >-
  OpenRemote (org.openremote:openremote) versions <= 1.26.2 contain an insecure
  direct object reference vulnerability in the setAssetLinks endpoint of
  AlarmResourceImpl. The realm access check validates only a single realm
  obtained via rea…
severity: medium
cvss: 5.4
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N'
cwe:
  - CWE-863
published: '2026-08-01'
updated: '2026-09-09'
sourceUpdated: '2026-09-09T20:35:08.537'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-67310'
references:
  - url: >-
      https://github.com/openremote/openremote/security/advisories/GHSA-q2gm-frx3-2qjr
    label: disclosure@vulncheck.com
  - url: >-
      https://www.vulncheck.com/advisories/openremote-before-cross-tenant-idor-via-setassetlinks
    label: disclosure@vulncheck.com
tags:
  - nvd
epss: 0.00239
epssPercentile: 0.13317
ingestedAt: '2026-08-02T07:18:01.704Z'
---

## Overview

OpenRemote (org.openremote:openremote) versions <= 1.26.2 contain an insecure direct object reference vulnerability in the setAssetLinks endpoint of AlarmResourceImpl. The realm access check validates only a single realm obtained via realms.stream().findFirst() on a HashSet of realms from the request, rather than all realms. Because HashSet iteration order is non-deterministic, an authenticated attacker who includes alarm-asset links from both their own realm and a victim realm can, with roughly 50% probability per request (retryable), persist cross-tenant links and disclose victim asset names (returned via @Formula fields) through GET requests on the attacker's own alarm. Fixed in 1.27.0.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
