Brute Force: Password Cracking

Adversaries may use password cracking to attempt to recover usable credentials, such as plaintext passwords, when credential material such as password hashes are obtained. OS Credential Dumping can be used to obtain password hashes, this may only get an adversary so far when Pass the Hash is not an option. Further, adversaries may leverage Data from Configuration Repository in order to obtain hashed credentials for network devices.[1]

Techniques to systematically guess the passwords used to compute hashes are available, or the adversary may use a pre-computed rainbow table to crack hashes. Cracking hashes is usually done on adversary-controlled systems outside of the target network.[2] The resulting plaintext password resulting from a successfully cracked hash may be used to log into systems, resources, and services in which the account has access.

ID: T1110.002
Sub-technique of:  T1110
Platforms: Identity Provider, Linux, Network, Office Suite, Windows, macOS
Contributors: Mohamed Kmal
Version: 1.3
Created: 11 February 2020
Last Modified: 14 October 2024

Procedure Examples

ID Name Description
G0022 APT3

APT3 has been known to brute force password hashes to be able to leverage plain text credentials.[3]

G0035 Dragonfly

Dragonfly has dropped and executed tools used for password cracking, including Hydra and CrackMapExec.[4][5]

G0037 FIN6

FIN6 has extracted password hashes from ntds.dit to crack offline.[6]

S0056 Net Crawler

Net Crawler uses a list of known credentials gathered through credential dumping to guess passwords to accounts as it spreads throughout a network.[7]

C0002 Night Dragon

During Night Dragon, threat actors used Cain & Abel to crack password hashes.[8]

Mitigations

ID Mitigation Description
M1032 Multi-factor Authentication

Use multi-factor authentication. Where possible, also enable multi-factor authentication on externally facing services.

M1027 Password Policies

Refer to NIST guidelines when creating password policies. [9]

Detection

ID Data Source Data Component Detects
DS0015 Application Log Application Log Content

Monitor authentication logs for system and application login failures of Valid Accounts. It is difficult to detect when hashes are cracked, since this is generally done outside the scope of the target network. Consider focusing efforts on detecting other adversary behavior used to acquire credential materials, such as OS Credential Dumping or Kerberoasting.

DS0002 User Account User Account Authentication

Monitor for many failed authentication attempts across various accounts that may result from password spraying attempts. It is difficult to detect when hashes are cracked, since this is generally done outside the scope of the target network. (ex: Windows EID 4625 or 5379)

Analytic 1 - Multiple failed logon attempts across different accounts.

(index=security sourcetype="WinEventLog:Security" EventCode IN (4625, 5379)) OR(index=os sourcetype="linux_secure" message="Failed password") OR(index=os sourcetype="macos_secure" message="Failed to authenticate user")

References