Logo
-

Byte Open Security

(ByteOS Network)

Log In

Sign Up

ByteOS

Security
Vulnerability Details
Registries
Custom Views
Weaknesses
Attack Patterns
Filters & Tools
CWE-654:Reliance on a Single Factor in a Security Decision
Weakness ID:654
Version:v4.17
Weakness Name:Reliance on a Single Factor in a Security Decision
Vulnerability Mapping:Allowed
Abstraction:Base
Structure:Simple
Status:Draft
Likelihood of Exploit:
DetailsContent HistoryObserved CVE ExamplesReports
▼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.

▼Extended Description

▼Alternate Terms
Separation of Privilege

Some people and publications use the term "Separation of Privilege" to describe this weakness, but this term has dual meanings in current usage. While this entry is closely associated with the original definition of "Separation of Privilege" by Saltzer and Schroeder, others use the same term to describe poor compartmentalization (CWE-653). Because there are multiple interpretations, use of the "Separation of Privilege" term is discouraged.

▼Relationships
Relevant to the view"Research Concepts - (1000)"
NatureMappingTypeIDName
ChildOfDiscouragedC657Violation of Secure Design Principles
ChildOfDiscouragedP693Protection Mechanism Failure
ParentOfAllowedB1293Missing Source Correlation of Multiple Independent Data
ParentOfAllowedB308Use of Single-factor Authentication
ParentOfAllowedB309Use of Password System for Primary Authentication
Nature: ChildOf
Mapping: Discouraged
Type: Class
ID: 657
Name: Violation of Secure Design Principles
Nature: ChildOf
Mapping: Discouraged
Type: Pillar
ID: 693
Name: Protection Mechanism Failure
Nature: ParentOf
Mapping: Allowed
Type: Base
ID: 1293
Name: Missing Source Correlation of Multiple Independent Data
Nature: ParentOf
Mapping: Allowed
Type: Base
ID: 308
Name: Use of Single-factor Authentication
Nature: ParentOf
Mapping: Allowed
Type: Base
ID: 309
Name: Use of Password System for Primary Authentication
▼Memberships
NatureMappingTypeIDName
MemberOfProhibitedC975SFP Secondary Cluster: Architecture
MemberOfProhibitedC1006Bad Coding Practices
MemberOfProhibitedC1418Comprehensive Categorization: Violation of Secure Design Principles
Nature: MemberOf
Mapping: Prohibited
Type:Category
ID: 975
Name: SFP Secondary Cluster: Architecture
Nature: MemberOf
Mapping: Prohibited
Type:Category
ID: 1006
Name: Bad Coding Practices
Nature: MemberOf
Mapping: Prohibited
Type:Category
ID: 1418
Name: Comprehensive Categorization: Violation of Secure Design Principles
▼Tags
NatureMappingTypeIDName
MemberOfProhibitedBSBOSS-294Not Language-Specific Weaknesses
MemberOfProhibitedBSBOSS-322Hide Activities (impact)
MemberOfProhibitedBSBOSS-332Gain Privileges or Assume Identity (impact)
Nature: MemberOf
Mapping: Prohibited
Type:BOSSView
ID: BOSS-294
Name: Not Language-Specific Weaknesses
Nature: MemberOf
Mapping: Prohibited
Type:BOSSView
ID: BOSS-322
Name: Hide Activities (impact)
Nature: MemberOf
Mapping: Prohibited
Type:BOSSView
ID: BOSS-332
Name: Gain Privileges or Assume Identity (impact)
▼Relevant To View
Relevant to the view"Software Development - (699)"
NatureMappingTypeIDName
MemberOfProhibitedC1006Bad Coding Practices
Nature: MemberOf
Mapping: Prohibited
Type: Category
ID: 1006
Name: Bad Coding Practices
Relevant to the view"Software Fault Pattern (SFP) Clusters - (888)"
NatureMappingTypeIDName
MemberOfProhibitedC975SFP Secondary Cluster: Architecture
Nature: MemberOf
Mapping: Prohibited
Type: Category
ID: 975
Name: SFP Secondary Cluster: Architecture
▼Background Detail

▼Common Consequences
ScopeLikelihoodImpactNote
Access ControlN/AGain 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-RepudiationN/AHide 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.

Scope: Access Control
Likelihood: N/A
Impact: Gain Privileges or Assume Identity
Note:

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.

Scope: Non-Repudiation
Likelihood: N/A
Impact: Hide Activities
Note:

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
Phase:Architecture and Design
Mitigation ID:
Strategy:
Effectiveness:
Description:

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).

Note:


Phase:Architecture and Design
Mitigation ID:
Strategy:
Effectiveness:
Description:

Use redundant access rules on different choke points (e.g., firewalls).

Note:

▼Modes Of Introduction
Phase: Architecture and Design
Note:

N/A

Phase: Implementation
Note:

N/A

Phase: Operation
Note:

N/A

