Se ha identificado una grave falla de seguridad en el plugin WordPress Paid Membership Subscriptions, utilizado por más de 10,000 sitios web para gestionar suscripciones y pagos recurrentes.
La vulnerabilidad, registrada como CVE-2025-49870, afecta a las versiones 2.15.1 y anteriores. El fallo permite una inyección SQL no autenticada, lo que significa que atacantes pueden insertar consultas maliciosas en la base de datos sin necesidad de credenciales de inicio de sesión.
El problema fue descubierto por el investigador ChuongVN de Patchstack Alliance, quien confirmó que la vulnerabilidad fue corregida en la versión 2.15.2.
Cómo funciona la vulnerabilidad
El error se origina en la forma en que el plugin procesa las notificaciones instantáneas de pago de PayPal (IPN).
Cuando se recibe una transacción, el plugin toma un ID de pago directamente desde los datos proporcionados por el usuario y lo inserta en una consulta a la base de datos sin validación adecuada.
Si un atacante manipula este dato, puede obtener acceso a información sensible o modificar registros almacenados.
Para mitigar el riesgo, los desarrolladores aplicaron varias mejoras en la versión 2.15.2, entre ellas:
- Validación de que el ID de pago sea estrictamente numérico antes de su uso
- Sustitución de la concatenación vulnerable de consultas por sentencias preparadas
- Refuerzo de los controles sobre la entrada de datos de los usuarios
El uso de sentencias preparadas evita que los atacantes alteren la estructura prevista de las consultas a la base de datos, eliminando el riesgo de inyección.
Riesgos de la inyección SQL
La inyección SQL (SQLi) ha sido históricamente una de las amenazas más peligrosas en seguridad web, ya que puede comprometer bases de datos completas.
Tal como señala el aviso de Patchstack:
“En el proceso de consultas SQL, siempre es necesario escapar y validar la entrada del usuario antes de ejecutar una consulta. La mejor práctica es usar sentencias preparadas y aplicar un casting estricto de cada variable.”
Recomendación para administradores
Los administradores que utilicen el plugin Paid Membership Subscriptions deben actualizar inmediatamente a la versión 2.15.2 para proteger sus sitios contra posibles ataques.
Fuente: https://www.infosecurity-magazine.com/news/sqli-threat-wordpress-memberships