製品・ソフトウェアに関する情報
openremoteにおける複数の脆弱性
Title openremoteにおける複数の脆弱性
Summary

OpenRemoteはオープンソースのIoTプラットフォームです。バージョン1.21.0以下には、ルールエンジン内に関連した2つの式インジェクション脆弱性が存在し、これによりサーバー上で任意のコードを実行可能です。JavaScriptルールエンジンは、NashornのScriptEngine.eval()を介してユーザー提供のスクリプトをサンドボックス化せず、クラスフィルタリングやアクセス制限なしに実行します。また、RulesResourceImplの認可チェックはGroovyルールをスーパーユーザーにのみ制限しますが、JavaScriptルールはwrite:rulesロールを持つ任意のユーザーが制限なくアクセスできます。加えて、GroovyルールエンジンにはGroovyDenyAllFilterというセキュリティフィルターが定義されているものの、登録コードがコメントアウトされているため登録されておらず、SandboxTransformerはスーパーユーザー作成のGroovyルールに対して無効です。write:rulesロールを持つ非スーパーユーザーの攻撃者は、完全なJVMアクセス権限で実行されるJavaScriptルールセットを作成でき、これによりrootとしてリモートコードの実行、任意のファイル読み取り、データベース認証情報を含む環境変数の窃取、およびマルチテナント隔離の完全なバイパスを行い、全領域のデータにアクセス可能となります。本問題はバージョン1.22.0で修正されています。

Possible impacts 当該ソフトウェアが扱う全ての情報が外部に漏れる可能性があります。 また、当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。 さらに、当該ソフトウェアが完全に停止する可能性があります。 そして、この脆弱性を悪用した攻撃により、他のソフトウェアにも影響が及ぶ可能性があります。 
Solution

正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。

Publication Date April 15, 2026, midnight
Registration Date April 27, 2026, 11:21 a.m.
Last Update April 27, 2026, 11:21 a.m.
CVSS3.0 : 緊急
Score 9.9
Vector CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
Affected System
openremote
openremote 1.22.0 未満
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
ベンダー情報
その他
Change Log
No Changed Details Date of change
1 [2026年04月27日]
  掲載
April 27, 2026, 11:21 a.m.

NVD Vulnerability Information
CVE-2026-39842
Summary

OpenRemote is an open-source IoT platform. Versions 1.21.0 and below contain two interrelated expression injection vulnerabilities in the rules engine that allow arbitrary code execution on the server. The JavaScript rules engine executes user-supplied scripts via Nashorn's ScriptEngine.eval() without sandboxing, class filtering, or access restrictions, and the authorization check in RulesResourceImpl only restricts Groovy rules to superusers while leaving JavaScript rules unrestricted for any user with the write:rules role. Additionally, the Groovy rules engine has a GroovyDenyAllFilter security filter that is defined but never registered, as the registration code is commented out, rendering the SandboxTransformer ineffective for superuser-created Groovy rules. A non-superuser attacker with the write:rules role can create JavaScript rulesets that execute with full JVM access, enabling remote code execution as root, arbitrary file read, environment variable theft including database credentials, and complete multi-tenant isolation bypass to access data across all realms. This issue has been fixed in version 1.22.0.

Publication Date April 15, 2026, 1:17 p.m.
Registration Date April 17, 2026, 4:11 a.m.
Last Update April 24, 2026, 2:34 a.m.
Affected software configurations
Configuration1 or higher or less more than less than
cpe:2.3:a:openremote:openremote:*:*:*:*:*:*:*:* 1.22.0
Related information, measures and tools
Common Vulnerabilities List