Cyber Security / Ethical Hacking
  • Prologue
  • CTF/OSCP Prep
    • Fundamentals
      • Linux
        • Basics
        • Bash Scripting
      • Windows
        • Basics
        • PowerShell
          • Scripting
        • CMD
      • Kali Survivor Skills
    • Information Gathering
      • Passive Recon
      • Active Recon
    • Enumeration
      • Common Ports
      • Vulnerability Analysis
    • Exploitation
      • Shells
  • Binary Exploitation / Exploit Development
    • Useful tools and techniques for Binary Exploitation
    • Shellcoders Handbook
      • Chapter 2 - Stack Overflows
        • Linux Buffer Overflow With Command Injection
        • Linux Buffer Overflow Without Shellcode
      • Chapter 3 - Shellcode
  • TryHackMe
    • Linux Fundamentals
      • Linux Challenges
      • RP: tmux
      • Common Linux Privesc
    • Advent of Cyber
      • Inventory Management
      • Arctic Forum
      • Evil Elf
      • Training
      • Ho-Ho-Hosint
      • Data Elf-iltration
      • Skilling Up
      • SUID Shenanigans
      • Requests
      • Metasploit-a-ho-ho-ho
      • Elf Applications
      • Elfcryption
      • Accumulate
      • Unknown Storage
    • Web Application Security
      • Web Fundamentals
      • Juice Shop
      • WebAppSec 101
    • Linux Privesc Playground
    • Intro to x86-64
    • Ninja Skills
    • CC: Radare2
    • Reversing ELF
    • Intro to Python
    • ToolsRus
  • Programming
    • Python
      • Simple TCP Port Scanner/ Banner Grabber
      • Botnet
      • Keylogger
      • Nmap Scanner
    • Golang
      • Execute Commands
      • MAC changer
      • TCP Port Scanner
      • TCP Port Scanner (improved with goroutines)
      • GoNmap Scanner
  • Protostar
    • Stack 0
    • Stack 1
    • Stack 2
  • Web App Pentesting
    • Recon
    • Authentication (Portswigger Academy)
      • Vulnerabilities in password-based login
        • Username Enumeration via different responses
        • Username enumeration via subtly different responses
        • Username enumeration via response timing
        • Broken brute-force protection, IP block
        • Username enumeration via account lock
        • Broken brute-force protection, multiple credentials per request
      • Vulnerabilities in multi-factor authentication
        • 2FA simple bypass
        • 2FA Broken Logic
        • 2FA bypass using a brute-force attack
      • Vulnerabilities in other authentication mechanisms
    • Broken Acess Controls
      • Insecure direct object references (IDOR)
        • Insecure direct object references lab
  • HackTheBox
    • Active
      • Untitled
      • Blunder
Powered by GitBook
On this page

Was this helpful?

  1. Web App Pentesting
  2. Authentication (Portswigger Academy)
  3. Vulnerabilities in password-based login

Username enumeration via account lock

PreviousBroken brute-force protection, IP blockNextBroken brute-force protection, multiple credentials per request

Last updated 4 years ago

Was this helpful?

In this lab we will exploit a logic flaw in account lockout. We have to enumerate a valid username and brute-force is password, like in the previous labs.

To solve this lab we will follow the same process of intercepting the login request with burp suit and sending it to intruder. This time, we need to cause the usernames to be repeated 5 times and observe which username returns a longer response.

Before executing an attack, to make sure every username is repeated 5 times, we need to add an arbitrary additional parameter to the end of the request and add a second payload position to it. We also need to use the Cluster bomb attack type to iterate through each payload set in turn.

Once the attack is finished we can notice that the username "academico" has a different length response, and instead of the "Invalid username or password", it has a different error message.

Now that we found the potential valid username, we can now perform a sniper attack to find the password with the passwords wordlist. Similar to a previous lab, we will set and create a grep extraction rule for the error message in order to find the correct password.

In the attack, all of the passwords throwed that same error, except the password "dallas", which ended being the correct password for the username "academico".