PT-2026-32964 · Unknown · Openremote
CVE-2026-39842
·
Publicado
2026-04-14
·
Atualizado
2026-04-15
CVSS v3.1
9.9
Crítica
| Vetor | AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H |
Name of the Vulnerable Software and Affected Versions
OpenRemote versões 1.21.0 e anteriores
Description
Duas falhas inter-relacionadas de injeção de expressão no mecanismo de regras permitem a execução de código arbitrário no servidor. O mecanismo de regras JavaScript executa scripts fornecidos pelo usuário através da função
ScriptEngine.eval() do Nashorn sem sandboxing, filtragem de classes ou restrições de acesso. Uma falha de autorização em RulesResourceImpl restringe regras Groovy a superusuários, mas deixa as regras JavaScript irrestritas para qualquer usuário com a função write:rules.Além disso, o mecanismo de regras Groovy possui um filtro de segurança
GroovyDenyAllFilter que está definido, mas não foi registrado, tornando o SandboxTransformer ineficaz para regras Groovy criadas por superusuários.Atacantes com a função
write:rules podem usar os seguintes endpoints de API para executar scripts maliciosos:- '/api/{realm}/rules/realm'
- '/api/{realm}/rules/asset'
A exploração permite a execução remota de código como root, leitura arbitrária de arquivos, roubo de variáveis de ambiente (incluindo credenciais de banco de dados) e a neutralização completa do isolamento multi-tenant para acessar dados de todos os reinos. Isso é alcançado usando
Java.type() para acessar classes JVM como java.lang.Runtime, java.io.FileReader e java.lang.System, ou usando reflexão Java para burlar a aplicação de reinos do AssetsFacade.Recommendations
Atualize o OpenRemote para a versão 1.22.0.
Exploit
Correção
RCE
Code Injection
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Openremote