An attacker leverages the security functionality of the system aimed at thwarting potential attacks to launch a denial of service attack against a legitimate system user. Many systems, for instance, implement a password throttling mechanism that locks an account after a certain number of incorrect log in attempts. An attacker can leverage this throttling mechanism to lock a legitimate user out of their own account. The weakness that is being leveraged by an attacker is the very security feature that has been put in place to counteract attacks.
Description
Attack Execution Flow
Step 1
Experiment[Investigate account lockout behavior of system] Investigate the security features present in the system that may trigger an account lockout
Analyze system documentation to find list of events that could potentially cause account lockout
Obtain user account in system and attempt to lock it out by sending malformed or incorrect data repeatedly
Determine another user's login ID, and attempt to brute force the password (or other credentials) for it a predetermined number of times, or until the system provides an indication that the account is locked out.
[Investigate account lockout behavior of system] Investigare le funzionalità di sicurezza presenti nel sistema che potrebbero attivare il blocco dell'account
Analizzare la documentazione del sistema per trovare l'elenco degli eventi che potrebbero potenzialmente causare il lockout dell'account
Ottenere l'account utente nel sistema e tentare di bloccarlo inviando ripetutamente dati malformati o errati
Identificare l'ID di accesso di un altro utente e tentare di forzare la password (o altre credenziali) per esso un numero predeterminato di volte, o fino a quando il sistema non fornisce un'indicazione che l'account è stato bloccato.
Attack Techniques
-
Analyze system documentation to find list of events that could potentially cause account lockout
-
Obtain user account in system and attempt to lock it out by sending malformed or incorrect data repeatedlyIT: Analizzare la documentazione di sistema per individuare l'elenco degli eventi che potrebbero potenzialmente causare il blocco dell'account
-
Determine another user's login ID, and attempt to brute force the password (or other credentials) for it a predetermined number of times, or until the system provides an indication that the account is locked out.IT: Analizzare la documentazione di sistema per individuare l'elenco degli eventi che potrebbero potenzialmente causare il blocco dell'account
Step 2
Experiment[Obtain list of user accounts to lock out] Generate a list of valid user accounts to lock out
Obtain list of authorized users using another attack pattern, such as SQL Injection.
Attempt to create accounts if possible; system should indicate if a user ID is already taken.
Attempt to brute force user IDs if system reveals whether a given user ID is valid or not upon failed login attempts.
Sperimentazione
[Ottieni l'elenco degli account utente da bloccare] Genera un elenco di account utente validi da bloccare
Ottieni l'elenco degli utenti autorizzati utilizzando un altro schema di attacco, come SQL Injection.
Prova a creare account se possibile; il sistema dovrebbe indicare se un ID utente è già stato preso.
Prova a effettuare attacchi di brute force sugli ID utente se il sistema rivela se un determinato ID utente è valido o meno dopo tentativi di accesso falliti.
Attack Techniques
-
Obtain list of authorized users using another attack pattern, such as SQL Injection.
-
Attempt to create accounts if possible; system should indicate if a user ID is already taken.IT: Ottenere l'elenco degli utenti autorizzati utilizzando un altro schema di attacco, come SQL Injection.
-
Attempt to brute force user IDs if system reveals whether a given user ID is valid or not upon failed login attempts.IT: Ottenere l'elenco degli utenti autorizzati utilizzando un altro schema di attacco, come SQL Injection.
Step 3
Exploit[Lock Out Accounts] Perform lockout procedure for all accounts that the attacker wants to lock out.
For each user ID to be locked out, perform the lockout procedure discovered in the first step.
[Lock Out Accounts] Eseguire la procedura di blocco per tutti gli account che l'attaccante desidera bloccare.
Per ogni ID utente da bloccare, eseguire la procedura di lockout scoperta nel primo passaggio.
Attack Techniques
-
For each user ID to be locked out, perform the lockout procedure discovered in the first step.