Más vulnerabilidades XSS en WordPress

La primera de ellas afecta a la función wp_title(), en el que el parámetro year no es filtrado adecuadamente, para esta vulnerabilidad ya existe un parche disponible en la versión de desarrollo.

code:
http://vulnerable/?year=</title><script>alert("XSS")</script>

Sobre el segundo fallo, reportado hace algunas horas por otra persona -pero sobre el cuál tenía conocimiento e inclusive había preparado un pequeño exploit la semana anterior 🙂 , es bastante más peligroso dependiendo de las condiciones en que se desarrollaría el ataque. Al igual que menéame hace algún tiempo, wordpress es vulnerable por el mal uso de la variable $_SERVER['PHP_SELF'].

Para reproducir este bug en la página principal, en general depende de la estructura de URL's que hayan definido para vuestras entradas, pero este problema también se puede reproducir en el panel de administración, donde puede tener consecuencias mucho más peligrosas (como la ejecución remota de código PHP).

Por obvias razones, todavía no mostraré el exploit, pero si quieren quieren una solución temporal, pueden incluir el siguiente código después de la línea 49 en wp-settings.php.

php:
$PHP_SELF = $_SERVER['PHP_SELF'] = htmlspecialchars(strip_tags($_SERVER['PHP_SELF']), ENT_QUOTES);

Cuando salga la corrección oficial para el segundo bug, mostraré el código vulnerable y todos los detalles del exploit 😉

4 Replies to “Más vulnerabilidades XSS en WordPress”

  1. Bueno para la vulnerabilidad que encontre realmente la solucion es la suma de dos cambios que son el 5003 como dijiste y el 5002 esto claro para la version de SVN.
    Para las series 2.1.x y 2.0.x es el cambio 5022 el que realmente soluciona la vulnerabilidad...

    Y si para el mal vulnerabilidad de mal filtrado de PHP_SELF como dices solo tiene repercusion mayor en el panel de administracion y yo tambien pensaba hacer un advisory XDDD, que bueno que lei tu blog...
    Por cierto voy a enviar tu solucion al trac para que sea evaluada y posiblmente tomada en cuenta...

    Saludos

  2. Gracias por el comentario sobre los cambios que realmente corrigen el problema en la rama 2.1, últimamente es bastante difícil seguir los fallos de seguridad de WordPress 😀

    Saludos

Comments are closed.