WP Seguro WP Registry grade A. No security issues foundWP RegistryNo security issues foundOpen the reportA
Plugin de seguridad para WordPress con firewall de tres capas: bloquea bots, fuerza bruta, SQLi y XSS antes de que WordPress cargue. Libre, rápido y sin servicios externos.
Install
Upload it under Plugins → Add New Plugin → Upload Plugin, then activate.
Install straight from GitHub with WP-CLI:
wp plugin install https://github.com/fabiomb/wp-secure/releases/download/v0.7.4/wp-secure-0.7.4.zip
WP Seguro
Firewall de tres capas para WordPress
Sitio oficial · Descargar · Documentación · Cambios
WP Seguro es un plugin de seguridad para WordPress, libre y de código abierto. Detecta y bloquea bots, fuerza bruta, inyección SQL, XSS, path traversal y escáneres de vulnerabilidades. Intercepta cada petición lo más temprano posible, en muchos casos antes de que WordPress llegue a cargar, para que la protección no se pague en rendimiento.
Funciones
- Firewall de tres capas: bloqueo previo a PHP, análisis en un MU-plugin y panel de administración.
- Detectores de ataques: SQLi, XSS, path traversal, escáneres, abuso de XML-RPC y de la REST API, con patrones afinados para no bloquear texto legítimo.
- Login blindado: freno a la fuerza bruta y sin enumeración de usuarios.
- Puntuación de riesgo: cada petición suma puntos y la acción depende del umbral alcanzado.
- Rate limiting por IP.
- IP real detrás de CDN: Cloudflare (IPv4 e IPv6), Sucuri y proxies propios, sin que la IP pueda falsificarse con un header.
- Crawlers verificados por rDNS: Googlebot pasa, quien se hace pasar por Googlebot no.
- Tráfico en vivo y geolocalización con una base MMDB local.
- Reglas personalizadas, whitelist, exportación y notificaciones.
Cómo funciona
| Capa | Mecanismo | Momento | Qué hace |
|---|---|---|---|
| 0 | auto_prepend_file |
Antes de cualquier PHP del sitio | Descarta IPs y rangos bloqueados leyendo un archivo plano. Sin base de datos, sin WordPress. |
| 1 | MU-plugin | Después del núcleo, antes de plugins y temas | Detecta patrones, aplica rate limiting, calcula el riesgo y registra. |
| 2 | Plugin | Carga normal | Asistente, dashboard, eventos, reglas, whitelist y configuración. |
Cada petición recibe una puntuación de riesgo:
| Puntaje | Acción |
|---|---|
| 0–30 | Permitir |
| 31–50 | Registrar |
| 51–80 | Limitar |
| 81–99 | Bloqueo temporal |
| 100+ | Bloqueo inmediato |
El detalle está en Capas del firewall y en la Referencia de reglas.
Instalación
- Descargá
wp-secure.zipdesde la última release. - En WordPress, andá a Plugins → Añadir nuevo → Subir plugin.
- Subí el archivo, instalalo y activá WP Seguro.
- Completá el asistente de configuración inicial y revisá WP Seguro → Dashboard.
[!IMPORTANT] Si el sitio está detrás de Cloudflare u otro proxy, revisá la configuración de CDN/Proxy antes de activar el bloqueo en producción. Con el proxy mal configurado, todo el tráfico parece venir de pocas IPs y el rate limiter puede bloquearlas.
Requisitos
| Mínimo | Recomendado | |
|---|---|---|
| WordPress | 6.0 | Última |
| PHP | 7.4 | 8.0+ |
| MySQL | 5.7 | 8.0 |
| MariaDB | 10.3 | 10.6+ |
Extensiones PHP: mbstring, json, mysqli.
Documentación
- Instalación
- Configuración
- Capas del firewall
- Referencia de reglas
- Reglas personalizadas
- Configuración de CDN/Proxy
- Solución de problemas
- Preguntas frecuentes
- Registro de cambios
Contribuir
Toda ayuda suma, y probar el plugin en tu sitio ya cuenta.
- ¿Encontraste un falso positivo o un error? Abrí un issue con los pasos para reproducirlo. Si es un bloqueo, incluí la URL y los parámetros que lo dispararon.
- ¿Querés aportar código? Nuevos detectores, mejoras de rendimiento, traducciones o documentación son bienvenidos por pull request.
- ¿Una vulnerabilidad de seguridad? No la publiques en un issue. Escribí directamente al autor a través de su perfil de GitHub.
Desarrollo local
git clone https://github.com/fabiomb/wp-secure.git
cd wp-secure
composer install
vendor/bin/phpunit --testsuite unit
Los tests unitarios no necesitan una instalación de WordPress. Los de integración requieren el framework de tests de WordPress:
WP_TESTS_DIR=/ruta/a/wordpress-tests-lib vendor/bin/phpunit --testsuite integration
Las clases WPS_Foo_Bar viven en class-wps-foo-bar.php, dentro de includes/ y sus subcarpetas.
Licencia
GPL-2.0-or-later. Creado por Fabio Baccaglioni.
Releases
17 releases. Each count is every asset in that release; expand a row for the breakdown.
v0.7.4
latest
Oct 6, 2026 13d ago
wp-secure-0.7.4.zip
+1 asset
11
Oct 2, 2026 17d ago
wp-secure-0.7.3.zip
+1 asset
10
Oct 2, 2026 17d ago
wp-secure-0.7.2.zip.sig
+1 asset
4
Oct 2, 2026 17d ago
wp-secure-0.7.1.zip
+1 asset
4
Oct 2, 2026 17d ago
wp-secure-0.7.0.zip
+1 asset
3
Active-site estimate ≈10 comes from the v0.6.1 cohort. Method.