GARY IS COMING FOR YOU

You shouldn't have done that.

⚙ MALEVELON CREEK
CLICK TO SCAN
SPACE-BAR SERVICE DESK

Bartender

Here to help you explore

Questions and relevant page context are sent to TypeSafe. Questions Bartender cannot answer are saved to improve the site, without your account or IP. Other conversation stays in this tab.

hydra Tool Reference


hydra is a fast and flexible brute force authentication tool. It supports parallel attacks on many protocols including SSH, HTTP, FTP, SMB, and more.


Basic Syntax

  • hydra -l <user> -P <wordlist> <target> <service> - Basic brute force
  • hydra -L <userlist> -p <password> <target> <service> - User enumeration
  • hydra -L <userlist> -P <wordlist> <target> <service> - Full brute force

Common Options

  • -l <login> - Single login name
  • -L <file> - Login file (one per line)
  • -p <password> - Single password
  • -P <file> - Password file (one per line)
  • -t <tasks> - Number of parallel tasks (default 16)
  • -w <timeout> - Wait time between attempts (default 32)
  • -f - Exit on first valid login
  • -s <port> - Port number (if non-standard)
  • -v - Verbose mode
  • -V - Show login/password attempts
  • -o <file> - Output file for found credentials

SSH Brute Force

  • hydra -l <user> -P <wordlist> ssh://<target> - SSH attack
  • hydra -l <user> -P <wordlist> -s 2222 ssh://<target> - Custom SSH port
  • hydra -L users.txt -P passwords.txt ssh://<target> - Multiple users

HTTP/HTTPS Brute Force

  • hydra -l <user> -P <wordlist> http-get://<target>/login - HTTP GET
  • hydra -l <user> -P <wordlist> http-post-form://<target>/login:"user=^USER^&pass=^PASS^":"F=incorrect" - POST form
  • hydra -l <user> -P <wordlist> https://<target>/login - HTTPS
  • hydra -L users.txt -P passwords.txt http-get://<target>/protected - HTTP basic auth

FTP Brute Force

  • hydra -l <user> -P <wordlist> ftp://<target> - FTP attack
  • hydra -L users.txt -P passwords.txt ftp://<target> - Multiple users
  • hydra -l anonymous -P passwords.txt ftp://<target> - Anonymous FTP

SMB Brute Force

  • hydra -l <user> -P <wordlist> smb://<target> - SMB attack
  • hydra -L users.txt -P passwords.txt smb://<target> - Multiple users
  • hydra -L users.txt -P passwords.txt smb://<target>/share - Specific share

RDP Brute Force

  • hydra -l <user> -P <wordlist> rdp://<target> - RDP attack
  • hydra -L users.txt -P passwords.txt rdp://<target> - Multiple users

MySQL Brute Force

  • hydra -l <user> -P <wordlist> mysql://<target> - MySQL attack
  • hydra -L users.txt -P passwords.txt mysql://<target> - Multiple users

PostgreSQL Brute Force

  • hydra -l <user> -P <wordlist> postgresql://<target> - PostgreSQL attack
  • hydra -L users.txt -P passwords.txt postgresql://<target> - Multiple users

VNC Brute Force

  • hydra -l <user> -P <wordlist> vnc://<target> - VNC attack
  • hydra -p <password> vnc://<target> - Password only (no user)

Advanced Options

  • -e nsr - Try null password, same as login, reversed login
  • -e n - Try null password
  • -e s - Try same as login
  • -e r - Try reversed login
  • -M <file> - Target list file
  • -C <file> - Colon-separated "login:pass" format
  • -S - Use SSL
  • -u - Loop around users, not passwords
  • -x min:max:charset - Password generation (e.g., -x 6:8:aA1)

Common Examples

SSH Attack

hydra -l root -P /usr/share/wordlists/rockyou.txt ssh://192.168.1.100

HTTP POST Form

hydra -l admin -P passwords.txt http-post-form://target.com/login.php:"user=^USER^&pass=^PASS^":"Invalid"

Multiple Users SSH

hydra -L users.txt -P passwords.txt -t 4 ssh://192.168.1.100

FTP Attack

hydra -L users.txt -P passwords.txt ftp://192.168.1.100

SMB Attack

hydra -L users.txt -P passwords.txt smb://192.168.1.100

RDP Attack

hydra -L users.txt -P passwords.txt rdp://192.168.1.100

MySQL Attack

hydra -l root -P passwords.txt mysql://192.168.1.100

VNC Attack

hydra -P passwords.txt vnc://192.168.1.100

Wordlist Generation

hydra -l admin -x 6:8:aA1 http-get://target.com/protected

Output to File

hydra -l admin -P passwords.txt -o results.txt ssh://192.168.1.100

Tips

  • Use -t to adjust parallel tasks (higher = faster but more detectable)
  • Use -f to stop on first valid login
  • Use -e nsr to try common weak passwords
  • Use -V for verbose output to see attempts
  • Always test on authorized systems only
  • Lower -t value reduces detection but increases time
  • Use -x for password generation when no wordlist available
  • Combine -L and -P for comprehensive testing
  • Use -o to save results for documentation
  • HTTP POST forms require proper syntax: "field=^USER^&field2=^PASS^":"error message"