What is CWE-1391: Use of Weak Credentials?+
CWE-1391: Use of Weak Credentials is a Common Weakness Enumeration (CWE) entry maintained by MITRE. 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. 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.
What are the security consequences of Use of Weak Credentials?+
If exploited, CWE-1391 (Use of Weak Credentials) it can compromise Access Control, leading to outcomes such as Bypass Protection Mechanism.
How do you prevent or mitigate Use of Weak Credentials?+
Recommended mitigations for CWE-1391 include: 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.
Which programming languages are affected by Use of Weak Credentials?+
CWE-1391 commonly affects Not Language-Specific. Note that weaknesses are often language-agnostic patterns, so secure coding practices apply broadly.
What are real-world examples of Use of Weak Credentials?+
MITRE documents real CVEs mapped to CWE-1391, including [REF-1374], CVE-2022-30270, CVE-2022-29965, CVE-2022-30271 and CVE-2021-38759. You can look up the full details of each CVE, including CVSS scores and remediation guidance, on our CVE Lookup tool.
What is the difference between a CWE and a CVE?+
A CWE (Common Weakness Enumeration) like CWE-1391 describes a category of software weakness — the underlying flaw type. A CVE (Common Vulnerabilities and Exposures) identifies a specific, real-world vulnerability in a particular product. In short, a CWE is the kind of mistake, and a CVE is an instance of that mistake being found in software.