/

CVE-2026-104108

Severity:

HIGH RISK

(8.1)

OIDC Account Takeover (CWE-287) in FileRise Identity

CVE-2026-104108

Deferred

Vulnerability type

Category:

Improper Authentication

CWE:

CWE-287, CWE-290, CWE-345

Impact:

Account Takeover and Privilege Escalation

Severity:

HIGH RISK

(8.1)

CVSS version:

3.1

Catch this CVE while code is being written

Detect vulnerable code directly in pull requests, so CVEs are fixed before merge.

Summary

FileRise versions before 3.23.0 may incorrectly associate an authenticated OIDC identity with an existing local account based on mutable preferred_username or email claims. If the identity provider permits claims that collide with a local username, an attacker could access that account, potentially including the built-in administrator account.

FileRise versions before 3.23.0 may incorrectly associate an authenticated OIDC identity with an existing local account based on mutable preferred_username or email claims. If the identity provider permits claims that collide with a local username, an attacker could access that account, potentially including the built-in administrator account.

Affected context

The issue occurs in FileRise deployments using OIDC authentication and account mapping based on provider-supplied preferred_username or email claims. Risk is higher when the configured identity provider allows users or tokens to obtain claims matching existing local usernames, or when email claims are accepted without requiring email_verified. Automatic account provisioning does not necessarily prevent the account-mapping condition.

The issue occurs in FileRise deployments using OIDC authentication and account mapping based on provider-supplied preferred_username or email claims. Risk is higher when the configured identity provider allows users or tokens to obtain claims matching existing local usernames, or when email claims are accepted without requiring email_verified. Automatic account provisioning does not necessarily prevent the account-mapping condition.

Exploit preconditions

  • Attack surface: FileRise's OIDC authentication and local-account mapping
  • Required access: An identity that can authenticate through the configured

OIDC provider, plus the ability to obtain or influence a colliding claim

  • Trigger point: FileRise maps the authenticated OIDC claims to a local

account during login

  • Why exploitation is possible: Account identity is derived from mutable

provider claims without sufficiently binding the identity to a verified,

immutable identifier

  • Attack surface: FileRise's OIDC authentication and local-account mapping
  • Required access: An identity that can authenticate through the configured

OIDC provider, plus the ability to obtain or influence a colliding claim

  • Trigger point: FileRise maps the authenticated OIDC claims to a local

account during login

  • Why exploitation is possible: Account identity is derived from mutable

provider claims without sufficiently binding the identity to a verified,

immutable identifier

Why this happens

The underlying bug is an authentication-account-linking flaw. FileRise uses mutable preferred_username or email claims to select a local account and does not consistently require email verification when email is used for naming. This maps primarily to CWE-287, Improper Authentication, with related characteristics of CWE-290, Authentication Bypass by Spoofing, and CWE-345, Insufficient Verification of Data Authenticity. The insecure pattern is treating provider-controlled naming attributes as authoritative account identities instead of validating a stable subject identifier and verified account-binding information.

The underlying bug is an authentication-account-linking flaw. FileRise uses mutable preferred_username or email claims to select a local account and does not consistently require email verification when email is used for naming. This maps primarily to CWE-287, Improper Authentication, with related characteristics of CWE-290, Authentication Bypass by Spoofing, and CWE-345, Insufficient Verification of Data Authenticity. The insecure pattern is treating provider-controlled naming attributes as authoritative account identities instead of validating a stable subject identifier and verified account-binding information.

Potential impact

  • An attacker may be authenticated as another local user.
  • An attacker could gain access to files and operations belonging to the

matched account.

  • A collision with the built-in administrator account could enable administrative

control of the FileRise instance.

  • Compromised administrative access may allow data exposure, modification, or

deletion.

  • The incident could affect other users and connected storage depending on

the administrator account's permissions.

  • An attacker may be authenticated as another local user.
  • An attacker could gain access to files and operations belonging to the

matched account.

  • A collision with the built-in administrator account could enable administrative

control of the FileRise instance.

  • Compromised administrative access may allow data exposure, modification, or

deletion.

  • The incident could affect other users and connected storage depending on

the administrator account's permissions.

General mitigation guidance

Mitigation generally focuses on strengthening OIDC identity binding and

