CVE-2026-56784: OpenRemote IDOR Allows Cross-Tenant Alarm Deletion
OpenRemote versions before 1.25.0 allow authenticated users to delete alarm records belonging to other customers (tenants) by directly referencing those alarms' database IDs. An attacker with basic alarm-management permissions can guess or enumerate sequential alarm IDs and permanently erase alerts from separate organizations without authorization. The vulnerability stems from missing tenant-level access controls in the bulk deletion endpoint.
Source data · NVD / CISA · public domain
- CVSS
- 3.1 · 8.1 HIGH · CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
- Weaknesses (CWE)
- CWE-639
- Affected products
- 0 configuration(s)
- Published / Modified
- 2026-06-23 / 2026-07-14
NVD description (verbatim)
OpenRemote before 1.25.0 contains an insecure direct object reference (IDOR) vulnerability in the bulk alarm deletion endpoint that allows authenticated users to permanently delete alarms belonging to other tenants by supplying arbitrary alarm IDs. The removeAlarms() method in AlarmResourceImpl.java omits realm-scoping validation in its JPA query, enabling any user with alarm-write permissions to enumerate sequential auto-increment alarm IDs and delete cross-tenant alarm records without authorization.
3 reference(s) · View on NVD →
SEC.co analysis · AI-assisted, reviewed against source
Technical summary
CVE-2026-56784 is an Insecure Direct Object Reference (IDOR) vulnerability affecting OpenRemote's alarm management REST API. The removeAlarms() method in AlarmResourceImpl.java constructs JPA queries without realm-scoping filters, meaning the authorization check only verifies that the user has write permissions to *some* alarm resource, not whether they own the specific alarm being deleted. An attacker can iterate through sequential auto-increment alarm IDs and delete records across tenant boundaries. The vulnerability requires prior authentication and basic alarm-write role assignment, but imposes no additional constraints on which alarm IDs can be targeted.
Business impact
Organizations relying on OpenRemote's multi-tenant alarm infrastructure may experience loss of critical operational alerts without audit trail visibility into unauthorized deletions. This affects IoT and building automation deployments where alarms trigger maintenance workflows, security responses, or compliance notifications. Malicious insiders or compromised accounts with low-privilege roles can sabotage monitoring across unrelated customer instances, undermining operational continuity and potentially delaying incident response.
Affected systems
OpenRemote versions prior to 1.25.0 are affected. The vendor_products field in the advisory data is empty, so verify against the official OpenRemote security advisory to confirm the complete list of impacted versions and any downstream products that embed this platform.
Exploitability
Exploitation requires an authenticated account with alarm-write permissions—a common role in multi-tenant SaaS deployments. No user interaction, complex exploitation steps, or specialized tools are needed beyond standard HTTP requests. The sequential auto-increment ID structure makes enumeration trivial. However, the attacker must have valid credentials to the target OpenRemote instance; unauthenticated exploitation is not possible.
Remediation
Upgrade to OpenRemote 1.25.0 or later, which restores realm-scoping validation to the removeAlarms() JPA query. Verify the patch changelog confirms that tenant isolation filters are now applied to bulk deletion operations. Until patching is feasible, restrict alarm-write role assignments to trusted administrators and implement network segmentation to limit authenticated access to the alarm management API.
Patch guidance
Consult the official OpenRemote release notes for version 1.25.0 and later to confirm patch availability and any deployment prerequisites. Test the upgrade in a non-production environment to validate compatibility with your alarm schema and integrated monitoring systems. Document the patch date for audit purposes, as the modified date of 2026-07-14 may indicate post-release refinements to the fix.
Detection guidance
Monitor API logs for repeated DELETE requests to the bulk alarm endpoint with varying alarm IDs, especially across different tenant contexts if multi-tenancy is logged. Look for alarm deletion events that do not correlate with administrative change requests. Review access logs for users with alarm-write permissions accessing alarms outside their assigned scope. If supported, enable audit logging at the JPA layer to capture object-level access patterns in the alarm table.
Why prioritize this
The CVSS 3.1 score of 8.1 (HIGH) reflects high confidentiality and integrity impact within a single-tenant context; however, the multi-tenant isolation breach elevates business risk. Prioritize patching in environments where alarm loss could cascade into undetected outages or compliance violations. Organizations with strict data isolation requirements should treat this as critical despite the CVSS rating.
Risk score, explained
The score of 8.1 is driven by high integrity impact (permanent, unauthorized data deletion) and high confidentiality impact (enumeration of tenant alarm structures). The attack vector is network-based and complexity is low. The requirement for authentication (PR:L) and lack of scope change prevent a critical rating. Scope remains unchanged because the vulnerability affects the same service boundary, not system-wide privileges.
Frequently asked questions
Can an unauthenticated attacker exploit this?
No. The vulnerability requires a valid OpenRemote account with alarm-write role assignment. Unauthenticated requests to the API will be rejected at the authentication layer.
Does the patch require database migration or downtime?
Verify against the official OpenRemote 1.25.0 release notes. Typically, adding realm-scope filters to queries does not require schema changes, but test thoroughly in a staging environment before production deployment.
How can we detect if we've been compromised by this vulnerability?
Search audit logs for DELETE operations on alarm records by non-administrative users, or for alarm deletions that do not match change request tickets. If multi-tenant audit logging is enabled, cross-reference tenant IDs in deletion events with user assignments.
Are there workarounds if we cannot patch immediately?
Restrict alarm-write role assignments to a minimal set of trusted administrators and use network access controls to limit API exposure. However, this reduces functionality and does not close the vulnerability—patching is the recommended resolution.
This analysis is based on the published advisory for CVE-2026-56784 as of 2026-07-14. Patch version numbers, vendor timelines, and affected product lists should be verified against the official OpenRemote security advisory and your deployment manifest. No exploit code is provided. Organizations should conduct independent testing before applying patches to production systems. Source: NVD (public-domain), retrieved 2026-07-29. Analysis generated by SEC.co (claude-haiku-4-5).
Weaknesses (CWE)
Related vulnerabilities
- CVE-2025-14772HIGHABB T-MAC Plus Authorization Bypass (CVSS 8.8)
- CVE-2025-59133HIGHProjectopia Custom Role IDOR Vulnerability (7.5 CVSS)
- CVE-2026-12204HIGHShopXO Authorization Bypass in Order & Payment Processing
- CVE-2026-33760HIGHLangflow BOLA Vulnerability Allows Cross-User Data Access
- CVE-2026-40768HIGHUnauthenticated IDOR in Salon Booking System ≤10.30.24 – HIGH Severity
- CVE-2026-41084HIGHApache Airflow Task Instances API Authorization Bypass
- CVE-2026-42863HIGHFlowiseAI Mass Assignment Vulnerability in Chatflow Update Endpoint
- CVE-2026-42947HIGHNaxclow Device Takeover Vulnerability – Silent Unauthorized Reassignment