En pocas palabras: Sí: CVE-2026-119749 (CVSS 8.7) permite a un atacante no autenticado ingresar una cantidad negativa en un formulario de pago de GetPaid y reducir el total de la factura a cero, llevándose productos gratis. El fix está en la versión 2.8.63.
Un atacante no autenticado puede llevarse productos gratis en sitios con GetPaid: la vulnerabilidad CVE-2026-119749 (CVSS 8.7) permite ingresar cantidades negativas en un formulario de pago público y reducir el total de la factura a cero. El fix llegó en la versión 2.8.63 del plugin de AyeCode Ltd.
GetPaid es el plugin de WordPress de AyeCode Ltd conocido como «Payment forms, Buy now buttons, and Invoicing System», usado para crear formularios de pago públicos, botones de compra y gestionar facturación dentro de un sitio. La falla CVE-2026-119749 explota la función process_item() del plugin, que no valida cantidades negativas, permitiendo bypass de pago sin autenticación. Un segundo CVE, el 119747, afecta permisos de la REST API.
En este artículo:
- En 30 segundos
- ¿Qué es GetPaid y qué hace este plugin de pagos de WordPress?
- ¿Cómo funciona el bypass de pago con cantidades negativas (CVE-2026-119749)?
- ¿Qué es la vulnerabilidad de autorización CVE-2026-119747?
- ¿Qué tan graves son estas vulnerabilidades según el CVSS?
- ¿Hay explotación activa o exploits públicos de estas fallas?
- ¿Cómo actualizar GetPaid a la versión 2.8.63 y proteger el sitio?
- ¿Qué impacto económico tiene esto para tiendas y sitios con GetPaid?
- Errores comunes
- Preguntas Frecuentes
- Conclusión
- Fuentes
En 30 segundos
- CVE-2026-119749 (CVSS 8.7): atacante no autenticado ingresa cantidad negativa en un formulario de pago público y reduce el total a cero.
- CVE-2026-119747 (CVSS 7.1): usuarios con rol Editor o Autor pueden ver y marcar como pagadas facturas de otros, sin registrar la transacción.
- Versión afectada: todas las anteriores a GetPaid 2.8.63. El fix ya está disponible.
- Explotación activa: sin evidencia al 5 de noviembre de 2026, según el registro de CVE y los sensores de OffSeq Mirage.
- Acción recomendada: actualizar el plugin a 2.8.63 o superior desde el panel de WordPress ya mismo.
¿Qué es GetPaid y qué hace este plugin de pagos de WordPress?
GetPaid es el plugin de AyeCode Ltd que WordPress lista como «Payment forms, Buy now buttons, and Invoicing System», pensado para que un sitio pueda cobrar sin depender de una tienda completa tipo WooCommerce. Lo usan sitios que necesitan un formulario de pago puntual, un botón de «comprar ahora» en una landing, o un sistema de facturación básico para clientes recurrentes.
La lógica del plugin corre tanto en el front público (el formulario que ve cualquier visitante) como en el backend de WordPress, donde se gestionan las facturas. Ese doble frente, público y administrativo, es justamente donde aparecieron las dos fallas que corrigió la versión 2.8.63. Relacionado: la vulnerabilidad crítica ya explotada en WordPress 7.1.4.
¿Cómo funciona el bypass de pago con cantidades negativas (CVE-2026-119749)?
El bypass funciona porque la función process_item() de GetPaid no valida que la cantidad ingresada en un formulario público sea positiva. Un atacante sin cuenta en el sitio simplemente pone un valor negativo en el campo de cantidad y el subtotal de esa línea pasa a ser negativo también.
Ponele que un formulario de pago tiene un ítem de USD 50 con cantidad 1. Si el atacante cambia esa cantidad a -1, el subtotal pasa a -50. Si hay otros ítems en el carrito o directamente ese es el único, el total de la factura puede terminar en cero o menos. Ahí entra process_free_payment(), la función que GetPaid usa para procesar pagos sin costo, y marca la factura como pagada sin que haya pasado un centavo por la pasarela.
Según la descripción técnica del CVE, el ataque no requiere privilegios (PR:N), ni interacción del usuario (UI:N), y es explotable por red (AV:N) con complejidad baja (AC:L). Es, en la práctica, un ataque que cualquiera puede ejecutar desde el formulario público sin loguearse.
¿Qué es la vulnerabilidad de autorización CVE-2026-119747?
CVE-2026-119747 es una falla de autorización con CVSS 7.1 que permite a usuarios con rol Editor o Autor acceder y manipular facturas que no les corresponden. El problema está en check_post_permissions(), el método que GetPaid usa para validar operaciones en su REST API.
En vez de exigir el permiso específico manage_invoicing, ese método mapea las operaciones a capacidades genéricas de WordPress (las mismas que usa cualquier post). El resultado: un usuario con rol bajo puede listar facturas de otros usuarios, marcar facturas pendientes como pagadas sin que exista un registro de transacción real, y crear facturas o ítems publicados sin autorización. Complementá con el análisis de la ventana de explotación tras el parche de WordPress 7.1.4.
A diferencia del 119749, acá sí se necesita una cuenta en el sitio (PR:L), pero no hace falta ser administrador. Según el registro del CVE, está clasificado bajo CWE-863 (Incorrect Authorization), que el CWE Top 25 de 2025 ubica en el puesto #17 de debilidades más explotadas.
¿Qué tan graves son estas vulnerabilidades según el CVSS?
CVE-2026-119749 es más grave que CVE-2026-119747: 8.7 contra 7.1 en CVSS 4.0. La diferencia clave está en los privilegios requeridos: el primero no necesita ninguna cuenta, el segundo sí requiere una cuenta de bajo nivel.
| Característica | CVE-2026-119749 | CVE-2026-119747 |
|---|---|---|
| CVSS 4.0 | 8.7 (Alto) | 7.1 (Alto) |
| Vector de ataque | Red (AV:N) | Red (AV:N) |
| Privilegios requeridos | Ninguno (PR:N) | Bajo (PR:L) |
| Interacción del usuario | Ninguna (UI:N) | Ninguna (UI:N) |
| Impacto en integridad | Alto (VI:H) | Alto (VI:H) |
| Impacto en confidencialidad | Ninguno (VC:N) | Bajo (VC:L) |
| Fijado en versión | 2.8.63 | 2.8.63 |

Los dos comparten algo importante: ambos afectan la integridad al máximo nivel. Uno porque permite modificar el total de una factura desde cero autenticación, el otro porque permite falsificar el estado de pago desde un rol que no debería poder tocarlo.
¿Hay explotación activa o exploits públicos de estas fallas?
No hay evidencia de explotación activa registrada al 5 de noviembre de 2026. Ambos CVE se publicaron el 4 de noviembre de 2026, no figuran en el catálogo CISA KEV, no tienen módulo en Metasploit ni entrada en Exploit-DB, y los sensores honeypot de OffSeq Mirage no detectaron tráfico de ataque asociado a ninguno de los dos.
Tampoco existe una plantilla nuclei pública indexada para ninguno de los dos CVE, lo que significa que todavía no hay una forma automatizada y conocida de detectar instancias vulnerables expuestas en internet. Cubrimos ese tema en detalle en otra falla crítica en WordPress.
Eso sí: ausencia de evidencia no es evidencia de ausencia. Un CVE con CVSS 8.7 publicado hace menos de 24 horas, explotable sin autenticación, es exactamente el tipo de falla que suele generar un exploit público en días, no meses. El mismo registro de OffSeq lo deja claro: «A missing step is not evidence of safety» (un paso faltante no es evidencia de seguridad).
¿Cómo actualizar GetPaid a la versión 2.8.63 y proteger el sitio?
Actualizá el plugin GetPaid a la versión 2.8.63 o superior desde el panel de WordPress (Plugins > Actualizaciones) o descargando la versión nueva desde wordpress.org/plugins/invoicing/. Es el único paso que corrige de raíz ambas fallas, según confirma el propio changelog del plugin.
- Actualizá el plugin ya: no hay mitigación alternativa indicada por el fabricante más que subir a 2.8.63.
- Revisá los roles con acceso a facturación: si tenés Editores o Autores que no necesitan tocar invoicing, bajales el permiso hasta confirmar la actualización.
- Auditá facturas marcadas como pagadas en los últimos días: cruzá esos registros contra tu pasarela de pago real para detectar cobros que nunca ocurrieron.
- Documentá la fecha de actualización: te sirve como referencia si después aparece un exploit público y necesitás determinar la ventana de exposición real de tu sitio.
Si administrás varios sitios WordPress con plugins de pago, un hosting con monitoreo de seguridad y actualizaciones gestionadas, como el que ofrece donweb.com, reduce bastante el tiempo que un sitio queda expuesto entre que sale el parche y que lo aplicás.
¿Qué impacto económico tiene esto para tiendas y sitios con GetPaid?
El impacto económico directo es pérdida de ingresos: un comerciante entrega un producto o servicio creyendo que se cobró, cuando en realidad la factura se marcó como pagada sin que la pasarela procesara nada. Según la descripción del fabricante, esto «puede llevar a pérdida financiera para comerciantes que usan las versiones afectadas del plugin».
El segundo riesgo es interno. Un Editor o Autor con malas intenciones puede marcar facturas propias o ajenas como pagadas, sin dejar registro de transacción, lo que complica después cualquier intento de auditoría contable. No es solo un problema de atacantes externos: también abre la puerta a fraude desde adentro del equipo. Cobertura relacionada: las diferencias entre escaneo interno y externo.
Errores comunes
- Pensar que solo importa el CVE más alto: el 119747 tiene CVSS más bajo, pero si tenés Editores o Autores con cuentas activas, el riesgo es igual de real y más fácil de explotar en la práctica.
- Actualizar el plugin sin revisar facturas previas: el parche corrige el código, pero no borra las facturas que ya se marcaron como pagadas de forma fraudulenta antes de actualizar.
- Confiar en «no hay evidencia de explotación» como sinónimo de seguro: el CVE tiene menos de 24 horas de publicado. Esa ventana de calma suele cerrarse rápido cuando el CVSS es alto y no requiere autenticación.
- Dejar roles de bajo privilegio con acceso de más: muchos sitios le dan rol Editor a colaboradores externos sin pensar en qué capacidades de invoicing arrastra ese rol.
Preguntas Frecuentes
¿Qué es la vulnerabilidad CVE-2026-119749 en GetPaid?
Es una falla de validación de entrada en el plugin GetPaid de WordPress que permite a un atacante sin cuenta ingresar una cantidad negativa en un formulario de pago público. Eso reduce el subtotal de la factura a cero, y la función process_free_payment() la marca como pagada sin cargo real. Tiene CVSS 8.7 y afecta todas las versiones anteriores a 2.8.63. En otra vulnerabilidad crítica de WordPress profundizamos sobre esto.
¿Cómo actualizo el plugin GetPaid a la versión 2.8.63?
Desde el panel de WordPress, en Plugins > Actualizaciones, aplicá la actualización disponible de GetPaid. Alternativamente, podés descargar la versión nueva directamente desde wordpress.org/plugins/invoicing/ y subirla manualmente si tu panel no muestra la actualización automática.
¿Mi tienda online con GetPaid está en riesgo ahora mismo?
Si tu sitio corre una versión de GetPaid anterior a 2.8.63, sí está expuesto a ambas fallas. No hay evidencia de explotación activa al 5 de noviembre de 2026, pero eso no garantiza que tu sitio puntual no haya sido blanco de un intento aislado todavía no reportado.
¿Qué es CVE-2026-119747 y cómo afecta las facturas de otros usuarios?
Es una falla de autorización (CWE-863) en la REST API de GetPaid que permite a usuarios con rol Editor o Autor ver facturas ajenas, marcarlas como pagadas sin registrar la transacción, y crear facturas publicadas sin el permiso manage_invoicing que debería exigirse. Tiene CVSS 7.1 y también se corrige en la versión 2.8.63.
¿Hay explotación activa de las vulnerabilidades de GetPaid?
No, al 5 de noviembre de 2026 no hay evidencia de explotación activa en ninguno de los dos CVE. No están en el catálogo CISA KEV, no tienen exploit público indexado en Metasploit ni Exploit-DB, y los sensores de OffSeq Mirage no registraron tráfico de ataque asociado.
Conclusión
Dos fallas en un mismo plugin de pagos, una explotable sin cuenta y otra desde un rol de bajo privilegio, son el combo que convierte a GetPaid 2.8.63 en una actualización que no conviene postergar. Si administrás un sitio con este plugin, el paso concreto es simple: actualizá hoy, no cuando tengas tiempo. Después de actualizar, dedicale diez minutos a repasar las facturas marcadas como pagadas en la última semana y cruzarlas con tu pasarela real. Es el único criterio práctico que te va a decir, con certeza, si alguien ya aprovechó la ventana antes de que se cerrara.