Skip to main content

NORA Registry CVE-2026-59164

| EUVDEUVD-2026-112076 HIGH
Missing Authorization (CWE-862)
2026-10-28 GitHub_M
7.1
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain write-scoped bearer or OIDC identity
  2. Exploit
    Call /api/ui/tokens/list to enumerate all token IDs
  3. Execution
    POST revoke against admin/service token IDs
  4. Impact
    Disrupt registry and force credential recovery

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization checks on every request
MITRE ATT&CK

1 technique across 1 tactic: Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires the registry to have auth enabled and the token-management endpoints (/ui/tokens, /api/ui/tokens) reachable over the network. For metadata disclosure, the attacker needs any valid read-scoped bearer token (PR:L); for the destructive path, the attacker needs a valid write-scoped bearer token or a write-capable OIDC workload identity, which can then revoke arbitrary cross-user admin and service tokens using IDs exposed by the global list. Limiting factors: read-only identities cannot POST the revocation (they are confined to enumeration), exploitation presupposes the attacker already holds at least a valid write credential rather than being fully unauthenticated, and impact is greatest only on multi-identity deployments that hand write-scoped credentials to semi-trusted CI/OIDC workloads. There is also a related policy concern in the body-authenticated POST /api/tokens route where an htpasswd account could request role:admin, addressed in 0.9.5 via the new auth.admin_users allowlist.

Impact

Signals are moderate and broadly consistent rather than conflicting. The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:H/A:N, 7.1 High) describes a network-reachable, low-complexity flaw requiring low privileges and no user interaction - the PR:L is the key qualifier, since exploitation of the destructive path requires the attacker to already hold a valid write-scoped bearer token or write-capable OIDC identity, not an anonymous attacker. The vuln.today decision label is this_week (not act_now/emergency), which fits a credentialed broken-access-control issue rather than a remote-unauthenticated RCE. No CISA KEV listing and no EPSS score were provided in the input, so there is no evidence of active exploitation or a modeled exploitation probability; absence of these is not evidence of safety but should not be read as active exploitation. The GHSA advisory includes a reproduction (curl commands), but the reporter explicitly states they found it in source and did not test a deployed instance, so this is a public PoC reference, not verified working exploit code. Net: a real but scoped priority - most dangerous for instances that issue write-scoped CI/OIDC credentials to semi-trusted workloads, where any such credential can revoke admin and service tokens across all users. The I:H rating reflects that destructive cross-user revocation (credential-state tampering) rather than classic data integrity; read-only credentials are limited to metadata disclosure (C:L).

Exploit ScenarioDerived

A CI pipeline or OIDC workload holding only a write-scoped bearer token for pushing artifacts calls GET /api/ui/tokens/list and harvests the 16-character file IDs, owners, and roles of every token on the registry, including admin and service tokens. The attacker then POSTs /api/ui/tokens/<id>/revoke against those IDs, revoking unrelated administrators' and services' credentials and disrupting the registry until operators perform credential recovery. A public PoC reference exists (curl commands in the GHSA advisory); it is not verified as working exploit code.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 28, 2026

Missing authorization in NORA Registry (nora-registry) 0.9.4 and earlier lets any valid read-scoped bearer token enumerate token metadata - ID, owner, role, description, expiry and last-use - for every user through the globally scoped token-management list endpoint, while a write-scoped bearer token or write-capable OIDC workload identity can additionally revoke arbitrary admin and service tokens by ID, disrupting the registry and forcing credential recovery. The flaw is CWE-862: auth_middleware() authenticates /ui/tokens and /api/ui/tokens but only checks role.can_write() instead of role.can_admin(), so the handlers operate across all accounts. No CISA KEV entry or confirmed active exploitation was reported; the vendor advisory includes reproduction steps (a PoC reference) rather than verified working exploit code, and exploitation requires auth to be enabled, the token endpoints to be network-reachable, and the attacker to already hold a valid registry credential.

RemediationAI

