/

CVE-2026-107058

Severity:

CRITICAL RISK

(9.8)

Improper Authentication (CWE-287) in Shelter Binder API

CVE-2026-107058

Deferred

Vulnerability type

Category:

Improper Authentication

CWE:

CWE-287

Impact:

User and service takeover

Severity:

CRITICAL RISK

(9.8)

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

A critical authentication weakness in Shelter versionCode 445 may allow an attacker to register a self-controlled authentication key and take over another user's Binder service API and preference state. The issue becomes risky when the service accepts attacker-controlled identity material without adequately binding it to the legitimate user or authorization context.

A critical authentication weakness in Shelter versionCode 445 may allow an attacker to register a self-controlled authentication key and take over another user's Binder service API and preference state. The issue becomes risky when the service accepts attacker-controlled identity material without adequately binding it to the legitimate user or authorization context.

Affected context

The issue affects Shelter deployments using the Binder service API and associated preference state. It may arise when authentication keys can be registered or trusted without sufficient ownership verification, key-to-user binding, or authorization checks before sensitive Binder operations are performed.

The issue affects Shelter deployments using the Binder service API and associated preference state. It may arise when authentication keys can be registered or trusted without sufficient ownership verification, key-to-user binding, or authorization checks before sensitive Binder operations are performed.

Exploit preconditions

  • Attack surface: Shelter's Binder service API and authentication-key registration flow
  • Required access: Ability to reach the relevant API or service registration mechanism; the exact access level depends on deployment and platform controls
  • Trigger point: Processing an attacker-controlled auth_key during authentication or service access
  • Why exploitation is possible: The service may accept or associate attacker-controlled authentication material with another user's service or preference context without reliably verifying identity ownership and authorization
  • Attack surface: Shelter's Binder service API and authentication-key registration flow
  • Required access: Ability to reach the relevant API or service registration mechanism; the exact access level depends on deployment and platform controls
  • Trigger point: Processing an attacker-controlled auth_key during authentication or service access
  • Why exploitation is possible: The service may accept or associate attacker-controlled authentication material with another user's service or preference context without reliably verifying identity ownership and authorization

Why this happens

The underlying flaw is an authentication design weakness in which possession or registration of an authentication key is treated as sufficient proof of identity or service ownership. This behavior maps to CWE-287: Improper Authentication, because the application may fail to correctly verify that a supplied credential belongs to the user or service requesting access before granting control over protected Binder APIs and preference state.

The underlying flaw is an authentication design weakness in which possession or registration of an authentication key is treated as sufficient proof of identity or service ownership. This behavior maps to CWE-287: Improper Authentication, because the application may fail to correctly verify that a supplied credential belongs to the user or service requesting access before granting control over protected Binder APIs and preference state.

Potential impact

  • An attacker may take over another user's Binder service API
  • Unauthorized changes to user preference state could occur
  • Sensitive service actions or data may be accessed without proper authorization
  • Account or application integrity could be compromised
  • The issue could enable broader abuse of dependent Shelter functionality
  • An attacker may take over another user's Binder service API
  • Unauthorized changes to user preference state could occur
  • Sensitive service actions or data may be accessed without proper authorization
  • Account or application integrity could be compromised
  • The issue could enable broader abuse of dependent Shelter functionality

General mitigation guidance

Mitigation generally focuses on strengthening identity verification and ensuring that authentication material is securely bound to the correct user, device, and service context.

Common defensive patterns include:

  • Require proof of legitimate ownership before registering or replacing authentication keys
  • Bind keys to explicit user and service identities rather than accepting caller-selected associations
  • Apply authorization checks independently for every sensitive Binder operation
  • Use secure key storage, rotation, revocation, and lifecycle controls
  • Fail closed when identity, key ownership, or service associations cannot be verified
  • Apply least privilege to Binder interfaces and minimize access to preference state
  • Log and monitor key registration, replacement, and unusual cross-user service access

Mitigation generally focuses on strengthening identity verification and ensuring that authentication material is securely bound to the correct user, device, and service context.

Common defensive patterns include:

  • Require proof of legitimate ownership before registering or replacing authentication keys
  • Bind keys to explicit user and service identities rather than accepting caller-selected associations
  • Apply authorization checks independently for every sensitive Binder operation
  • Use secure key storage, rotation, revocation, and lifecycle controls
  • Fail closed when identity, key ownership, or service associations cannot be verified
  • Apply least privilege to Binder interfaces and minimize access to preference state
  • Log and monitor key registration, replacement, and unusual cross-user service access

How teams detect issues like this

Organizations can look for authentication and authorization weaknesses through:

  • Static analysis and code review of key-registration, credential-binding, and Binder permission checks
  • Tests that verify a key cannot be associated with a different user's service or preference state
  • Review signals such as caller-controlled identity fields, missing ownership checks, or authentication performed without authorization
  • Runtime monitoring for unexpected key registrations, key replacement, cross-user access, and preference modifications
  • Policy enforcement requiring explicit identity-to-credential binding and deny-by-default service permissions

Automated security testing and code-review tools may help identify missing authentication checks, although business-logic validation remains important.

Organizations can look for authentication and authorization weaknesses through:

  • Static analysis and code review of key-registration, credential-binding, and Binder permission checks
  • Tests that verify a key cannot be associated with a different user's service or preference state
  • Review signals such as caller-controlled identity fields, missing ownership checks, or authentication performed without authorization
  • Runtime monitoring for unexpected key registrations, key replacement, cross-user access, and preference modifications
  • Policy enforcement requiring explicit identity-to-credential binding and deny-by-default service permissions

Automated security testing and code-review tools may help identify missing authentication checks, although business-logic validation remains important.

Sources

SourceLink
f-droid.orgf-droid.org/packages/net.typeblog.shelter/
github.comgithub.com/FFG0d/fdroid-android-advisories/blob/main/advisories/CVE-2026-107058.md
github.comgithub.com/PeterCxy/Shelter

Frequently asked

questions

Exploitability depends on whether the affected Binder service API and key-registration flow are reachable by an untrusted application or remote interface. Local or platform-level access may still be sufficient if service permissions do not properly restrict callers.

An attacker generally needs access to the authentication-key registration or service interaction path and the ability to provide a self-controlled key. The precise requirement depends on Shelter's deployment and Android permission boundaries.

Verify credential ownership during registration, bind each key to the intended user and service, and enforce authorization independently before every sensitive Binder operation.

Use deny-by-default Binder permissions, explicit identity-to-key binding, secure key lifecycle management, negative authorization tests, and monitoring for unexpected cross-user activity.

Exploitability depends on whether the affected Binder service API and key-registration flow are reachable by an untrusted application or remote interface. Local or platform-level access may still be sufficient if service permissions do not properly restrict callers.

An attacker generally needs access to the authentication-key registration or service interaction path and the ability to provide a self-controlled key. The precise requirement depends on Shelter's deployment and Android permission boundaries.

Verify credential ownership during registration, bind each key to the intended user and service, and enforce authorization independently before every sensitive Binder operation.

Use deny-by-default Binder permissions, explicit identity-to-key binding, secure key lifecycle management, negative authorization tests, and monitoring for unexpected cross-user activity.

Find out what's already
exploitable in your codebase.