Katalog CVE

CVE-2026-71278

KrytyczneCVSS 9.8
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Streszczenie

Podatność w rust-iot-platform umożliwia tworzenie "reguły kalkulacyjnej" przez POST /calc-rule/create z dowolnym polem `script`. Ta trasa nie korzysta z zabezpieczenia AuthToken używanego w innych miejscach aplikacji, więc jest dostępna bez uwierzytelnienia. Przechowywany skrypt jest następnie wykonywany przez quick_js::Context::eval() bez sandboxingu, co pozwala nieuwierzytelnionemu atakującemu na wykonanie dowolnego kodu JavaScript w procesie serwera poprzez utworzenie i wyzwolenie złośliwej reguły.

Ocena ryzyka

Ryzyko zdalnego wykonania kodu w procesie serwera bez uwierzytelnienia, co może prowadzić do pełnej kompromitacji platformy IoT i związanych z nią danych.

Rekomendacja

Zaleca się dodanie zabezpieczenia AuthToken do trasy /calc-rule/create oraz zastosowanie sandboxingu dla wykonywania skryptów JavaScript. Należy również przejrzeć i ograniczyć dostęp do tej funkcji.

Oryginalny opis (angielski, źródło NVD)

rust-iot-platform allows creating a "calc rule" via POST /calc-rule/create (api/src/controller/calc_rule_router.rs) containing an arbitrary `script` field. This route does not take the AuthToken request guard used elsewhere in the application, making it reachable without authentication. The stored script is subsequently executed via quick_js::Context::eval() in api/src/biz/calc_run_biz.rs with no sandboxing, allowing an unauthenticated attacker to achieve arbitrary JavaScript execution in the server process by creating and triggering a malicious calc rule.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS