A review first. Most sites have two or three findings that account for most of the exposure, and they are usually free to fix.
01Component inventory
Everything installed, its version, whether it is still maintained, and which known advisories currently apply to what you run.
02Access audit
Every account on the site, host, registrar and any connected service — who they belong to, what they can do, and which should not exist.
03Two-factor rollout
Enforced across the site and, importantly, the accounts that could be used to reset access to it.
04Configuration hardening
File permissions, disabling in-dashboard code editing, security headers, transport configuration and removing unnecessary exposure.
05Perimeter setup
Firewall rules and rate limiting configured for your traffic rather than switched on at defaults and left.
06Monitoring
File integrity, new administrator alerts, outbound content checks and uptime — so a compromise surfaces in minutes rather than from a customer.
07Backup verification
Off-site, versioned, and restored into a scratch environment to prove recovery works before it is needed.
08Incident plan
Written, short, and specific: who is called, what is isolated first, who tells customers, and in what order.
09Cleanup, where needed
If something is already compromised: contain, find the entry point, remove persistence, rebuild what cannot be trusted, then close the hole.