Upgrade nora-registry to 0.9.5 (https://github.com/getnora-io/nora/releases/tag/v0.9.5), which is the vendor-released patch referenced by advisory GHSA-78cx-cfhm-rgmx, PR https://github.com/getnora-io/nora/pull/747 and commit dc9e943b208095ec1e8cc2cf7b5108fdb55cab9c; the fix carries the verified role through request extensions, restricts the global token list to admins and owner-scopes it for everyone else, owner-scopes revocation (returning 404 so token IDs cannot be probed) and blocks admin-role self-escalation on POST /api/tokens unless the account appears in the new auth.admin_users allowlist (NORA_AUTH_ADMIN_USERS). Because exploitation requires a pre-existing read or write credential, treat this as an urgent patch for the current cycle and, in parallel, audit and rotate all write-scoped CI/OIDC tokens and any admin or service tokens that may have been revoked or enumerated. If upgrading is not immediately possible, restrict /ui/tokens and /api/ui/tokens at the reverse proxy or network layer to trusted administrative sources - the trade-off is that legitimate self-service and UI token management becomes unavailable to non-admin users - and reduce the number of long-lived write-scoped tokens issued to semi-trusted workloads; note that these are compensating controls only and that only the 0.9.5 upgrade closes the cross-user listing and revocation paths.

Affected VersionsENISA

nora < 0.9.5

Affected Packages

euvd nora fix: 0.9.5

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

NORA is a self-hosted artifact registry and pull-through cache written in Rust on the axum web framework, with API tokens carrying Read, Write and Admin roles. The root cause is CWE-862 (Missing Authorization): auth_middleware in nora-registry/src/auth/mod.rs correctly excludes /ui/tokens and /api/ui/tokens from the public-route set, but after a bearer token or OIDC identity is verified it rejects state-changing methods only when !role.can_write() and never calls the existing Role::can_admin() helper anywhere in the server. Consequently the protected UI handlers in ui/mod.rs operate globally: tokens_page() and tokens_list() call store.list_all_tokens() and return HTML containing revoke actions for every user's tokens, and tokens_revoke() takes the exposed 16-character file ID and calls store.revoke_token(&file_id) with no ownership or admin check. A related policy gap exists in the body-authenticated POST /api/tokens route, where any valid htpasswd account could request role: admin. The 0.9.5 fix (PR #747) inserts an AuthenticatedRole into request extensions during middleware processing, gates list_all_tokens() behind can_admin() and otherwise owner-scopes the listing to the authenticated user, owner-scopes revocation with a 404 rather than 403 response so non-owners cannot probe token IDs, and restricts admin-token minting on the public route to usernames listed in the new auth.admin_users allowlist (NORA_AUTH_ADMIN_USERS).

Know when Nora gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 7.1 HIGH
AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:H/A:N
vuln.today AI 7.1 HIGH

Network-reachable token-management API, low complexity, and a held write-scoped credential (PR:L) enabling cross-user revocation (I:H) plus metadata disclosure (C:L); no availability metric despite disruption, matching the modeled integrity impact.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:H/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:H/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
High
Availability
None

Lifecycle Timeline

2
Patch available
Oct 28, 2026 - 14:03 EUVD
CVE Published
Oct 28, 2026 - 13:05 cve.org
HIGH 7.1

DescriptionCVE.org

NORA is a self-hosted artifact registry and pull-through cache. Prior to 0.9.5, nora-registry authenticates the token-management UI but fails to require administrator authorization. auth_middleware() protects /ui/tokens and /api/ui/tokens, but state-changing requests are checked only with role.can_write(), not role.can_admin(). tokens_page() and tokens_list() call store.list_all_tokens(), exposing IDs and metadata across all users, while tokens_revoke() calls store.revoke_token using the supplied token ID without an ownership or admin check. A read bearer token can enumerate other users' token existence, owner, role, description, expiry and last-use metadata. A write bearer token or write-capable OIDC identity can additionally revoke arbitrary admin and service tokens, disrupting the registry and forcing credential recovery. Read-only identities cannot POST a revocation. This issue is fixed in version 0.9.5.

Technical POC Analysis

CWE-862 (Missing Authorization), not a memory-safety or injection defect.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

CVE-2026-59164 is a high-severity authorization flaw in NORA Registry (nora-registry) version 0.9.4 and earlier that allows any authenticated user with a low-privilege read token to view token metadata for all users, and with a write token to revoke administrative and service tokens, potentially causing registry disruption and credential recovery efforts. This vulnerability primarily impacts organizations using NORA Registry for token management, requiring immediate attention to prevent unauthorized access and operational disruption.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: restrict network access to token management endpoints, enforce additional authorization checks via reverse proxy or API gateway, monitor and audit token activity, and rotate potentially exposed tokens.

Threat Intelligence Overview

Prevalence
Low
niche self-hosted artifact registry, limited enterprise footprint
Social Media
1
Sightings
Data Quality
4 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS N/A
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact
High

Priority Score

36
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +36
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy