CWE-521
AllowedWeak Password Requirements
Abstraction: Base · Status: Draft
The product does not require that users should have strong passwords.
360 vulnerabilities reference this CWE, most recent first.
GHSA-39WP-9WM7-9FXQ
Vulnerability from github – Published: 2022-05-13 01:49 – Updated: 2022-05-13 01:49Baseon Lantronix MSS devices do not require a password for TELNET access.
{
"affected": [],
"aliases": [
"CVE-2018-12925"
],
"database_specific": {
"cwe_ids": [
"CWE-521"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2018-06-28T11:29:00Z",
"severity": "CRITICAL"
},
"details": "Baseon Lantronix MSS devices do not require a password for TELNET access.",
"id": "GHSA-39wp-9wm7-9fxq",
"modified": "2022-05-13T01:49:41Z",
"published": "2022-05-13T01:49:41Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2018-12925"
},
{
"type": "WEB",
"url": "https://www.seebug.org/vuldb/ssvid-97375"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
"type": "CVSS_V3"
}
]
}
GHSA-3CCG-X393-96V8
Vulnerability from github – Published: 2026-02-25 22:02 – Updated: 2026-02-27 21:51Summary The application allows users to set weak passwords (e.g., 1234, password) without enforcing minimum strength requirements. Additionally, active sessions remain valid after a user changes their password.
An attacker who compromises an account (via brute-force or credential stuffing) can maintain persistent access even after the victim resets their password.
Details
- Weak passwords are accepted during registration and password change.
- No minimum length or strength validation is enforced.
- After changing the password, previously issued session tokens remain valid.
- No forced logout occurs across active sessions.
Attack scenario:
Attacker guesses or obtains weak credentials. Logs in and obtains active session token. Victim changes password. Attacker continues accessing the account using the old session.
Steps to Reproduce
1. Register using a weak password (e.g., 12345678 ). 2. Log in and Password Change functionality. 3. Change account password with single character (e.g., 1 or a ) 4. Reuse the old session. 5. Observe that access is still granted.
Impact
- Persistent account takeover
- Unauthorized access to sensitive data
- Increased brute-force success probability
- Elevated risk for administrative accounts
The combination of weak password controls and improper session invalidation significantly increases both exploitability and impact.
Recommendation Password Policy Improvements:
- Enforce strong password policies – Require passwords to be 8–16+ characters with a mix of uppercase, lowercase, numbers, and special characters.
- Block common passwords – Use a blacklist of commonly used and breached passwords.
- Use secure hashing – Store passwords using strong salted hashing algorithms like bcrypt or Argon2.
- Enable account lockout – Limit failed login attempts to reduce brute-force risk.
- Educate users – Promote strong password practices and phishing awareness.
Session Management Fix:
- Invalidate all active sessions upon password change
- Revoke refresh tokens (if applicable)
- Implement token/session versioning
- Regenerate session IDs after credential updates
- Log and notify users of password change events
Implementing both controls will significantly reduce the risk of persistent account compromise.
A fixed version is available at https://github.com/go-vikunja/vikunja/releases/tag/v2.0.0.
{
"affected": [
{
"package": {
"ecosystem": "Go",
"name": "code.vikunja.io/api"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "0.24.6"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2026-27575"
],
"database_specific": {
"cwe_ids": [
"CWE-521",
"CWE-613"
],
"github_reviewed": true,
"github_reviewed_at": "2026-02-25T22:02:37Z",
"nvd_published_at": "2026-02-25T22:16:26Z",
"severity": "CRITICAL"
},
"details": "**Summary**\nThe application allows users to set weak passwords (e.g., 1234, password) without enforcing minimum strength requirements. Additionally, active sessions remain valid after a user changes their password.\n\nAn attacker who compromises an account (via brute-force or credential stuffing) can maintain persistent access even after the victim resets their password.\n\n\n**Details**\n\n1. Weak passwords are accepted during registration and password change.\n2. No minimum length or strength validation is enforced.\n3. After changing the password, previously issued session tokens remain valid.\n4. No forced logout occurs across active sessions.\n\n_Attack scenario:_\n\nAttacker guesses or obtains weak credentials.\nLogs in and obtains active session token.\nVictim changes password.\nAttacker continues accessing the account using the old session.\n\n**Steps to Reproduce**\n\n**1.** Register using a weak password (e.g., 12345678 ).\n**2.** Log in and Password Change functionality.\n**3.** Change account password with single character (e.g., 1 or a )\n**4.** Reuse the old session.\n**5.** Observe that access is still granted.\n\n**Impact**\n\n- Persistent account takeover\n- Unauthorized access to sensitive data\n- Increased brute-force success probability\n- Elevated risk for administrative accounts\n\nThe combination of weak password controls and improper session invalidation significantly increases both exploitability and impact.\n\n**Recommendation**\n_**Password Policy Improvements:**_\n\n- Enforce strong password policies \u2013 Require passwords to be 8\u201316+ characters with a mix of uppercase, lowercase, numbers, and special characters.\n- Block common passwords \u2013 Use a blacklist of commonly used and breached passwords.\n- Use secure hashing \u2013 Store passwords using strong salted hashing algorithms like bcrypt or Argon2.\n- Enable account lockout \u2013 Limit failed login attempts to reduce brute-force risk.\n- Educate users \u2013 Promote strong password practices and phishing awareness.\n\n_**Session Management Fix:**_\n\n- Invalidate all active sessions upon password change\n- Revoke refresh tokens (if applicable)\n- Implement token/session versioning\n- Regenerate session IDs after credential updates\n- Log and notify users of password change events\n\nImplementing both controls will significantly reduce the risk of persistent account compromise.\n\n\u003cimg width=\"1918\" height=\"907\" alt=\"Weak Password Policy Combined with Persistent Sessions After Password Change POC\" src=\"https://github.com/user-attachments/assets/f188b69b-0472-4d2c-aeda-c145384c99ef\" /\u003e\n\nA fixed version is available at https://github.com/go-vikunja/vikunja/releases/tag/v2.0.0.",
"id": "GHSA-3ccg-x393-96v8",
"modified": "2026-02-27T21:51:50Z",
"published": "2026-02-25T22:02:37Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/go-vikunja/vikunja/security/advisories/GHSA-3ccg-x393-96v8"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-27575"
},
{
"type": "WEB",
"url": "https://github.com/go-vikunja/vikunja/commit/89c17d3b23e2a23320ad135b4e8f0a14fdd91bda"
},
{
"type": "PACKAGE",
"url": "https://github.com/go-vikunja/vikunja"
},
{
"type": "WEB",
"url": "https://vikunja.io/changelog/vikunja-v2.0.0-was-released"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N",
"type": "CVSS_V3"
}
],
"summary": "Vijkunja has Weak Password Policy Combined with Persistent Sessions After Password Change"
}
GHSA-3FR5-8RRJ-9RF2
Vulnerability from github – Published: 2024-04-13 15:34 – Updated: 2024-11-18 16:26A vulnerability was found in Smart Office up to 20240405. It has been classified as problematic. Affected is an unknown function of the file Main.aspx. The manipulation of the argument New Password/Confirm Password with the input 1 leads to weak password requirements. It is possible to launch the attack remotely. The complexity of an attack is rather high. The exploitability is told to be difficult. The exploit has been disclosed to the public and may be used. VDB-260574 is the identifier assigned to this vulnerability. NOTE: The vendor was contacted early about this disclosure but did not respond in any way.
{
"affected": [],
"aliases": [
"CVE-2024-3735"
],
"database_specific": {
"cwe_ids": [
"CWE-521"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2024-04-13T13:15:46Z",
"severity": "MODERATE"
},
"details": "A vulnerability was found in Smart Office up to 20240405. It has been classified as problematic. Affected is an unknown function of the file Main.aspx. The manipulation of the argument New Password/Confirm Password with the input 1 leads to weak password requirements. It is possible to launch the attack remotely. The complexity of an attack is rather high. The exploitability is told to be difficult. The exploit has been disclosed to the public and may be used. VDB-260574 is the identifier assigned to this vulnerability. NOTE: The vendor was contacted early about this disclosure but did not respond in any way.",
"id": "GHSA-3fr5-8rrj-9rf2",
"modified": "2024-11-18T16:26:40Z",
"published": "2024-04-13T15:34:57Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2024-3735"
},
{
"type": "WEB",
"url": "https://mega.nz/file/3MUjTIiB#gMuogm3Vaqk-QLRXMtSS2dqlEJlnBhKal6CjeC-dIF8"
},
{
"type": "WEB",
"url": "https://mega.nz/file/7F0BSJhD#EvnXFRviBstJGHSafvLmVWosWH2JFPAouD6ER8wnGxk"
},
{
"type": "WEB",
"url": "https://mega.nz/file/jMEXzYQA#vrwPyvrHm80njR4N3UaZLonNizKec1nCXjtvXiqm9g0"
},
{
"type": "WEB",
"url": "https://vuldb.com/?ctiid.260574"
},
{
"type": "WEB",
"url": "https://vuldb.com/?id.260574"
},
{
"type": "WEB",
"url": "https://vuldb.com/?submit.311153"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N",
"type": "CVSS_V3"
},
{
"score": "CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X",
"type": "CVSS_V4"
}
]
}
GHSA-3JHG-2X63-53Q4
Vulnerability from github – Published: 2022-05-24 16:47 – Updated: 2023-02-03 21:30IBM Intelligent Operations Center (IOC) 5.1.0 through 5.2.0 does not require that users should have strong passwords by default, which makes it easier for attackers to compromise user accounts. IBM X-Force ID: 157012.
{
"affected": [],
"aliases": [
"CVE-2019-4067"
],
"database_specific": {
"cwe_ids": [
"CWE-521"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2019-06-07T15:29:00Z",
"severity": "HIGH"
},
"details": "IBM Intelligent Operations Center (IOC) 5.1.0 through 5.2.0 does not require that users should have strong passwords by default, which makes it easier for attackers to compromise user accounts. IBM X-Force ID: 157012.",
"id": "GHSA-3jhg-2x63-53q4",
"modified": "2023-02-03T21:30:34Z",
"published": "2022-05-24T16:47:39Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2019-4067"
},
{
"type": "WEB",
"url": "https://exchange.xforce.ibmcloud.com/vulnerabilities/157012"
},
{
"type": "WEB",
"url": "https://www.ibm.com/support/docview.wss?uid=ibm10880213"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N",
"type": "CVSS_V3"
}
]
}
GHSA-3JHW-MC8H-C9H7
Vulnerability from github – Published: 2022-11-15 12:00 – Updated: 2022-11-17 21:30Siyucms v6.1.7 was discovered to contain a remote code execution (RCE) vulnerability in the background. SIYUCMS is a content management system based on ThinkPaP5 AdminLTE. SIYUCMS has a background command execution vulnerability, which can be used by attackers to gain server privileges
{
"affected": [],
"aliases": [
"CVE-2022-43030"
],
"database_specific": {
"cwe_ids": [
"CWE-521"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2022-11-14T23:15:00Z",
"severity": "HIGH"
},
"details": "Siyucms v6.1.7 was discovered to contain a remote code execution (RCE) vulnerability in the background. SIYUCMS is a content management system based on ThinkPaP5 AdminLTE. SIYUCMS has a background command execution vulnerability, which can be used by attackers to gain server privileges",
"id": "GHSA-3jhw-mc8h-c9h7",
"modified": "2022-11-17T21:30:50Z",
"published": "2022-11-15T12:00:17Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2022-43030"
},
{
"type": "WEB",
"url": "https://github.com/cai-niao98/siyu"
},
{
"type": "WEB",
"url": "https://github.com/cai-niao98/siyu/blob/main/README.md"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H",
"type": "CVSS_V3"
}
]
}
GHSA-3MMP-V5FP-4VCM
Vulnerability from github – Published: 2025-08-27 06:30 – Updated: 2025-08-27 06:30A vulnerability has been found in macrozheng mall up to 1.0.3. This impacts an unknown function of the component Registration. Such manipulation leads to weak password requirements. The attack can be executed remotely. Attacks of this nature are highly complex. The exploitability is said to be difficult. The vendor deleted the GitHub issue for this vulnerability without and explanation.
{
"affected": [],
"aliases": [
"CVE-2025-9514"
],
"database_specific": {
"cwe_ids": [
"CWE-521"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2025-08-27T06:15:32Z",
"severity": "MODERATE"
},
"details": "A vulnerability has been found in macrozheng mall up to 1.0.3. This impacts an unknown function of the component Registration. Such manipulation leads to weak password requirements. The attack can be executed remotely. Attacks of this nature are highly complex. The exploitability is said to be difficult. The vendor deleted the GitHub issue for this vulnerability without and explanation.",
"id": "GHSA-3mmp-v5fp-4vcm",
"modified": "2025-08-27T06:30:27Z",
"published": "2025-08-27T06:30:27Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2025-9514"
},
{
"type": "WEB",
"url": "https://github.com/macrozheng/mall/issues/923"
},
{
"type": "WEB",
"url": "https://vuldb.com/?ctiid.321507"
},
{
"type": "WEB",
"url": "https://vuldb.com/?id.321507"
},
{
"type": "WEB",
"url": "https://vuldb.com/?submit.635503"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N",
"type": "CVSS_V3"
},
{
"score": "CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X",
"type": "CVSS_V4"
}
]
}
GHSA-3PR4-C94W-58X7
Vulnerability from github – Published: 2022-05-13 01:46 – Updated: 2022-05-13 01:46An issue was discovered in certain Apple products. macOS before 10.13 Supplemental Update is affected. The issue involves the "Security" component. It allows attackers to bypass the keychain access prompt, and consequently extract passwords, via a synthetic click.
{
"affected": [],
"aliases": [
"CVE-2017-7150"
],
"database_specific": {
"cwe_ids": [
"CWE-521"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2017-10-23T01:29:00Z",
"severity": "MODERATE"
},
"details": "An issue was discovered in certain Apple products. macOS before 10.13 Supplemental Update is affected. The issue involves the \"Security\" component. It allows attackers to bypass the keychain access prompt, and consequently extract passwords, via a synthetic click.",
"id": "GHSA-3pr4-c94w-58x7",
"modified": "2022-05-13T01:46:52Z",
"published": "2022-05-13T01:46:52Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2017-7150"
},
{
"type": "WEB",
"url": "https://support.apple.com/HT208165"
},
{
"type": "WEB",
"url": "http://www.securityfocus.com/bid/101177"
},
{
"type": "WEB",
"url": "http://www.securitytracker.com/id/1039430"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N",
"type": "CVSS_V3"
}
]
}
GHSA-3Q22-68GW-X3MQ
Vulnerability from github – Published: 2025-10-01 18:30 – Updated: 2025-10-01 18:30IBM Transformation Extender Advanced 10.0.1
does not require that users should have strong passwords by default, which makes it easier for attackers to compromise user accounts.
{
"affected": [],
"aliases": [
"CVE-2023-49883"
],
"database_specific": {
"cwe_ids": [
"CWE-521"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2025-10-01T17:15:37Z",
"severity": "MODERATE"
},
"details": "IBM Transformation Extender Advanced 10.0.1 \n\n\n\n\n\ndoes not require that users should have strong passwords by default, which makes it easier for attackers to compromise user accounts.",
"id": "GHSA-3q22-68gw-x3mq",
"modified": "2025-10-01T18:30:39Z",
"published": "2025-10-01T18:30:39Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2023-49883"
},
{
"type": "WEB",
"url": "https://www.ibm.com/support/pages/node/7246885"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N",
"type": "CVSS_V3"
}
]
}
GHSA-3V2G-M6QM-PVJ3
Vulnerability from github – Published: 2021-12-07 00:00 – Updated: 2022-05-14 00:03An issue was discovered in Kaseya Unitrends Backup Appliance before 10.5.5. The password for the PostgreSQL wguest account is weak.
{
"affected": [],
"aliases": [
"CVE-2021-43036"
],
"database_specific": {
"cwe_ids": [
"CWE-521"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2021-12-06T04:15:00Z",
"severity": "CRITICAL"
},
"details": "An issue was discovered in Kaseya Unitrends Backup Appliance before 10.5.5. The password for the PostgreSQL wguest account is weak.",
"id": "GHSA-3v2g-m6qm-pvj3",
"modified": "2022-05-14T00:03:45Z",
"published": "2021-12-07T00:00:48Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2021-43036"
},
{
"type": "WEB",
"url": "https://helpdesk.kaseya.com/hc/en-gb/articles/4412762258961"
},
{
"type": "WEB",
"url": "https://www.cyberonesecurity.com/blog/exploiting-kaseya-unitrends-backup-appliance-part-1"
},
{
"type": "WEB",
"url": "https://www.cyberonesecurity.com/blog/exploiting-kaseya-unitrends-backup-appliance-part-2"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
"type": "CVSS_V3"
}
]
}
GHSA-43X5-W66J-7JFW
Vulnerability from github – Published: 2022-04-21 00:00 – Updated: 2022-05-05 00:00The weak password on the web user interface can be exploited via HTTP or HTTPS. Once such access has been obtained, the other passwords can be changed. The weak password on Linux accounts can be accessed via SSH or Telnet, the former of which is by default enabled on trusted interfaces. While the SSH service does not support root login, a user logging in using either of the other Linux accounts may elevate to root access using the su command if they have access to the associated password.
{
"affected": [],
"aliases": [
"CVE-2022-1039"
],
"database_specific": {
"cwe_ids": [
"CWE-521"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2022-04-20T16:15:00Z",
"severity": "CRITICAL"
},
"details": "The weak password on the web user interface can be exploited via HTTP or HTTPS. Once such access has been obtained, the other passwords can be changed. The weak password on Linux accounts can be accessed via SSH or Telnet, the former of which is by default enabled on trusted interfaces. While the SSH service does not support root login, a user logging in using either of the other Linux accounts may elevate to root access using the su command if they have access to the associated password.",
"id": "GHSA-43x5-w66j-7jfw",
"modified": "2022-05-05T00:00:47Z",
"published": "2022-04-21T00:00:24Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2022-1039"
},
{
"type": "WEB",
"url": "https://www.cisa.gov/uscert/ics/advisories/icsa-22-104-03"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
"type": "CVSS_V3"
}
]
}
Mitigation
- A product's design should require adherance to an appropriate password policy. Specific password requirements depend strongly on contextual factors, but it is recommended to contain the following attributes:
- Depending on the threat model, the password policy may include several additional attributes.
- See NIST 800-63B [REF-1053] for further information on password requirements.
- {'xhtml:li': ['Enforcement of a minimum and maximum length', 'Restrictions against password reuse', 'Restrictions against using common passwords', 'Restrictions against using contextual string in the password (e.g., user id, app name)']}
- {'xhtml:li': [{'xhtml:ul': {'xhtml:li': ['Increasing the range of characters makes the password harder to crack and may be appropriate for systems relying on single factor authentication.', 'Unfortunately, a complex password may be difficult to memorize, encouraging a user to select a short password or to incorrectly manage the password (write it down).', "Another disadvantage of this approach is that it often does not result in a significant increases in overal password complexity due to people's predictable usage of various symbols."]}, '#text': 'Complex passwords requiring mixed character sets (alpha, numeric, special, mixed case)'}, {'xhtml:ul': {'xhtml:li': ['Increasing the number of characters makes the password harder to crack and may be appropriate for systems relying on single factor authentication.', 'A disadvantage of this approach is that selecting a good passphrase is not easy and poor passwords can still be generated. Some prompting may be needed to encourage long un-predictable passwords.']}, '#text': 'Large Minimum Length (encouraging passphrases instead of passwords)'}, {'xhtml:ul': {'xhtml:li': ['Generating a password for the user can help make sure that length and complexity requirements are met, and can result in secure passwords being used.', 'A disadvantage of this approach is that the resulting password or passpharse may be too difficult to memorize, encouraging them to be written down.']}, '#text': 'Randomly Chosen Secrets'}]}
Mitigation
Consider a second authentication factor beyond the password, which prevents the password from being a single point of failure. See CWE-308 for further information.
Mitigation
Consider implementing a password complexity meter to inform users when a chosen password meets the required attributes.
Mitigation
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.
CAPEC-112: Brute Force
In this attack, some asset (information, functionality, identity, etc.) is protected by a finite secret value. The attacker attempts to gain access to this asset by using trial-and-error to exhaustively explore all the possible secret values in the hope of finding the secret (or a value that is functionally equivalent) that will unlock the asset.
CAPEC-16: Dictionary-based Password Attack
An attacker tries each of the words in a dictionary as passwords to gain access to the system via some user's account. If the password chosen by the user was a word within the dictionary, this attack will be successful (in the absence of other mitigations). This is a specific instance of the password brute forcing attack pattern.
Dictionary Attacks differ from similar attacks such as Password Spraying (CAPEC-565) and Credential Stuffing (CAPEC-600), since they leverage unknown username/password combinations and don't care about inducing account lockouts.
CAPEC-49: Password Brute Forcing
An adversary tries every possible value for a password until they succeed. A brute force attack, if feasible computationally, will always be successful because it will essentially go through all possible passwords given the alphabet used (lower case letters, upper case letters, numbers, symbols, etc.) and the maximum length of the password.
CAPEC-509: Kerberoasting
Through the exploitation of how service accounts leverage Kerberos authentication with Service Principal Names (SPNs), the adversary obtains and subsequently cracks the hashed credentials of a service account target to exploit its privileges. The Kerberos authentication protocol centers around a ticketing system which is used to request/grant access to services and to then access the requested services. As an authenticated user, the adversary may request Active Directory and obtain a service ticket with portions encrypted via RC4 with the private key of the authenticated account. By extracting the local ticket and saving it disk, the adversary can brute force the hashed value to reveal the target account credentials.
CAPEC-55: Rainbow Table Password Cracking
An attacker gets access to the database table where hashes of passwords are stored. They then use a rainbow table of pre-computed hash chains to attempt to look up the original password. Once the original password corresponding to the hash is obtained, the attacker uses the original password to gain access to the system.
CAPEC-555: Remote Services with Stolen Credentials
This pattern of attack involves an adversary that uses stolen credentials to leverage remote services such as RDP, telnet, SSH, and VNC to log into a system. Once access is gained, any number of malicious activities could be performed.
CAPEC-561: Windows Admin Shares with Stolen Credentials
An adversary guesses or obtains (i.e. steals or purchases) legitimate Windows administrator credentials (e.g. userID/password) to access Windows Admin Shares on a local machine or within a Windows domain.
CAPEC-565: Password Spraying
In a Password Spraying attack, an adversary tries a small list (e.g. 3-5) of common or expected passwords, often matching the target's complexity policy, against a known list of user accounts to gain valid credentials. The adversary tries a particular password for each user account, before moving onto the next password in the list. This approach assists the adversary in remaining undetected by avoiding rapid or frequent account lockouts. The adversary may then reattempt the process with additional passwords, once enough time has passed to prevent inducing a lockout.
CAPEC-70: Try Common or Default Usernames and Passwords
An adversary may try certain common or default usernames and passwords to gain access into the system and perform unauthorized actions. An adversary may try an intelligent brute force using empty passwords, known vendor default credentials, as well as a dictionary of common usernames and passwords. Many vendor products come preconfigured with default (and thus well-known) usernames and passwords that should be deleted prior to usage in a production environment. It is a common mistake to forget to remove these default login credentials. Another problem is that users would pick very simple (common) passwords (e.g. "secret" or "password") that make it easier for the attacker to gain access to the system compared to using a brute force attack or even a dictionary attack using a full dictionary.