cve.bz

CAPEC-16

Dictionary-based Password Attack

High severityMedium likelihoodDetailed pattern

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.

On this page

Ask an AI about this attack pattern

Show the promptExplain the attack pattern CAPEC-16: Dictionary-based Password Attack: how it unfolds, what it needs and how to prevent and detect it in my systems. Use https://capec.mitre.org/data/definitions/16.html and https://cve.bz/cve/capec/16?via=ask-ai-copy, which lists recent CVEs with the weaknesses it exploits. Cite the sources.

Opens a third-party assistant; its answer is its own, not cve.bz's. The prompt holds only this attack pattern's id and public links.

How the attack unfolds

  1. Explore

    The attacker looks for a way in.

    1. [Determine application's/system's password policy] Determine the password policies of the target application/system.

      3 techniques
      • Determine minimum and maximum allowed password lengths.
      • Determine format of allowed passwords (whether they are required or allowed to contain numbers, special characters, etc., or whether they are allowed to contain words from the dictionary).
      • Determine account lockout policy (a strict account lockout policy will prevent brute force attacks).
    2. [Select dictionaries] Pick the dictionaries to be used in the attack (e.g. different languages, specific terminology, etc.)

      2 techniques
      • Select dictionary based on particular users' preferred languages.
      • Select dictionary based on the application/system's supported languages.
    3. [Determine username(s) to target] Determine username(s) whose passwords to crack.

      3 techniques
      • Obtain username(s) by sniffing network packets.
      • Obtain username(s) by querying application/system (e.g. if upon a failed login attempt, the system indicates whether the entered username was valid or not)
      • Obtain usernames from filesystem (e.g. list of directories in C:\Documents and Settings\ in Windows, and list in /etc/passwd in UNIX-like systems)
  2. Exploit

    They carry out the attack.

    1. [Use dictionary to crack passwords.] Use a password cracking tool that will leverage the dictionary to feed passwords to the system and see if they work.

      2 techniques
      • Try all words in the dictionary, as well as common misspellings of the words as passwords for the chosen username(s).
      • Try common combinations of words in the dictionary, as well as common misspellings of the combinations as passwords for the chosen username(s).

Prerequisites

  • The system uses one factor password based authentication.

  • The system does not have a sound password policy that is being enforced.

  • The system does not implement an effective password throttling mechanism.

Skills required

  • Low skill

    A variety of password cracking tools and dictionaries are available to launch this type of an attack.

Resources required

  • A machine with sufficient resources for the job (e.g. CPU, RAM, HD). Applicable dictionaries are required. Also a password cracking tool or a custom script that leverages the dictionary database to launch the attack.

Signs of an attack

  • Many invalid login attempts are coming from the same machine (same IP address) or for the same log in name. The login attempts use passwords that are dictionary words.

Consequences

What a successful attack can lead to
ImpactAffectsNote
Gain PrivilegesConfidentiality, Access Control, Authentication
Read DataConfidentiality
Modify DataIntegrity

Mitigations

  • Create a strong password policy and ensure that your system enforces this policy.

  • Implement an intelligent password throttling mechanism. Care must be taken to assure that these mechanisms do not excessively enable account lockout attacks such as CAPEC-2.

  • Leverage multi-factor authentication for all authentication services.

Weaknesses it exploits

  • CWE-262 Not Using Password Aging
  • CWE-263 Password Aging with Long Expiration
  • CWE-307 Improper Restriction of Excessive Authentication Attempts
  • CWE-308 Use of Single-factor Authentication
  • CWE-309 Use of Password System for Primary Authentication
  • CWE-521 Weak Password Requirements
  • CWE-654 Reliance on a Single Factor in a Security Decision

