CVE-2026-120295 · Package
NO FIX YET · SEE WHAT TO DO
NervesHub's devices page lets a user with only view access in one organization move devices into a second organization where they hold the view role, because the target product check accepts any membership role. Moved devices receive that organization's firmware and download URLs, which a view-only user could not otherwise obtain.
first public Nov 10, 2026 · 1 source
Could this affect your app?
Free first check from your website. Connect your repo for the full answer.
Teams running NervesHub for managing devices across more than one organization, where some users have view-only access in one organization and manage access in another. A single-organization deployment or one where all users hold manage rights is not exposed through this path. The attacker needs an authenticated account with the manage role in one organization and view in another.
Not affected if default-config, single-organization
Who cares elixir, iot, nerves-hub, self-hosted
nerves_hub version in your mix.lock or release; affected from 1.0.0 before 2.5.3.nerves_hub 2.5.3Incorrect Authorization vulnerability in the devices page bulk move in nerves-hub nerves_hub_web allows an authenticated user with the manage role in one organization and only the view role in another to move devices into the second organization's product via the "Move device(s) to product" action. The target-product event in NervesHubWeb.Live.Devices.Index looks the product up with NervesHub.Products.get_by_id/2, which checks that the user is a member of the product's organization at any role, and move-devices-product then changes each selected device's organization and product. The device API's move requires manage in the target organization, and an earlier fix added the check on the organization the devices leave but not on the one they enter.
A moved device keeps its key and certificate, joins the target organization's matching deployment groups, and is sent their firmware with a download URL, which the view role cannot otherwise obtain. The user cannot change or control devices that already belong to the other organization.
This issue affects nerves_hub: from 1.0.0 before 2.5.3.
Check it with your coding agent
It reads this page and tells you if your code is affected.
Are you affected?
Ask from here. InfraStack checks the affected versions against your stack and answers in your inbox.
InfraStack checks the affected versions against your stack and answers in Slack, with the evidence and the fix.
This page as .md · .json · CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
NVD data is provided by NIST and is public domain. Posts quoted belong to their authors.