2

WordPress Core: vulnerabilidad Reinicio contraseña exploit 0day

Wordpress Potential Unauthorized Password Reset (0day)

A WordPress le llueven los enanos de la seguridad. Esta vez, un exploit 0day, vulnerabilidad Reinicio contraseña, titulado WordPress Exploit 4.7 Unauth Reset 0day, con asignación CVE-2017-8295 que explota una vulnerabilidad presente en todas las versiones de WordPress, al llamar a la función mail() cuando intentamos reiniciar la contraseña.

WordPress Core: vulnerabilidad Reinicio contraseña exploit 0day

WordPress Exploit 4.7 Unauth Reset 0day

El sistema de WordPress para el restablecimiento de una contraseña, presenta una vulnerabilidad que en algunos casos podría permitir al atacante obtener el enlace de restablecimiento de la contraseña sin autorización para ello. Por tanto, la víctima de este exploit, es la cuenta de WordPress.

El problema es la programación para el uso de datos no seguros que por defecto trate WordPress para el uso de la función mail() de PHP. Al crear el correo electrónico de restablecimiento de la contraseña, que se supone que debe ser entregado sólo al correo electrónico asociado a la cuenta del usuario de WordPress (incluido la de admin), en una instalación defecto de WordPress se envía de forma no segura.

Correo autentificado en Tamainut
En Tamainut, hace unos meses optamos por ir cerrando ciertas prácticas de algunos CMS y software web, como WordPress, de usar mail() a través del uso de sendmail en lugar de utilizar el correo de forma autenticada. Esto es algo que pertenece a la vieja escuela, y que costará tiempo pues los usuarios, están acostumbrados a los que “se dice en internet” o lo que “dice Google”. El 90% de las empresa de Hosting, incluidas las especialistas en WordPress, tendrán miles de sitios con WordPress vulnerables, debido a que permiten el envío de correo a través de sendmail. Artículos relacionados con el correo autentificado

Al usarse WordPress sin correo autentificado estamos dejando que WordPress use la variable SERVER_NAME para obtener el nombre de host, y crear una cabecera RETURN-PATH. Esto puede modificarse de forma arbitraria, indicando una dirección de retorno fake, usada para obtener el email de restablecimiento.

Ejemplos de diferentes escenarios de explotación de la vulnerabilidad

  1. El atacante puede realizar un ataque DoS a la cuenta de correo o servidor de la víctima (por DoS podemos entender un simple envío de correo con grandes ficheros, con el fin de desbordar la cuota del usuario) con el fin de que el rebote del correo llegue a la dirección fake.
  2. El sitio worpdress tiene configurado un autoresponder que envía copia. Una vez mas la dirección faker recibirá el correo.
  3. En la última se requiere interacción del usuario, pues se le envía más de un correo con el fin de que responda a la explicación de la respuesta de seguridad. Este es algo más complicado pero aun así, afectará a aquellos que crean que están a salvo por el uso de contraseña de seguridad.

Solución al exploit

Publicado por ExploitBox (Dawid Golunski) inicialmente el 3/5/2017, y notificado a WordPress, a día de hoy, no hay solución para NINGUNA versión de WordPress, por lo que el alcance es más que elevado, pues se supone que hay más de 60 millones de sitios web, con lo que los script-kiddies tiene por delante un fin de semana fantástico.

Solución por configuración

La mejor solución pasa por usar algún plugin que fuerce a WordPress a usar SMTP autenticado tal y como describimos en nuestro artículo Correo SMTP autenticado en WordPress con Postman

 


Imagen original descargada desde Freepik diseñada por StartLine y retocada por Abdelkarim Mateos

Comparte este artículo

Comments 2

  1. Pingback: Correo SMTP autenticado en Wordpress con Postman SMTP - Tamainut

  2. Pingback: Correo SMTP autentificado en Wordpress con Postman SMTP - Tamainut

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax