COMMON WEAKNESS ENUMERATIONIncomplete

CWE-1391

Use of Weak Credentials

The product uses weak credentials (such as a default key or hard-coded password) that can be calculated, derived, reused, or guessed by an attacker.

Abstraction

Class

Structure

Simple

Likelihood of Exploit

Medium

Understand the problem

What is the problem?

The product uses weak credentials (such as a default key or hard-coded password) that can be calculated, derived, reused, or guessed by an attacker.

Extended description

By design, authentication protocols try to ensure that attackers must perform brute force attacks if they do not know the credentials such as a key or password. However, when these credentials are easily predictable or even fixed (as with default or hard-coded passwords and keys), then the attacker can defeat the mechanism without relying on brute force. Credentials may be weak for different reasons, such as: - Hard-coded (i.e., static and unchangeable by the administrator) - Default (i.e., the same static value across different deployments/installations, but able to be changed by the administrator) - Predictable (i.e., generated in a way that produces unique credentials across deployments/installations, but can still be guessed with reasonable efficiency) - Previously Compromised (i.e., "leaked" credentials that were published as part of a data breach) Even if a new, unique credential is intended to be generated for each product installation, if the generation is predictable, then that may also simplify guessing attacks.

Root cause

How and when does the problem arise?

Lifecycle phase

Requirements

Lifecycle phase

Architecture and Design

Lifecycle phase

Installation

Lifecycle phase

Operation

Risk

What does successful exploitation lead to?

Bypass Protection Mechanism

Affected security scopes: Access Control

An adversary could bypass intended authentication restrictions.

Defence

How is it prevented and fixed?

Architecture and Design · Operation

Defence to apply across several lifecycle phases

Detail
When the user changes or sets a password, check the password against a database of already compromised or breached passwords. These passwords are likely to be used in password guessing attacks.

Effectiveness: Moderate