Description
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.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| openremote | openremote | < 1.27.0 | 1.27.0 |
References
- GitHub Security Advisory (GHSA-q2gm-frx3-2qjr) vendor-advisory
- VulnCheck Advisory: openremote before 1.27.0 Cross-Tenant IDOR via setAssetLinks third-party-advisory