martes, 19 de septiembre de 2017

Plugin de WordPress con fallo de seguridad


Fallo de seguridad de WordPress


Un plugin de WordPress llamado Display Widgets ha sido usado, durante los últimos dos meses y medio, para instalar una puerta trasera en las webs que utilizan este CMS.

El código con la  puerta trasera se encontró entre la versión 2.6.1 de Display Widgets (subido el 30 de junio) y la versión 2.6.3 (subido el 2 de septiembre).

El equipo de WordPress.org ha intervenido y ha eliminado el plugin del repositorio oficial de WordPress Plugins. En el momento en que se eliminó, el plugin estaba instalado en más de 200.000 sitios, aunque no podemos estar seguros de cuántos de ellos se actualizaron a una versión que incluía el comportamiento malicioso.

Más sorprendente aún es que el personal de WordPress.org ya eliminó el plugin tres veces antes por violaciones similares. 

Este plugin permitía a los propietarios de sitios de WordPress controlar qué, cómo y cuándo aparecen los widgets (complementos) de WordPress en sus sitios.

Stephanie Wells de Strategy11 desarrolló el plugin, pero después de cambiar su enfoque a una versión premium del plugin, decidió vender la versión de código abierto a un nuevo desarrollador que hubiera tenido el tiempo de atender a su base de usuarios.

Un mes después de comprar el plugin en mayo, su nuevo propietario lanzó una primera versión nueva - v2.6.0 - el 21 de junio.

Primera eliminación del Plugin


Un día después, David Law, un consultor de SEO y el autor de un plugin competidor llamado Display Widgets SEO Plus, envió un correo electrónico al equipo de WordPress.org informándoles que la versión 2.6.0 estaba rompiendo las reglas del plugin de WordPress al descargar más de 38MB de código de un servidor de terceros.

De acuerdo con la ley, este código de 38MB contenía características de rastreo que registraban el tráfico en los sitios web utilizando los widgets de pantalla 2.6.0. El código extra recogía datos tales como direcciones IP de usuario, cadenas de usuario-agente, el dominio donde se recogieron los datos y la página que el usuario estaba viendo. El plugin también estaba enviando esta información a un servidor de terceros.

Otros usuarios también detectaron este comportamiento y reportaron el problema a través del foro de soporte del plugin en WordPress.org.

Siguiendo el reporte de Law, el equipo de WordPress.org eliminó el plugin del repositorio de WordPress al día siguiente.

Segunda eliminación del Plugin


Una semana más tarde, el 1 de julio, el nuevo autor del plugin consiguió reinstalar el plugin y lanzar una nueva versión - v2.6.1. Esta versión integró el archivo 38MB (geolocation. php) dentro del plugin, para evitar romper las reglas de WordPress.org que dicen que los plugins no pueden descargar código de servidores de terceros.

Law, que ya estaba vigilando el plugin, contactó de nuevo al personal de WordPress.org sobre el plugin. Esta vez, reportó que el plugin estaba ahora con una puerta trasera maliciosa que permitía al propietario del plugin conectarse a sitios remotos y crear nuevas páginas o mensajes. La función de registro de tráfico de usuarios también estaba presente.

Un día después, el plugin fue eliminado del repositorio oficial de WordPress Plugins por segunda vez en una semana.


WordPress propensa a tener fallos de seguridad

Tercera eliminación del Plugin


Según un registro de cambios de plugins, el nuevo autor publicó la versión 2.6.2 al repositorio WordPress Plugins el 6 de julio.

Durante unos días, el plugin parece haber odetenido todo comportamiento malicios. Desafortunadamente, esto no duró. El 23 de julio, un usuario llamado Calvin Ngan presentó una queja ante el personal de WordPress, acusando al plugin de "páginas no detectables con enlaces spam".

Al igual que antes, Ngan dice que rastreó el comportamiento malicioso al archivo geolocation.php, añadido por el nuevo autor del plugin en la versión 2.6.1.

Los investigadores descubrieron que esta versión estaba creando nuevas páginas donde se insertaron enlaces a otros sitios. Estas páginas y entradas de blog no aparecieron en el panel de administración del backend. Además, el plugin también ocultaba estas páginas spam de los usuarios conectados (normalmente administradores del sitio). Sólo los usuarios que habían salido de la sesión podían ver estas nuevas páginas.

Para crear estos mensajes secretos, el plugin contactó con un dominio remoto desde donde recuperó el contenido que debía insertar en la página. Wordfence ha rastreado el plugin contactando los siguientes dominios, todos alojados en el mismo servidor en 52.173.202.113.

Un día después del informe de Ngan, el equipo de WordPress eliminó por tercera vez el plugin Display Widgets del sitio oficial.

Cuarta y última eliminación del Plugin


Una vez más, los nuevos autores no se rindieron. El 2 de septiembre suben la versión 2.6.3 al repositorio de WordPress.

Esta versión también era maliciosa porque el 7 de septiembre, otro usuario se quejó una vez más de que el plugin insertaba enlaces spam en su sitio.

En dos respuestas publicadas sobre el tema de soporte del plugin, dos personas que publicaban desde la cuenta oficial del plugin trataron de minimizar el incidente, afirmando que sus sitios fueron pirateados porque cuando los usuarios combinaban el código geolocation.php con otros plugins, abrían sus sitios a la exploración.

El personal de WordPress.org parece haber tomado el control del plugin y ha publicado la versión 2.7.0 que incluye exactamente el mismo código de la versión 2.0.5, la última versión limpia del plugin, antes de que se vendiera a un nuevo propietario.

El plugin ya no está disponible en el sitio oficial de WordPress.org, lo que significa que no está disponible para nuevas instalaciones, pero la actualización aparecerá en los backends de los sitios de WordPress donde el plugin todavía está instalado.

Por eso desde Edina Diseño Web Valencia siempre desaconsejamos utilizar cualquier CMS, lo mejor es tener tu página web a medida bien hecha.

No hay comentarios:
Publicar un comentario