Hi
Access to username/password is a problem.
A lot of WordPress installations have the default username “admin” active, so actually you only have to guess the password, in such a case two factor authentication could increase security a great deal.
There are a few plugins available that can fix some of this stuff, ie rename the admin user rename the default table names etc.
Always keeping your WordPress installation and plugins up2date with the latest versions is also very important, everyone makes mistakes from time to time that needs fixing.
A different approach could be to use an application firewall, Naxsi for the nginx webserver looks nice, but I haven’t tried it myself
https://www.owasp.org/index.php/OWASP_NAXSI_Project
Best regards
Henrik Schack