COMMON ATTACK PATTERN ENUMERATION AND CLASSIFICATIONMITRE canlı kaydı

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.

Soyutlama

Detailed

Tipik ciddiyet

High

Saldırı ihtimali

Medium

Saldırıyı anla

Bu saldırı kalıbı nedir?

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.

Uygulama akışı

Saldırı adım adım nasıl ilerler?

1

Explore

Determine application's/system's password policy

Determine the password policies of the target application/system.

Kullanılan teknikler

  • 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).

Select dictionaries

Pick the dictionaries to be used in the attack (e.g. different languages, specific terminology, etc.)

Kullanılan teknikler

  • Select dictionary based on particular users' preferred languages.
  • Select dictionary based on the application/system's supported languages.

Determine username(s) to target

Determine username(s) whose passwords to crack.

Kullanılan teknikler

  • 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

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.

Kullanılan teknikler

  • 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).

Gereksinimler

Saldırının gerçekleşmesi için ne gerekir?

Ön koşullar

  • 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.

Gerekli beceri

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

Gerekli kaynak

  • 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.

Tespit

Saldırının göstergeleri nelerdir?

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.

Etki

Başarılı saldırı neye yol açar?

Gain Privileges

Etkilenen alanlar: Confidentiality, Access Control, Authentication

Read Data

Etkilenen alanlar: Confidentiality

Modify Data

Etkilenen alanlar: Integrity

Savunma

Nasıl önlenir ve etkisi azaltılır?

1
Create a strong password policy and ensure that your system enforces this policy.
2
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 .
3
Leverage multi-factor authentication for all authentication services.

Gerçek dünya

MITRE örnek olayları

Örnek olay 1Detay
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.
Örnek olay 2Detay
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
CAPEC-16: Dictionary-based Password Attack — DayBreach Saldırı Sözlüğü · DayBreach