Recent CVEs with these weaknesses

  1. 5.4CVE-2026-113968

    A logic issue was addressed with improved state management. This issue is fixed in iOS 18.7.12 and iPadOS 18.7.12, iOS 26.7.3 and iPadOS 26.7.3, iOS 27.2.1 and iPadOS 27.2.1, macOS Golden Gate 27.2.1, macOS Sequoia 15.8.3, macOS Tahoe 26.7…

  2. 5.4CVE-2026-113964

    A logic issue was addressed with improved state management. This issue is fixed in iOS 18.7.12 and iPadOS 18.7.12, iOS 26.7.3 and iPadOS 26.7.3, iOS 27.2.1 and iPadOS 27.2.1, macOS Golden Gate 27.2.1, macOS Sequoia 15.8.3, macOS Tahoe 26.7…

  3. 6.9CVE-2026-112205

    WidzialniCMS is vulnerable to Bruteforce Protection Bypass in the login functionality. The cookie-based lockout can be bypassed by omitting the login_count and login_timeout cookies, allowing an unauthenticated attacker to perform an unlim…

  4. 6.3CVE-2026-124575

    A vulnerability was identified in SiteServer SSCMS up to 7.1.3/7.2.1/7.4.0. This issue affects the function LoginController.Submit of the file src/SSCMS.Web/Controllers/Admin/LoginController.Submit.cs of the component Admin-Login CAPTCHA. …

  5. 9.3CVE-2026-124445

    OpenEMR from 7.0.1 before 8.4.0 contains a flaw in src/Common/Auth/OneTimeAuth.php that ignores the enforce_onetime_use and max_access_count flags, never revokes consumed service_auth tokens, and checks login_pin without rate limiting or s…

  6. 6.0CVE-2026-123521

    Vikunja before 2.7.1 contains an improper restriction of excessive authentication attempts vulnerability that allows session holders to brute-force account passwords via unthrottled re-authentication endpoints. Attackers with a stolen sess…

  7. 8.9CVE-2026-17280

    IBM API Connect 10.0.8.0 through 10.0.8.12 and 12.1.0.0 through 12.1.1.2 could allow a remote attacker to perform unauthenticated brute-force attacks to obtain valid credentials due to improper restriction of excessive authentication attem…

  8. 7.5CVE-2026-68933

    Chartbrew is an open-source web application that can connect directly to databases and APIs and use the data to create charts. Prior to 5.2.3, public dashboard passwords were stored in plaintext, accepted through a URL query parameter, and…

The newest records naming one of them. Each weakness's page lists them all.

Part of
Can lead to

Examples

A system user selects the word "treacherous" as their passwords believing that it would be very difficult to …

A system user selects the word "treacherous" as their passwords believing that it would be very difficult to guess. The password-based dictionary attack is used to crack this password and gain access to the account.

The Cisco LEAP challenge/response authentication mechanism uses passwords in a way that is susceptible to dic…

The Cisco LEAP challenge/response authentication mechanism uses passwords in a way that is susceptible to dictionary attacks, which makes it easier for remote attackers to gain privileges via brute force password guessing attacks.

Cisco LEAP is a mutual authentication algorithm that supports dynamic derivation of session keys. With Cisco LEAP, mutual authentication relies on a shared secret, the user's logon password (which is known by the client and the network), and is used to respond to challenges between the user and the Remote Authentication Dial-In User Service (RADIUS) server.

Methods exist for someone to write a tool to launch an offline dictionary attack on password-based authentications that leverage Microsoft MS-CHAP, such as Cisco LEAP. The tool leverages large password lists to efficiently launch offline dictionary attacks against LEAP user accounts, collected through passive sniffing or active techniques.

See also: CVE-2003-1096

MITRE's words, unchanged: CAPEC-16 at MITRE. CAPEC is Copyright © 2007–2026, The MITRE Corporation, used under the CAPEC terms of use: “The MITRE Corporation (MITRE) hereby grants you a non-exclusive, royalty-free license to use Common Attack Pattern Enumeration and Classification (CAPEC™) for research, development, and commercial purposes. Any copy you make for such purposes is authorized provided that you reproduce MITRE’s copyright designation and this license in any such copy.” CAPEC and the CAPEC logo are trademarks of The MITRE Corporation. Credits. All attack patterns.