WordPress is the most popular CMS in the world, and that's exactly why it's the most attacked. The good news is that the vast majority of attacks are automated and are repelled by basic measures.
Main attack vectors
- Brute-force — guessing passwords for
wp-login.php. - xmlrpc.php — an outdated interface often used to amplify attacks.
- SQL injections and XSS — through vulnerable plugins.
A checklist of 12 actions
- A strong admin password and two-factor authentication.
- Limiting login attempts.
- Disabling or protecting
xmlrpc.php. - Regular updates of the core, themes and plugins.
- A web firewall (WAF) — on WPHost this is Imunify360.
- Protection from 0-day vulnerabilities via Patchstack.
- Forbidding PHP execution in the
uploadsfolder. - Hiding the WordPress version.
- Regular automatic backups.
- An SSL certificate across the whole site.
- A minimum of plugins from trusted sources.
- Monitoring and antivirus scanning of files.
The combination of WAF + auto-updates + backups closes 99% of typical hacking scenarios.