CWE-263: Password Aging with Long Expiration
The product supports password aging, but the expiration period is too long.
Last updated
Overview
Password aging (or password rotation) is a policy that forces users to change their passwords after a defined time period passes, such as every 30 or 90 days. A long expiration provides more time for attackers to conduct password cracking before users are forced to change to a new password. Note that while password aging was once considered an important security feature, it has since fallen out of favor by many, because it is not as effective against modern threats compared to other mechanisms such as slow hashes. In addition, forcing frequent changes can unintentionally encourage users to select less-secure passwords. However, password aging is still in use due to factors such as compliance requirements, e.g., Payment Card Industry Data Security Standard (PCI DSS).
Real-world CVEs
1 recorded CVEs are caused by CWE-263 (Password Aging with Long Expiration). The highest-severity and most recent are shown first.
Common consequences
What can happen when CWE-263 is exploited.
Gain Privileges or Assume Identity
Affects: Access Control
As passwords age, the probability that they are compromised grows.
How it happens
When it is introduced
Typically introduced during these phases of the software lifecycle.
How to prevent it
Practical mitigations for CWE-263, grouped by where in the lifecycle they apply.
Previously, "password expiration" was widely advocated as a defense-in-depth approach to minimize the risk of weak passwords, and it has become a common practice. Password expiration requires a password to be changed within a fixed time window (such as every 90 days). However, this approach has significant limitations in the current threat landscape, and its utility has been reduced in light of the adoption of related protection mechanisms (such as password complexity and computational effort), along with the recognition that regular password changes often caused users to generate more predictable passwords. As a result, this is now a Discouraged Common Practice [REF-1488] [REF-1489], especially as the sole factor in protecting passwords. It is still strongly encouraged to force password changes in case of evidence of compromise, but this is not the same as a forced "expiration" on an arbitrary time frame.
Ensure that password aging is limited so that there is a defined maximum age for passwords. Note that if the expiration window is too short, it can cause users to generate poor or predictable passwords.
Ensure that the user is notified several times leading up to the password expiration.
Create mechanisms to prevent users from reusing passwords or creating similar passwords.
Developers might disable clipboard paste operations into password fields as a way to discourage users from pasting a password into a clipboard. However, this might encourage users to choose less-secure passwords that are easier to type, and it can reduce the usability of password managers [REF-1294].
Effectiveness: Discouraged Common Practice
Code examples
Illustrative examples from MITRE showing how the weakness appears in code.
A system requires the changing of passwords every five years.
Terminology & mappings
Mapped taxonomies
- CLASP: Allowing password aging
Attack patterns
CAPEC attack patterns that exploit this weakness.
- CAPEC-16: Dictionary-based Password Attack
- CAPEC-49: Password Brute Forcing
- CAPEC-509: Kerberoasting
- CAPEC-55: Rainbow Table Password Cracking
- CAPEC-555: Remote Services with Stolen Credentials
- CAPEC-560: Use of Known Domain Credentials
- CAPEC-561: Windows Admin Shares with Stolen 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
Frequently asked questions
Common questions about CWE-263.
- What is CWE-263?
- The product supports password aging, but the expiration period is too long.
- What CVEs are caused by CWE-263?
- 1 recorded CVEs are attributed to CWE-263, including CVE-2023-1976.
- How do you prevent CWE-263?
- Previously, "password expiration" was widely advocated as a defense-in-depth approach to minimize the risk of weak passwords, and it has become a common practice. Password expiration requires a password to be changed within a fixed time window (such as every 90 days). However, this approach has significant limitations in the current threat landscape, and its utility has been reduced in light of the adoption of related protection mechanisms (such as password complexity and computational effort), along with the recognition that regular password changes often caused users to generate more predictable passwords. As a result, this is now a Discouraged Common Practice [REF-1488] [REF-1489], especially as the sole factor in protecting passwords. It is still strongly encouraged to force password changes in case of evidence of compromise, but this is not the same as a forced "expiration" on an arbitrary time frame.
- What are the consequences of CWE-263?
- Exploiting CWE-263 can lead to: Gain Privileges or Assume Identity.
- Is CWE-263 actively exploited?
- 1 recorded CVEs are caused by CWE-263; none are currently in CISA's KEV catalog of actively exploited flaws.
References
- MITRE CWE definition (CWE-263) (opens in a new tab)
- CWE-263 vulnerabilities on NVD (opens in a new tab)
- Learn: What is a CWE?
Weakness data is sourced from the MITRE CWE catalog (v4.20). CVE associations are aggregated and kept current by RadicalNotion.AI.
Stay ahead of CWE-263
Get alerted the moment a new CWE-263 vulnerability affects your stack, with AI-written analysis, severity context, and remediation guidance.