SecLists Username Lists for Brute Force Attacks: A Comprehensive Guide
SecLists provides curated, community-maintained plain-text wordlists stored in the Usernames/ directory, ranging from 18-entry shortlists to 10-million-entry datasets, formatted for immediate consumption by brute-force tools like Hydra, Medusa, and Burp Intruder.
The danielmiessler/SecLists repository serves as the security tester's companion for credential enumeration and brute force testing. Its dedicated Usernames/ directory contains specialized wordlists that eliminate the need to generate custom lists from scratch. Whether performing rapid credential spraying or exhaustive dictionary attacks, these SecLists username lists for brute force attacks provide the foundational data required for effective penetration testing.
Understanding the Usernames Directory Structure
Located at Usernames/ in the repository root, this subdirectory organizes all username-related wordlists by scope and source. According to the Usernames/README.md, the directory maintains strict formatting standards: each file contains one username per line with no extra delimiters or comments, though empty lines may appear at file ends. This consistency ensures immediate compatibility with automation tools without preprocessing scripts.
Key Username Wordlists for Penetration Testing
Top Username Shortlist for Rapid Enumeration
The Usernames/top-usernames-shortlist.txt file contains the 18 most common usernames found in real-world breaches. This compact list serves as the optimal starting point for "first-pass" attacks when testing time is limited. Security professionals use this file for quick credential spraying against SSH, RDP, and web authentication portals.
Vendor-Specific Default Accounts
For targeted testing against enterprise software, Usernames/sap-default-usernames.txt contains default service accounts specific to SAP systems, including entries like DDIC and SAP*. These vendor-specific lists allow testers to target known default configurations rather than guessing generic terms.
Community-Sourced Collections
The Usernames/cirt-default-usernames.txt file aggregates over 800 entries collected from the CIRT project. This mid-sized collection strikes a balance between the shortlist and massive datasets, providing comprehensive coverage for general brute force scenarios without the performance overhead of multi-gigabyte files.
Large-Scale Public Datasets
For exhaustive testing campaigns, Usernames/xato-net-10-million-usernames.txt delivers ten million usernames harvested from public sources. This massive dataset supports thorough dictionary attacks against high-value targets where credential guessing requires maximum breadth.
Practical Implementation Examples
Hydra Command-Line Attacks
The THC-Hydra tool accepts SecLists files directly via the -L flag. This example combines the short username list with the RockYou password list against an SSH target:
hydra -L Usernames/top-usernames-shortlist.txt -P Passwords/rockyou.txt ssh://192.168.1.10
Python Automation with Paramiko
When building custom brute force scripts, load vendor-specific lists using standard file I/O. This Python example targets SAP default accounts:
from pathlib import Path
import paramiko
user_file = Path('Usernames/sap-default-usernames.txt')
passwd_file = Path('Passwords/common.txt')
users = user_file.read_text().splitlines()
passwords = passwd_file.read_text().splitlines()
host = '10.0.0.5'
for user in users:
for pwd in passwords:
try:
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(host, username=user, password=pwd, timeout=3)
print(f'Success: {user}/{pwd}')
ssh.close()
break
except Exception:
pass
Burp Suite Intruder Integration
For web application testing, Burp Intruder consumes the massive public datasets efficiently:
- Navigate to Intruder → Positions and set the target URL.
- Select Payloads → Payload Sets and choose File as the type.
- Load
Usernames/xato-net-10-million-usernames.txtfor the username position. - Add a second payload set pointing to
Passwords/10k-most-common.txt. - Execute the attack to iterate over the Cartesian product of credentials.
Summary
- SecLists organizes username wordlists under
Usernames/with consistent one-entry-per-line formatting. - Short lists (
top-usernames-shortlist.txt) provide 18 common entries for rapid initial testing. - Vendor lists (
sap-default-usernames.txt) contain platform-specific defaults like SAP service accounts. - Massive datasets (
xato-net-10-million-usernames.txt) support exhaustive brute force campaigns. - All files work immediately with Hydra (
-L), Medusa (-U), Burp Intruder, and custom scripts without preprocessing.
Frequently Asked Questions
What is the fastest way to start testing with SecLists usernames?
Clone the repository and use Usernames/top-usernames-shortlist.txt with Hydra. This 18-entry list requires minimal bandwidth and provides immediate results against common default accounts.
Are the SecLists username files formatted for specific tools?
No, the files use a universal plain-text format with one username per line. This standard structure works with any tool accepting line-delimited input, including Hydra, Medusa, Burp Suite, and custom Python scripts.
Which SecLists username file should I use for SAP systems?
Use Usernames/sap-default-usernames.txt, which contains specific SAP default accounts like DDIC and SAP*. This vendor-specific list targets known SAP service accounts rather than generic usernames.
How large is the biggest username list in SecLists?
The Usernames/xato-net-10-million-usernames.txt file contains ten million entries harvested from public sources. This dataset supports comprehensive brute force attacks but requires significant memory and time resources compared to smaller targeted lists.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →