Actualizado el 13/08/2026 — Este artículo fue actualizado con información reciente y secciones nuevas.
Los plugins de WordPress para control de asistencia y seguimiento de sesiones acumulan vulnerabilidades críticas que exponen datos personales de clientes y empleados. Desde SQL injection sin autenticación en BookingPress (CVE-2022-0739, CVSS 8.6) hasta bypass de autenticación con acceso total al admin en Service Finder Bookings (CVE-2025-5947, CVSS 9.8), estos plugins resuelven una necesidad real pero cobran un precio altísimo en seguridad. Si elegís un plugin de control de asistencia o ya usás uno, tenés que auditarlo antes de que alguien más lo haga por vos.
Un plugin de asistencia WordPress registra la presencia física o virtual de personas — empleados que marcan entrada y salida, estudiantes que confirman asistencia, clientes de un gimnasio que reservan su turno. El seguimiento de sesiones trackea quién está conectado, cuánto tiempo lleva, desde qué IP. Son dos cosas que muchos confunden pero que comparten un riesgo común: manejan datos personales almacenados en tablas custom de WordPress, sin cifrado, expuestos a través de endpoints REST o AJAX mal protegidos. Cada plugin que instalás es una superficie de ataque adicional, y los de attendance tracking suelen ser los últimos en recibir mantenimiento de seguridad.
En 30 segundos
- WP Employee Attendance System tiene una SQL injection sin parche oficial (CVE-2025-28972, CVSS 7.6) — cualquier admin puede extraer toda la base de datos
- BookingPress, con 150.000+ instalaciones, expone exploits públicos en GitHub para su vulnerabilidad de SQL injection (CVE-2022-0739, CVSS 8.6)
- Simply Schedule Appointments permitió acceso a configuración administrativa de usuarios no autenticados en marzo 2026 (CVE-2026-3045)
- Service Finder Bookings tiene un bypass de autenticación (CVE-2025-5947, CVSS 9.8) que permite asumir identidad de cualquier usuario incluido el admin — Wordfence bloqueó 13.800 intentos
- En 2026 se reportan 333 vulnerabilidades nuevas por semana en plugins WordPress — los de attendance tracking son especialmente vulnerables
- La alternativa más segura es sacar el tracking fuera de WordPress vía API (Clockify, Calendly) o usar un LMS completo como LifterLMS
¿Qué son los plugins de control de asistencia en WordPress?
Un plugin de asistencia WordPress resuelve un problema específico: registrar quién entra, quién sale, cuándo lo hace y desde dónde. Para empleados, es un reloj de control digital. Para escuelas, es un registro de asistencia del estudiante. Para gimnasios, es la confirmación de que el cliente llegó a su cita. Para eventos, es la acreditación de participantes.
WordPress por sí solo maneja tokens de autenticación básicos pero no ofrece nada para registrar asistencia ni auditar sesiones activas de forma granular. Los plugins llenan ese vacío instalando tablas custom, endpoints REST o AJAX para recibir datos, y dashboards para que los administradores vean los reportes. El problema es que muchos de estos plugins priorizan funcionalidad sobre seguridad, dejando endpoints expuestos, datos sin cifrar y validaciones débiles.
El mercado se divide en cinco segmentos claros. Plugins para empleados (Clock In Portal, WP Employee Attendance System) registran entrada y salida. Plugins para educación (WPSchoolPress, Attendance Management for LifterLMS) controlan asistencia de estudiantes. Plugins para fitness y gimnasios trackean llegadas a turnos. Plugins para eventos (SEATT) acreditan participantes. Plugins para reservas y citas (BookingPress, Simply Schedule Appointments) combinan calendario con asistencia. Cada segmento tiene sus propias vulnerabilidades documentadas.
¿Cuáles son los mejores plugins de control de asistencia para WordPress?
No hay un «mejor» plugin de asistencia en WordPress — cada uno sacrifica seguridad por funcionalidad de una forma distinta. La mayoría usa el modelo freemium: versión gratuita con features básicas y upgrade pago para capacidades avanzadas. La versión gratuita suele ser la que menos mantenimiento de seguridad recibe.
Estos son los plugins más usados en el mercado y su posición de seguridad al 13/08/2026:
| Plugin | Instalaciones activas | Modelo | Versión gratis incluye | CVEs conocidas | Última actualización |
|---|---|---|---|---|---|
| Clock In Portal | 1.000+ | Freemium (Pro: CSV, IP restriction) | Entrada/salida, reportes básicos | Sin CVEs públicas | Activo (2026) |
| WP Employee Attendance System | 100+ | Freemium | Asistencia, reportes por fecha | CVE-2025-28972 (sin parche) | 2024 |
| Simply Schedule Appointments | 10.000+ | Freemium | Reservas, calendario, shortcodes | 7 CVEs documentadas (incluyendo CVE-2026-3045) | Activo (2026) |
| BookingPress | 150.000+ | Freemium | Reservas, pagos, notificaciones | CVE-2022-0739 + múltiples XSS | Activo (2026) |
| WPSchoolPress | 3.000+ | Freemium | Gestión escolar + attendance | Sin CVEs públicas recientes | Activo (2026) |
| Service Finder Bookings | 500+ | Freemium | Reservas de servicios | CVE-2025-5947 (CVSS 9.8) | 2024 |
| SEATT | 200+ | Freemium | Acreditación de eventos | CVE-2026-1983 (CSRF) | 2025 |
Mirá la columna de CVEs. Los plugins con más instalaciones no son necesariamente los más seguros — BookingPress tiene 150.000 sitios y un historial de vulnerabilidades que alarma incluso a los administradores más experimentados. El patrón es consistente: cuantos más usuarios tenga el plugin, más interés de los atacantes en encontrar vulnerabilidades.
Vulnerabilidades críticas documentadas en plugins de asistencia
Estos son los CVEs confirmados que afectan directamente a plugins de attendance tracking y reservas en WordPress. No son escenarios hipotéticos ni vulnerabilidades teóricas — son exploits activos con ataques documentados en la práctica.
CVE-2025-28972 en WP Employee Attendance System — SQL injection sin parche oficial
La vulnerabilidad afecta a la versión 3.5 con un CVSS de 7.6 (alto riesgo). Es una SQL injection que requiere nivel administrador para explotarse, lo cual suena menos grave hasta que considerás que muchos sitios WordPress tienen múltiples usuarios con rol admin. El problema real es que no hay parche oficial. El desarrollador nunca respondió a los reportes de seguridad.
El punto de inyección está en un parámetro de reporte que no se sanitiza antes de pasarlo a la query. Un admin malintencionado o comprometido puede inyectar SQL directamente y extraer cualquier dato de la base de datos: usuarios, emails, hashes de contraseñas, todo. Como mínimo, desactivá este plugin hasta que haya parche. Verificalo en Patchstack regularmente.
CVE-2022-0739 en BookingPress — exploit público con 150.000 sitios expuestos
BookingPress tiene una SQL injection no autenticada (CVSS 8.6) que afectó versiones anteriores a 1.0.11. El atacante explotaba el endpoint AJAX bookingpress_front_get_category_services sin necesidad de autenticación. Eso solo es grave, pero hay un detalle que lo hace peor: los exploits están públicamente disponibles en GitHub.
Cualquiera con conocimiento básico de SQL injection puede clonar el repo, copiar el exploit y ejecutarlo contra tu sitio. La ventana de exposición fue amplísima — de 2020 a 2022 — y muchos sitios nunca actualizaron. Si usás BookingPress, verificá que estés en versión 1.0.11 o superior. Activá un WAF como Wordfence con virtual patching para bloquear este exploit incluso si no actualizaste.
CVE-2026-3045 en Simply Schedule Appointments — acceso admin sin autenticación
En marzo de 2026, usuarios no autenticados podían acceder a toda la configuración administrativa de Simply Schedule Appointments. El endpoint vulnerable estaba en /wp-json/ssa/v1/embed-inner — un path REST completamente abierto. El atacante podía leer configuración, modificar ajustes, y potencialmente obtener datos de reservas.
Simply Schedule Appointments acumula siete vulnerabilidades documentadas en total, incluyendo una SQL injection sin autenticación en versiones antiguas. Es un patrón preocupante — el plugin no parece haber aprendido de sus propios CVEs. Si lo usás, asegurate de estar en la versión más reciente y considerá usar Cloudflare u otro WAF para bloquear acceso a endpoints /wp-json/ que no necesites exponer.
CVE-2025-5947 en Service Finder Bookings — takeover completo del sitio
Probablemente la vulnerabilidad más grave de toda la lista: un bypass de autenticación con CVSS 9.8 que permite acceso directo a cuentas admin. No es SQL injection — es mucho más directo. El atacante manipula la validación de cookies de sesión para asumir la identidad de cualquier usuario, incluido el administrador principal del sitio.
Wordfence bloqueó 13.800 intentos de explotación en las primeras semanas después del disclosure. No es un escenario teórico — estaban atacando activamente, en paralelo, contra sitios que usaban este plugin. Si tenés Service Finder Bookings instalado, desactivalo ahora. Si necesitás el plugin, esperá a que haya parche oficial y reinstalá después de verificar que la versión está parcheada.
¿Cómo se explotan en la práctica estas vulnerabilidades?
La mecánica es repetitiva en todos los casos. Los plugins de attendance tracking exponen endpoints AJAX o REST sin validación adecuada. El atacante no necesita credenciales — solo saber la URL correcta.
Ataque de SQL injection en BookingPress
El endpoint bookingpress_front_get_category_services acepta parámetros de filtrado que el plugin no sanitiza antes de pasarlos a la query SQL. Un atacante inyecta una subquery que extrae usuarios, contraseñas hasheadas, emails — todo en wp_users y cualquier tabla custom del plugin. Una petición GET simple, sin autenticación, devuelve datos sensibles en JSON.
Bypass de autenticación en Service Finder Bookings
El bypass no es técnicamente complejo. El plugin valida sesiones usando cookies de forma débil — sin verificar timestamp, sin validar el navegador/IP original, sin regenerar tokens después de cambios importantes. Un atacante roba una cookie de sesión existente o fuerza una nueva, y como la validación es débil, el plugin la acepta como válida. El atacante asume la identidad del usuario titular de esa cookie.
Si el atacante roba la cookie del admin principal, tiene acceso completo al dashboard WordPress. Puede crear nuevas cuentas admin, instalar plugins maliciosos, modificar contenido, robar toda la base de datos.
Acceso admin sin autenticación en Simply Schedule Appointments
Los nonces que deberían proteger los endpoints REST se exponen públicamente en el HTML de la página. Un atacante extrae el nonce de un GET simple a la página, y lo usa en una petición posterior para acceder a /wp-json/ssa/v1/embed-inner y leer toda la configuración administrativa. Los nonces están diseñados para prevenir CSRF, no para proteger credenciales.
Riesgos de privacidad y cumplimiento normativo
Estos plugins manejan datos sensibles: nombres completos, emails, horarios de entrada y salida, direcciones IP, historiales de sesiones, ubicaciones geográficas, y en algunos casos datos de pago. Una brecha expone todo eso simultáneamente.
Bajo GDPR, si operás en Europa o tenés usuarios europeos, estás obligado a notificar la brecha en 72 horas, garantizar el derecho al olvido, y demostrar que tomaste medidas de protección adecuadas. La Ley 25.326 de Protección de Datos Personales en Argentina establece obligaciones similares sobre el tratamiento de datos de terceros, aunque con menos dientes en la práctica. La presión regulatoria aumenta año a año.
El problema práctico es que la mayoría de estos plugins freemium no cifran los datos en la base de datos. Almacenan todo en texto plano en tablas custom de WordPress. Si alguien explota una SQL injection, accede a toda la información sin ninguna capa adicional de protección. Los plugins nulled o pirata agregan otro riesgo: backdoors que recopilan datos y los envían a servidores externos sin que el administrador se entere.
¿Cómo proteger tu sitio si ya usás un plugin de asistencia?
Si ya tenés un plugin de attendance tracking instalado, estos pasos son innegociables:
- Verificá si tu plugin tiene CVEs abiertas. Buscalo en Patchstack y WPScan — si tiene vulnerabilidades sin parche, desactivalo hasta que haya fix oficial. No confíes en promesas del desarrollador de que «pronto» habrá parche.
- Activá un WAF con virtual patching. Wordfence Premium o Patchstack bloquean exploits conocidos incluso si no actualizaste el plugin. Patchstack literalmente intercepta las peticiones maliciosas antes de que lleguen a WordPress.
- Auditá los endpoints REST expuestos. Accedé a
/wp-json/desde el navegador — ves todas las rutas registradas. Deshabilitá los endpoints que no necesitás. Si el plugin de asistencia está exponiendo/wp-json/ssa/v1/pero vos no accedés a esa API, bloqueá ese path en tu WAF. - Cifrá los datos sensibles en la base de datos. Como mínimo, asegurate de que las tablas custom del plugin no estén accesibles desde queries no autenticadas. Idealmente, cifrá las columnas de nombres, emails e IPs usando un plugin de database encryption.
- Implementá el principio de menor privilegio. Si un usuario solo necesita marcar asistencia, no le des rol de Editor ni mucho menos admin. Creaá roles custom con permisos específicos.
- Instalá WP Security Audit Log. Rastreá quién accede a qué y cuándo. Si alguien intenta explotaciones de SQL injection, ves el patrón de queries anómalas en los logs.
- Hacé backup antes de actualizar cualquier plugin. Un parche de seguridad bien intencional puede romper funcionalidad. Backups automáticos te permiten recuperarte en minutos si algo sale mal. Donweb ofrece hosting con backups automáticos integrados.
¿Cuáles son las alternativas más seguras al plugin monolítico?
La pregunta fundamental es: ¿necesitás que el tracking de asistencia viva dentro de WordPress? Cada plugin que instalás es superficie de ataque adicional. Si el attendance tracking es crítico para tu negocio, considerá sacarlo de WordPress.
Integrá un SaaS externo como Clockify o Calendly vía API — el tracking corre en sus servidores, con sus equipos de seguridad dedicados, y tu WordPress solo muestra la interfaz en un iframe o shortcode. La superficie de ataque en tu sitio se reduce drásticamente. El atacante tendría que hackear Clockify, no tu WordPress.
Para entornos educativos, un LMS completo como LifterLMS con su módulo de attendance integrado tiene mejor mantenimiento de seguridad que un plugin standalone de 100 instalaciones activas. El equipo de LifterLMS revisa código, parchea vulnerabilidades, y tiene una reputación que defender. Para empleados, soluciones dedicadas como Clockify con integración API son órdenes de magnitud más seguras que WP Employee Attendance System y su SQL injection sin parche.
Si necesitás que todo quede en WordPress, al menos usá una arquitectura donde el plugin de tracking esté aislado en un subdominio o instalación separada con su propia base de datos. De esa forma, si el plugin de asistencia se hackea, el atacante no tiene acceso directo a tu WordPress principal ni a tu contenido publicado.
Cómo auditar un plugin de asistencia antes de instalarlo
Antes de activar cualquier plugin de attendance tracking en producción, seguí esta checklist:
- Buscalo en la base de datos de Patchstack y WPScan. Si tiene CVEs abiertas y sin parche, descartalo directamente. No esperes a que el desarrollador lo arregle mañana.
- Revisá la fecha del último update. Si pasaron más de 6 meses sin actualización, es una red flag enorme. Significa que el desarrollador no monitorea reportes de seguridad o no tiene recursos para actualizaciones.
- Verificá las instalaciones activas. Menos de 1.000 instalaciones significa menos ojos revisando el código y menos presión comunitaria para parchear rápido. Más instalaciones no siempre significa mejor seguridad, pero menos instalaciones definitivamente significa menos mantenimiento.
- Leé el changelog buscando security fixes. Si nunca mencionan seguridad, o no lo arreglan o no lo reportan — y las dos opciones son malas. Un desarrollador que no habla de seguridad probablemente no prioriza seguridad.
- Testealo en staging primero. Nunca en el sitio en vivo. Instalá el plugin, hagá pruebas básicas, verificá que no rompa nada, y recién después desplegá a producción.
- Revisá si el desarrollador tiene una security policy publicada. Los proyectos serios tienen un archivo SECURITY.md o similar con instrucciones para reportar vulnerabilidades de forma responsable. Si no hay policy, significa que no esperan reportes de seguridad — mala señal.
Para dimensionar el riesgo: según datos de Socket.dev, en 2025 se reportaron 48.185 CVEs en total — un 20.6% más que en 2024. El ecosistema WordPress promedia 333 vulnerabilidades nuevas por semana según reportes de 2026. Los plugins de nicho como los de attendance tracking suelen ser los últimos en recibir atención de seguridad. La ley de números: si hay 300+ CVEs nuevos por semana en WordPress, la probabilidad de que tu plugin freemium de attendance tenga vulnerabilidades sin reportar es altísima.
¿Qué está confirmado y qué no sobre estas vulnerabilidades?
- Confirmado: CVE-2025-28972 en WP Employee Attendance System existe y no tiene parche oficial — Patchstack lo documenta con evidencia de código vulnerable.
- Confirmado: Los exploits para BookingPress CVE-2022-0739 están públicos en GitHub — cualquiera puede clonarlos y usarlos.
- Confirmado: CVE-2026-3045 en Simply Schedule Appointments fue publicada en marzo 2026 con acceso no autenticado a configuración admin — documentado en wp-firewall.com.
- Confirmado: 13.800 intentos de explotación bloqueados por Wordfence para CVE-2025-5947 en Service Finder Bookings — Wordfence publica sus estadísticas de bloqueo mensualmente.
- Pendiente: No hay respuesta pública del desarrollador de WP Employee Attendance System sobre si habrá parche para CVE-2025-28972.
- Pendiente: SEATT (CVE-2026-1983, vulnerabilidad CSRF) sigue sin parche al 13/08/2026.
Errores comunes al implementar plugins de asistencia en WordPress
Instalar el plugin sin auditar los endpoints REST que expone
La mayoría de los plugins de attendance tracking registran rutas en /wp-json/ que quedan accesibles públicamente. Si no revisás qué endpoints se crearon después de la instalación, estás dejando puertas abiertas sin saberlo. Accedé a /wp-json/ desde el navegador para ver todas las rutas registradas y deshabilitá las que no necesitás.
Confiar en que «tiene pocas instalaciones, nadie lo va a atacar»
Los bots de ataque no discriminan por popularidad. Escanean WordPress en masa buscando endpoints vulnerables conocidos. WP Employee Attendance System tiene apenas 100 instalaciones activas y ya tiene una SQL injection documentada. El tamaño del plugin no te protege — la automatización del ataque te alcanza igual.
No cifrar los datos de asistencia en la base de datos
Los plugins guardan nombres, emails, IPs y horarios en tablas custom sin cifrado. Si alguien accede a la base de datos — ya sea por SQL injection, compromiso de backup, o acceso físico — tiene todos los datos en texto plano. Como mínimo, cifrá las columnas sensibles o usá un plugin de database encryption. Mejor todavía: no almacenes datos que no necesitás.
3 plugins de control de asistencia que funcionan sin romperse
Si lo que necesitás es que empleados o colaboradores marquen entrada y salida directo desde el frontend de tu sitio, hay opciones que no mezclan reservas ni features complicadas. Probá estos tres que van al grano y se bancan el uso diario.
Clock In Portal es el más directo: un botón de entrada/salida, registro de IP y reportes CSV. La versión gratuita funciona para equipos de hasta 10 personas sin problemas. La versión Pro agrega restricción por IP estática (impide que marques desde cualquier lugar) y descarga de reportes. Es minimalista, pero funciona.
Time Clock (de CodePeople) suma geolocalización y cálculo automático de horas extra — útil si necesitás saber no solo si el empleado llegó, sino desde dónde. La versión gratis te deja a pata si necesitás exportar datos masivos, así que revisá esa limitación antes de comprometerte.
Employee Attendance Tracker (de WPExperts) viene con reconocimiento de IP estática y generación de PDFs. Ideal si hay que presentar legajos o documentar asistencia para temas legales. Los tres tienen interfaces viejonas, pero funcionan y no te meten un SQL injection de regalo.
Antes de instalar nada, considerá si el control de asistencia tiene que vivir sí o sí dentro de WordPress. Si tu equipo ya carga novedad en Factorial, Deel o Zoho People, integrá el widget de esa plataforma vía shortcode o iframe. Mantener dos bases de empleados sincronizadas es un dolor de cabeza y duplica la superficie de ataque.
Preguntas Frecuentes
¿Los plugins freemium de asistencia son seguros para datos personales?
No en su forma actual. Plugins como WP Employee Attendance System tienen vulnerabilidades sin parche que exponen toda la base de datos. Si vas a usar uno, auditalo primero en Patchstack y WPScan — si tiene CVEs abiertas, descartalo. Nunca almacenes datos sensibles sin cifrado adicional.
¿Qué alternativas seguras existen para registrar asistencia en WordPress?
La opción más segura es sacar el tracking fuera de WordPress usando SaaS externos como Clockify o Calendly integrados vía API. Si tiene que quedarse en WordPress, usá un LMS completo como LifterLMS que tenga mejor mantenimiento de seguridad que los plugins standalone de attendance. Un LMS tiene comunidad, presión por patches, reputación que defender.
¿Cómo saber si mi plugin de asistencia tiene vulnerabilidades conocidas?
Buscá el nombre exacto en la base de datos de Patchstack, en WPScan y en el NVD de NIST. Si aparece con CVEs abiertas y sin parche — como WP Employee Attendance System al momento de escribir esto — desactivalo inmediatamente. No esperes a que se hackee tu sitio para descubrir que el plugin era vulnerable.
¿Qué datos recopilan estos plugins y qué implica para GDPR?
Recopilan nombres, emails, horarios de entrada y salida, IPs y en algunos casos datos de ubicación geográfica. Bajo GDPR, necesitás consentimiento explícito para procesar estos datos, debés notificar brechas en 72 horas y garantizar el derecho al olvido. La Ley 25.326 en Argentina tiene requisitos similares para datos personales de terceros. La realidad: una brecha expone datos de empleados o clientes y te pone en riesgo legal.
¿Puedo usar un WAF para bloquear exploits si no actualizo el plugin?
Sí, con limitaciones. Un WAF como Wordfence o Patchstack intercepta exploits conocidos basándose en patrones de ataque documentados. Funciona bien para CVEs viejos con exploits públicos. Pero no es una excusa para no actualizar — un WAF es una capa defensiva adicional, no un reemplazo de patches de seguridad. Actualizá el plugin cuando haya parche disponible.
Conclusión
Los plugins de control de asistencia en WordPress resuelven una necesidad real — registrar quién entra, quién sale, cuándo y desde dónde. Pero la mayoría de las opciones freemium disponibles tienen un historial de seguridad que no inspira confianza. SQL injections sin parche, endpoints REST expuestos sin autenticación, bypass de autenticación con CVSS 9.8, exploits públicos en GitHub — no son escenarios hipotéticos sino vulnerabilidades documentadas con ataques activos contra sitios reales.
Si ya tenés uno instalado, auditalo hoy. Revisá Patchstack y WPScan, activá un WAF con virtual patching, cifrá los datos sensibles, y considerá seriamente si el tracking necesita vivir dentro de WordPress. Si estás por elegir uno, la alternativa más segura es una solución externa con integración API — mejor seguridad, menos dolor de cabeza.
La comodidad de un plugin freemium no justifica el riesgo de exponer datos personales de tus clientes o empleados. Auditá ahora, parchea hoy, y dormí tranquilo mañana.
Fuentes
- Patchstack — WP Employee Attendance System SQL injection vulnerability (CVE-2025-28972)
- WPScan — BookingPress SQL injection vulnerability (CVE-2022-0739)
- WP-Firewall — Simply Schedule Appointments access control vulnerability (CVE-2026-3045)
- Security Affairs — Service Finder Bookings authentication bypass (CVE-2025-5947)
- Socket.dev — CVE volume surges past 48K in 2025