Scanner says core files were modified? Open the diff. After wp2shell, that is often leftover access.

How to read it

Admin Password Trends Since 2012: Prioritizing Password Strength and Security

Why weak WordPress admin passwords still get sites owned, bad-password patterns since 2012, passkeys, application passwords, breach response, and 2FA.

Topics Login & access

Updated Published

Weak admin passwords are still one of the cheapest ways to lose a WordPress site. Bots do not need a genius plan. They try common passwords and credentials spilled from other breaches.

Bad passwords are a problem for your website security

Why “I’ll use something simple” fails

Attackers automate guesses against wp-login.php and reuse passwords from leaks (credential stuffing). If your admin password is short, common, or reused from email, you are in the easy pile.

Check whether your email appears in known breaches at Have I Been Pwned. That does not prove your WordPress password is safe. It does prove reuse is dangerous.

Security Ninja’s free security tests include password-quality checks for users on the site. Run them from the plugin after install.

Bad password patterns that keep winning (2012-2023)

The lists below summarize commonly reported weak passwords over the years from public breach research and cleanup work. They are historical patterns, not a new 2024-2026 lab study. The lesson is stable: 123456, password, and keyboard walks never go out of style for bots.

2012

password, 123456, 12345678, abc123, qwerty, monkey, letmein, dragon, 111111, baseball

2013

123456, password, 12345678, qwerty, abc123, 123456789, 111111, 1234567, iloveyou, adobe123

2014

123456, password, 12345, 12345678, qwerty, 1234567890, 1234, baseball, dragon, football

2015-2017

123456 and password stayed on top. Frequent companions: qwerty, 12345678, 123456789, football, letmein, iloveyou.

2018-2019

Still dominated by short numerics. Odd one-offs like test1 or zinch show up in some yearly dumps, but the boring defaults remain the volume winners.

2020-2021

123456, 123456789, password, qwerty, 111111, 123123, plus language-specific favorites (for example senha in some datasets).

2022-2023

password, 123456, guest, qwerty, letmein, Password1, abc123. Slightly “clever” variants (a1b2c3, Password1) still fail against stuffing lists.

You do not need a longer hall of shame. If a human can remember it without a manager, a bot can often try it.

Credential stuffing vs guessing

  • Brute force / dictionary: try common passwords against your login.
  • Credential stuffing: try username/password pairs stolen from other sites.

Stuffing is why reusing your email password on WordPress is especially bad. One unrelated breach becomes an admin login elsewhere. Dictionary: brute force.

What a strong WordPress admin password looks like

  • Long (prefer 16+ random characters)
  • Unique to that site
  • Stored in a password manager, not a spreadsheet named passwords.xlsx
  • Never shared in Slack “for the team”

Complexity theater (one symbol, one uppercase) matters less than length + uniqueness. A 20-character random secret beats Summer2026!.

Application passwords (for tools, not humans)

WordPress Application Passwords let REST clients authenticate without typing your main admin password into a script. Use them for:

  • Staging sync and migration tools
  • Headless front ends
  • Internal automation with scoped accounts

Rules:

  1. Create a dedicated user with the minimum role the tool needs (often Editor or a custom role, not Administrator when possible)
  2. Issue one application password per integration
  3. Revoke immediately when the vendor or freelancer leaves
  4. Never paste application passwords into front-end JavaScript or public repos

Human admins should still use 2FA on their own accounts. More: REST and API security.

Password managers, passkeys, and recovery codes

  1. Use a password manager (Bitwarden, 1Password, and similar). Generate and fill unique secrets per site. Team vaults beat shared chat passwords for agencies.
  2. Prefer passkeys or platform authenticators where WordPress and your stack support them for the accounts that matter. They remove typed passwords for that login path.
  3. Turn on 2FA for administrators even when the password is strong. Keep recovery codes offline.
  4. Add login protection so failed attempts get capped.

Full walkthrough: WordPress login security guide. Day-to-day habits: password management tips.

Breach response (password exposed or suspected)

If Have I Been Pwned, your host, or a client reports a leaked password:

  1. Log in from a clean device (or use file access if the account is already hijacked)
  2. Change the WordPress password and any reused email or hosting password
  3. Enable 2FA on every privileged account
  4. Review Users for unknown admins and demote or delete surprises
  5. Check failed-login logs and login protection for stuffing spikes
  6. Scan for malware if the account was reused or you see odd admin behavior (malware removal)
  7. Notify the client with facts: what was rotated, what was reviewed

Do not “just change the password” on a compromised site and stop there. Attackers often leave backdoors when they had admin access.

How Security Ninja helps

Security Ninja includes security tests that flag weak password habits and related login risks. Pro adds stronger login limits, 2FA, firewall, and scanning so a guessed password is not the whole story.

Quick fix checklist

  • Every admin has a unique long password in a manager
  • No account named admin if you can avoid it
  • 2FA on for privileged roles; recovery codes stored safely
  • Application passwords only for tools; revoked when tools leave
  • Failed-login limits enabled
  • Former staff access removed
  • No reused passwords across WordPress, email, and hosting

If you already suspect a compromise, rotate passwords from a clean device and follow malware removal or hire cleanup.

Found this useful? Share it.

Frequently asked questions

What is the most common WordPress admin password? +

Bots still hammer 123456, password, qwerty, and keyboard walks. Slightly clever variants like Password1 fail too. Length and uniqueness beat memorable patterns.

Should I use application passwords for WordPress? +

Yes for automation and integrations that need REST access. Create a dedicated user with minimum role, issue an application password per tool, and revoke when the tool is removed. Do not share the main admin password.

What do I do if my WordPress password was in a breach? +

Change the WordPress password from a clean device, enable 2FA, review admin users, scan for malware if login was reused elsewhere, and check failed-login logs for stuffing attempts.

Larger screenshot

Enlarged image