reducing trust in mutable claims.

Common defensive patterns include:

  • Bind local accounts to a stable, issuer-scoped OIDC subject identifier

rather than preferred_username or an unverified email address.

  • Require email_verified and validate the claim issuer, audience, and token

signature before using email-based account mapping.

  • Prevent automatic matching to privileged local accounts unless an explicit,

verified administrative association exists.

  • Use secure-by-default settings that require deliberate account linking and

reject ambiguous or colliding identities.

  • Apply least privilege to local accounts and limit administrative sessions

and connected storage permissions.

  • Review existing OIDC-to-local account mappings for duplicate, stale, or

unexpectedly privileged associations.

Mitigation generally focuses on strengthening OIDC identity binding and

reducing trust in mutable claims.

Common defensive patterns include:

  • Bind local accounts to a stable, issuer-scoped OIDC subject identifier

rather than preferred_username or an unverified email address.

  • Require email_verified and validate the claim issuer, audience, and token

signature before using email-based account mapping.

  • Prevent automatic matching to privileged local accounts unless an explicit,

verified administrative association exists.

  • Use secure-by-default settings that require deliberate account linking and

reject ambiguous or colliding identities.

  • Apply least privilege to local accounts and limit administrative sessions

and connected storage permissions.

  • Review existing OIDC-to-local account mappings for duplicate, stale, or

unexpectedly privileged associations.

How teams detect issues like this

Detection approaches may include:

  • Static analysis and code review for account lookup logic using

preferred_username or email without stable subject binding or verification.

  • Checks for OIDC implementations that omit issuer, audience, signature, or

email_verified validation.

  • Tests covering claim collisions with ordinary and privileged local

usernames, including cases where automatic provisioning is disabled.

  • Authentication logging that records the issuer, subject, mapped local

account, and account-linking decision without exposing sensitive tokens.

  • Policy enforcement requiring explicit approval for external-identity links

to existing or privileged accounts.

  • Automated security review tools can help identify weak claim validation and

account-mapping patterns.

Detection approaches may include:

  • Static analysis and code review for account lookup logic using

preferred_username or email without stable subject binding or verification.

  • Checks for OIDC implementations that omit issuer, audience, signature, or

email_verified validation.

  • Tests covering claim collisions with ordinary and privileged local

usernames, including cases where automatic provisioning is disabled.

  • Authentication logging that records the issuer, subject, mapped local

account, and account-linking decision without exposing sensitive tokens.

  • Policy enforcement requiring explicit approval for external-identity links

to existing or privileged accounts.

  • Automated security review tools can help identify weak claim validation and

account-mapping patterns.

Sources

SourceLink
github.comgithub.com/error311/FileRise/commit/cc1118923b522baff28dca05bdd79c27f984c68a
github.comgithub.com/error311/FileRise/releases/tag/v3.23.0
github.comgithub.com/error311/FileRise/security/advisories/GHSA-c5c5-mv9m-j367

Frequently asked

questions

It can be exploitable through the FileRise login interface when OIDC is

enabled and the configured identity provider permits an attacker to obtain

claims that collide with a local account.

Not necessarily. The attacker generally needs an identity accepted by the

configured OIDC provider and the ability to receive a colliding

preferred_username or email claim.

Bind OIDC identities to a stable, issuer-scoped subject identifier, require

verified email claims when email is used, and reject ambiguous or

unauthorized links to existing accounts.

Treat naming claims as display data rather than proof of identity, enforce

complete token and claim validation, protect privileged account mappings, and

test for claim-collision scenarios during security reviews.

It can be exploitable through the FileRise login interface when OIDC is

enabled and the configured identity provider permits an attacker to obtain

claims that collide with a local account.

Not necessarily. The attacker generally needs an identity accepted by the

configured OIDC provider and the ability to receive a colliding

preferred_username or email claim.

Bind OIDC identities to a stable, issuer-scoped subject identifier, require

verified email claims when email is used, and reject ambiguous or

unauthorized links to existing accounts.

Treat naming claims as display data rather than proof of identity, enforce

complete token and claim validation, protect privileged account mappings, and

test for claim-collision scenarios during security reviews.

Find out what's already
exploitable in your codebase.