{"answers":{"affected":"It affects 1 product.","exploited":"There is no known exploitation of CVE-2026-28806 in the wild and no public exploit code.","fix":"No fix has been published for CVE-2026-28806 yet. Limit exposure of the affected software until one is available.","what":"CVE-2026-28806 is a critical missing authorization vulnerability in nerves-hub nerves_hub_web, published on 10 Mar 2026. Any signed-in user can exploit it over the network, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2026-28806 and fix it if it is affected.\n\nWhat it is: CVE-2026-28806 is a critical missing authorization vulnerability in nerves-hub nerves_hub_web, published on 10 Mar 2026. Any signed-in user can exploit it over the network, with no action from the victim.\nExploitation: There is no known exploitation of CVE-2026-28806 in the wild and no public exploit code.\n\nAffected product: nerves-hub nerves_hub_web. No package-level version data is available, so check the vendor advisory linked from the reference page.\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2026-28806/ (Markdown: https://insights.sbomify.com/CVE-2026-28806/index.md)","id":"CVE-2026-28806","markdown":"https://insights.sbomify.com/CVE-2026-28806/index.md","name":"CVE-2026-28806","record":{"aliases":["EEF-CVE-2026-28806","GHSA-f8fr-mccc-xvcx"],"analysis":{"component_type":"web_application","fix_type":"upgrade","impacts":["privilege_escalation","data_modify"],"network_reachable":"yes","non_default_config":false,"product_category":"Nerves Hub web app","requires_auth":"low_privilege","summary":"Authenticated users can control devices in other organizations via API manipulation, potentially leading to device compromise or service disruption.","user_interaction":"not_required","vuln_class":"missing_authorization"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"EEF","cpe":[{"product":"nerveshub","vendor":"nerves-hub"}],"cvss":{"score":9.4,"severity":"critical","source":"cna","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H","version":"4.0"},"cwes":[{"id":"CWE-668","name":"Exposure of Resource to Wrong Sphere"},{"id":"CWE-285","name":"Improper Authorization"}],"description":"Improper Authorization vulnerability in nerves-hub nerves_hub_web allows cross-organization device control via device bulk actions and device update API.\n\nMissing authorization checks in the device bulk actions and device update API endpoints allow authenticated users to target devices belonging to other organizations and perform actions outside of their privilege level.\n\nAn attacker can select devices outside of their organization by manipulating device identifiers and perform management actions on them, such as moving them to products they control. This may allow attackers to interfere with firmware updates, access device functionality exposed by the platform, or disrupt device connectivity.\n\nIn environments where additional features such as remote console access are enabled, this could lead to full compromise of affected devices.\n\nThis issue affects nerves_hub_web: from 1.0.0 before 2.4.0.","ecosystems":[],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"none_known"},"has_fix":false,"headline":"Improper authorization in device bulk actions and device update API allows cross-organization device control","id":"CVE-2026-28806","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":null,"product":null,"products":[],"type":"missing_authorization","year":"2026"},"n_packages":0,"n_references":4,"next":{"headline":"Path Traversal in wisp.serve_static allows arbitrary file read","id":"CVE-2026-28807"},"packages":[],"prev":{"headline":"OpenSTAManager: Time-Based Blind SQL Injection via `options[stato]` Parameter","id":"CVE-2026-28805"},"products":["nerves_hub_web"],"published":"2026-03-10","related":[{"cvss_score":9.5,"headline":"NervesHub has Insufficient Token Entropy that Allows Authentication Bypass via Brute Force","id":"CVE-2025-64097","kev_date_added":null,"published":"2026-01-22"}],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"US public information, NVD API terms","name":"NVD"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":"no","exploitation":"none","technical_impact":"total"},"state":"PUBLISHED","updated":"2026-05-27","vendors":["nerves-hub"]},"summary":"Authenticated users can control devices in other organizations via API manipulation, potentially leading to device compromise or service disruption.","url":"https://insights.sbomify.com/CVE-2026-28806/"}