03 julio 2014

Las dos últimas graves vulnerabilidades en plugins de Wordpress

Wordpress se caracteriza por ser uno de los gestores de contenidos con menos vulnerabilidades tanto en su core como en sus plugins o añadidos. Eso si, por su gran difusión, en el momento que aparece una, el impacto puede ser alto afectando a millones de instalaciones por todo el mundo. 

Además, un problema añadido es ya no solo la instalación indiscriminada de plugins por parte de los administradores (los cuales añaden una capa de posibles vectores de ataques), si no que cada vez más los temas utilizados incluyen a su vez herramientas de gestión de imágenes o recursos o pequeñas mini-aplicaciones que, en caso de descubrir una vulnerabilidad, afectarían a todos los que dispongan del theme instalado (y no necesariamente implantado) por el simple hecho de tener sus ficheros accesibles.

En la última semana, han surgido dos vulnerabilidades graves en ficheros y plugins que podrían comprometer el sistema dónde se ubique el blog, permitiendo en tanto ejecución remota de código como la subida de ficheros sin necesidad de estar autenticado.

Wordpress TimThumb 2.8.13 WebShot - Remote Code Execution

No es la primera vez que se descubre una vulnerabilidad en el script de gestión y redimensionamiento de imagenes TimThumb. Hace unos años se descubrió (de una forma accidentada tras  el compromiso de un servidor con Wordpress) que existía un fallo en el script al validar los dominios desde donde se permitía la subida de ficheros de imágenes al servidor a través de la aplicación. Entre estos dominios se encontraban los de blogger.com, picassa.com, wordpress.com, etc. Si uno conseguía crearse un subdominio dentro de un dominio controlado que incluyese dichas palabras (por ejemplo, blogger.com.miservidor.com), el script aceptaría la carga remota del fichero y se subiría al servidor.

Pues bien, TimThumb vuelve a sufrir una grave vulnerabilidad (sobretodo en caso de tener habilitada la funcionalidad WEBSHOT) pero esta vez de ejecución de comandos, tal y como se reportó en primer lugar en la lista de Full-Disclosure (como ya vimos en los últimos enlaces de la SECmana):

Ejecución de comandos a través del script TimThumb de Wordpress con WEBSHOT

Sección de código vulnerable cuyo final consiste en la ejecución de comandos que se introduzcan como parámetro

Remote File Upload Vulnerability in WordPress MailPoet Plugin (wysija-newsletters)

Un miembro del equipo de seguridad de Sucuri (Marc-Alexandre Montpas) ha descubierto una grave vulnerabilidad en el plugin MailPoet (utilizado para el envío y gestión de respuestas en newsletters desde Wordpress), descargado por más de 1'75 millones según las estadísticas de su página en Plugins Wordpress.org:

Página del plugin MailPoet en Wordpress.org

No se sabe mucha información técnica por el momento acerca de esta vulnerabilidad, ya que debido a su gravedad han decidido únicamente avisar al desarrollador y publicar el aviso de actualización urgente a todos los usuarios. Lo que si han comentado en el post del blog de Sucuri es que se recomienda a todos los desarrolladores de plugins que NUNCA se utilicen as funciones admin_init() o is_admin() como método de autenticación para la realización de tareas importantes de gestión.

La actualización de este plugin se publicó el 1 de Julio, y los desarrolladores de MailPoet únicamente han comentado lo siguiente en su Changelog:

Fragmento de los cambios tras actualización del plugin a la versión 2.6.7 el 1 de Julio

1 comments :

unoqtal dijo...

Como es posible inyectar el comando en el parámetro URL si se supone q el $ se elimina?