Lion Cipher Lab
Enumerate and attack a WordPress site in your own lab with WPScan
- Penetration Testing / Red Team
- Intermediate
- ~60 min
- Free · no account required
Why it matters
WordPress runs a large fraction of all the websites on the internet, which is exactly why it is one of the most attacked pieces of software on earth: break the technique once and it works against millions of sites. Here is the part most beginners get backwards — the WordPress core itself is well-maintained and rarely the way in. The attack surface is the SPRAWL bolted on top of it: the plugins and themes, thousands of them written by thousands of different authors at wildly different quality levels, that a site owner installs and then forgets to update. One abandoned contact-form plugin with…
What you'll learn
- standing up a throwaway WordPress site with Docker Compose (official wordpress + mariadb images)
- fingerprinting a WordPress version with WPScan
- enumerating WordPress users with --enumerate u
- flagging vulnerable plugins and themes with --enumerate vp,vt and aggressive detection
- running a password-guessing attack against wp-login with --passwords and --usernames
- understanding the optional free WPScan (WPVulnDB) API token — and what still works without it
- hardening WordPress: strong admin password, 2FA, limited login attempts, updates, least-privilege plugins
- authorized-scope discipline — only ever your own site or one you are explicitly permitted to test
Steps in this lab
- The one rule, before you scan anything
- Why WordPress, why plugins, and when NOT to reach for WPScan
- Stand up your own throwaway WordPress with Docker Compose
- Finish the 5-minute install — and set a deliberately WEAK admin
- Install WPScan and fingerprint the WordPress version
- Enumerate the users with --enumerate u
- Flag vulnerable plugins & themes — and the OPTIONAL API token
- Attack the login: a password-guessing run with --passwords
- Now defend it — close every hole you just walked through
- What you just did — and the instinct to keep