▼Applicable Platforms
Languages
Class: Not Language-Specific(Undetermined Prevalence)
▼Demonstrative Examples
Example 1

Password-only authentication is perhaps the most well-known example of use of a single factor. Anybody who knows a user's password can impersonate that user.

Language: ( code)
N/A

Example 2

When authenticating, use multiple factors, such as "something you know" (such as a password) and "something you have" (such as a hardware-based one-time password generator, or a biometric device).

Language: ( code)
N/A

▼Observed Examples
ReferenceDescription
CVE-2022-35248
Chat application skips validation when Central Authentication Service (CAS) is enabled, effectively removing the second factor from two-factor authentication
Reference: CVE-2022-35248
Description:
Chat application skips validation when Central Authentication Service (CAS) is enabled, effectively removing the second factor from two-factor authentication
▼Affected Resources
    ▼Functional Areas
      ▼Weakness Ordinalities
      OrdinalityDescription
      Primary
      N/A
      Ordinality: Primary
      Description:
      N/A
      ▼Detection Methods
      ▼Vulnerability Mapping Notes
      Usage:Allowed
      Reason:Acceptable-Use
      Rationale:

      This CWE entry is at the Base level of abstraction, which is a preferred level of abstraction for mapping to the root causes of vulnerabilities.

      Comments:

      Carefully read both the name and description to ensure that this mapping is an appropriate fit. Do not try to 'force' a mapping to a lower-level Base/Variant simply to comply with this preferred level of abstraction.

      Suggestions:
      ▼Notes
      Maintenance

      This entry is closely associated with the term "Separation of Privilege." This term is used in several different ways in the industry, but they generally combine two closely related principles: compartmentalization (CWE-653) and using only one factor in a security decision (this entry). Proper compartmentalization implicitly introduces multiple factors into a security decision, but there can be cases in which multiple factors are required for authentication or other mechanisms that do not involve compartmentalization, such as performing all required checks on a submitted certificate. It is likely that CWE-653 and CWE-654 will provoke further discussion.

      N/A

      ▼Taxonomy Mappings
      Taxonomy NameEntry IDFitEntry Name
      ISA/IEC 62443Part 4-1N/AReq SD-3
      ISA/IEC 62443Part 4-1N/AReq SD-4
      ISA/IEC 62443Part 4-1N/AReq SI-1
      Taxonomy Name: ISA/IEC 62443
      Entry ID: Part 4-1
      Fit: N/A
      Entry Name: Req SD-3
      Taxonomy Name: ISA/IEC 62443
      Entry ID: Part 4-1
      Fit: N/A
      Entry Name: Req SD-4
      Taxonomy Name: ISA/IEC 62443
      Entry ID: Part 4-1
      Fit: N/A
      Entry Name: Req SI-1
      ▼Related Attack Patterns
      IDName
      CAPEC-16
      Dictionary-based Password Attack
      CAPEC-274
      HTTP Verb Tampering
      CAPEC-49
      Password Brute Forcing
      CAPEC-55
      Rainbow Table Password Cracking
      CAPEC-560
      Use of Known Domain Credentials
      CAPEC-565
      Password Spraying
      CAPEC-600
      Credential Stuffing
      CAPEC-652
      Use of Known Kerberos Credentials
      CAPEC-653
      Use of Known Operating System Credentials
      CAPEC-70
      Try Common or Default Usernames and Passwords
      ID: CAPEC-16
      Name: Dictionary-based Password Attack
      ID: CAPEC-274
      Name: HTTP Verb Tampering
      ID: CAPEC-49
      Name: Password Brute Forcing
      ID: CAPEC-55
      Name: Rainbow Table Password Cracking
      ID: CAPEC-560
      Name: Use of Known Domain Credentials
      ID: CAPEC-565
      Name: Password Spraying
      ID: CAPEC-600
      Name: Credential Stuffing
      ID: CAPEC-652
      Name: Use of Known Kerberos Credentials
      ID: CAPEC-653
      Name: Use of Known Operating System Credentials
      ID: CAPEC-70
      Name: Try Common or Default Usernames and Passwords
      ▼References
      Reference ID: REF-196
      Title: The Protection of Information in Computer Systems
      Author: Jerome H. Saltzer, Michael D. Schroeder
      Section:
      Publication:
      Proceedings of the IEEE 63
      Publisher:
      Edition:
      URL:http://web.mit.edu/Saltzer/www/publications/protection/
      URL Date:
      Day:N/A
      Month:09
      Year:1975
      Reference ID: REF-535
      Title: Separation of Privilege
      Author: Sean Barnum, Michael Gegick
      Section:
      Publication:
      Publisher:
      Edition:
      URL:https://web.archive.org/web/20220126060047/https://www.cisa.gov/uscert/bsi/articles/knowledge/principles/separation-of-privilege
      URL Date:2023-04-07
      Day:06
      Month:12
      Year:2005
      Details not found