CWEweakness

CWE-654 Reliance on a Single Factor in a Security Decision

Official page ↗
Alternate terms
Separation of Privilege
Abstraction
Base
Structure
Simple
Status
Draft
Languages
Not Language-Specific
CWE version
5.0

Description

A protection mechanism relies exclusively, or to a large extent, on the evaluation of a single condition or the integrity of a single object or entity in order to make a decision about granting access to restricted resources or functionality.

Common consequences

• Access Control: Gain Privileges or Assume Identity — If the single factor is compromised (e.g. by theft or spoofing), then the integrity of the entire security mechanism can be violated with respect to the user that is identified by that factor. • Non-Repudiation: Hide Activities — It can become difficult or impossible for the product to be able to distinguish between legitimate activities by the entity who provided the factor, versus illegitimate activities by an attacker.

Potential mitigations

• [Architecture and Design] Use multiple simultaneous checks before granting access to critical operations or granting critical privileges. A weaker but helpful mitigation is to use several successive checks (multiple layers of security). • [Architecture and Design] Use redundant access rules on different choke points (e.g., firewalls).

Observed examples

• CVE-2022-35248: Chat application skips validation when Central Authentication Service (CAS) is enabled, effectively removing the second factor from two-factor authentication

Related

Attack pattern · CAPEC (10)

  • CAPEC-16 Dictionary-based Password Attack attack pattern
  • CAPEC-274 HTTP Verb Tampering attack pattern
  • CAPEC-49 Password Brute Forcing attack pattern
  • CAPEC-55 Rainbow Table Password Cracking attack pattern
  • CAPEC-560 Use of Known Domain Credentials attack pattern
  • CAPEC-565 Password Spraying attack pattern
  • CAPEC-600 Credential Stuffing attack pattern
  • CAPEC-652 Use of Known Kerberos Credentials attack pattern
  • CAPEC-653 Use of Known Operating System Credentials attack pattern
  • CAPEC-70 Try Common or Default Usernames and Passwords attack pattern

Observed example · CVE (1)

  • CVE-2022-35248 A improper authentication vulnerability exists in Rocket.Chat <v5, <v4.8.2 and <v4.7.5 that allowed two factor authentication can be… vulnerability

Child of · CWE (2)

  • CWE-657 Violation of Secure Design Principles weakness
  • CWE-693 Protection Mechanism Failure weakness

Referenced by CAPEC · weakness (10)

  • CAPEC-16 Dictionary-based Password Attack attack pattern
  • CAPEC-274 HTTP Verb Tampering attack pattern
  • CAPEC-49 Password Brute Forcing attack pattern
  • CAPEC-55 Rainbow Table Password Cracking attack pattern
  • CAPEC-560 Use of Known Domain Credentials attack pattern
  • CAPEC-565 Password Spraying attack pattern
  • CAPEC-600 Credential Stuffing attack pattern
  • CAPEC-652 Use of Known Kerberos Credentials attack pattern
  • CAPEC-653 Use of Known Operating System Credentials attack pattern
  • CAPEC-70 Try Common or Default Usernames and Passwords attack pattern

Referenced by CVE · weakness (1)

  • CVE-2024-24771 Open Forms allows users create and publish smart forms. vulnerability

Referenced by CWE · child of (2)

  • CWE-308 Use of Single-factor Authentication weakness
  • CWE-309 Use of Password System for Primary Authentication weakness

Referenced by CWE · peer of (1)

  • CWE-1293 Missing Source Correlation of Multiple Independent Data weakness