Top Security WordPress Plugins
199 indexed plugins
Plugins
199
Active Installs
27m+
Average Score
55
Audited
199
Top Scores
| Rank | Plugin | Score | Errors | Warnings | Installs | Added | Updated | Top Issue |
|---|---|---|---|---|---|---|---|---|
| #1 | User Role Editor | 100 | 0 | 700k+ | No open findings | |||
| #2 | Stop User Enumeration | 100 | 1 | 50k+ | Dynamic hook name | |||
| #3 | Login Security Captcha | 100 | 0 | 10k+ | No open findings | |||
| #4 | Stop XML-RPC Attacks | 100 | 1 | 6k+ | Non-prefixed class | |||
| #5 | Dam Spam | 100 | 1 | 3k+ | unexpected markdown file | |||
| #6 | Compromise Scanner for wp2shell | 100 | 3 | 3k+ | trademarked term | |||
| #7 | Vigilant – 100% Free Security Suite: Firewall, 2FA, Login, Headers, Scanner… | 100 | 0 | 2k+ | No open findings | |||
| #8 | Remove XML-RPC Methods | 100 | 0 | 1k+ | No open findings | |||
| #9 | NETSENSAI Shield | 100 | 1 | 1k+ | Non-prefixed constant | |||
| #10 | Easy Basic Authentication – Add basic auth to site or admin area | 100 | 1 | 700 | mismatched plugin name | |||
| #11 | Protect Login | 100 | 0 | 600 | No open findings | |||
| #12 | Block wp-login | 100 | 3 | 600 | trademarked term | |||
| #13 | WEDOS | Protection & Cache Performance | 100 | 1 | 400 | trademarked term | |||
| #14 | Safe SVG | 99 | 5 | 2 | 1m+ | Missing Arg Domain | ||
| #15 | Protect Uploads | 99 | 2 | 1 | 30k+ | Missing direct file access protection | ||
| #16 | miniOrange 2FA – Two Factor Authentication for WordPress (OTP, SMS, Email, Google Authenticator) | 99 | 5 | 10k+ | Non-prefixed constant | |||
| #17 | Restricted Site Access | 99 | 9 | 10k+ | Non-prefixed hook name | |||
| #18 | Malcure Malware Shield — Removal, Repair, Monitor | 99 | 8 | 10k+ | upgrade notice limit | |||
| #19 | App for Cloudflare® | 99 | 3 | 0 | 1k+ | Missing direct file access protection | ||
| #20 | Generate Security.txt | 99 | 1 | 5 | 400 | Non-prefixed class | ||
| #21 | Prevent XSS Vulnerability | 98 | 10 | 1 | 6k+ | Missing Arg Domain | ||
| #22 | WPMasterToolKit (WPMTK) – All in one plugin | 98 | 3 | 4 | 5k+ | trademarked term | ||
| #23 | Manage XML-RPC | 98 | 3 | 1 | 5k+ | file system operations is writable | ||
| #24 | Password Strength for WooCommerce | 98 | 3 | 0 | 1k+ | Missing direct file access protection | ||
| #25 | SameSite Cookies | 98 | 3 | 2 | 700 | Missing direct file access protection | ||
| #26 | Logout Clear Cookies | 98 | 3 | 1 | 500 | Missing direct file access protection | ||
| #27 | Prevent Concurrent Logins | 97 | 2 | 10 | 900 | Non-prefixed function | ||
| #28 | Disable File Editor | 97 | 3 | 2 | 500 | outdated tested upto header | ||
| #29 | Trusona for WordPress | 97 | 2 | 8 | 400 | Non-prefixed constant | ||
| #30 | Maestro Connector | 97 | 7 | 4 | 400 | Missing direct file access protection | ||
| #31 | WP Author Slug | 96 | 16 | 6 | 2k+ | Text Domain Mismatch | ||
| #32 | Hide WordPress Version | 96 | 5 | 4 | 400 | trademarked term | ||
| #33 | MilesWeb Tools | 95 | 4 | 49 | 10k+ | Non-prefixed global variable | ||
| #34 | Security Header Generator | 95 | 44 | 17 | 500 | Offloaded Content | ||
| #35 | Stop Spammers Classic | 94 | 185 | 1 | 30k+ | wp function not compatible with requires wp | ||
| #36 | BotBlocker Security – Complete security platform | 94 | 1 | 7 | 3k+ | Non-prefixed constant | ||
| #37 | Sucuri Security – Auditing, Malware Scanner and Security Hardening | 93 | 62 | 6 | 600k+ | Missing direct file access protection | ||
| #38 | WP Disable Site Health | 93 | 4 | 4 | 900 | trademarked term | ||
| #39 | Simple Password Protect | 93 | 1 | 4 | 400 | wp redirect wp redirect | ||
| #40 | Auto SRI | 92 | 4 | 1 | 500 | wp function not compatible with requires wp | ||
| #41 | Control XML-RPC publishing | 92 | 7 | 0 | 400 | Text Domain Mismatch | ||
| #42 | WPVulnerability | 91 | 11 | 7 | 10k+ | wp function not compatible with requires wp | ||
| #43 | WebAuthn Provider for Two Factor | 91 | 6 | 14 | 1k+ | Missing Arg Domain | ||
| #44 | Easy IP Blocker | 91 | 4 | 9 | 400 | Nonce verification recommended | ||
| #45 | TrustedSite | 90 | 6 | 11 | 10k+ | Non-prefixed global variable | ||
| #46 | Password Strength Settings for WooCommerce | 89 | 17 | 6 | 10k+ | Missing Arg Domain | ||
| #47 | Disable Registration Page | 88 | 4 | 6 | 400 | Text Domain Mismatch | ||
| #48 | WP Admin Basic Auth | 87 | 5 | 6 | 2k+ | Input is not sanitized | ||
| #49 | AntiSpam for Contact Form 7 | 86 | 14 | 8 | 10k+ | Text Domain Mismatch | ||
| #50 | Update Notifier | 86 | 8 | 1 | 700 | Output is not escaped |