Vulnerabilidad en WordPress 4.2

Iniciado por Nosferatu, Abril 27, 2015, 05:46:02 PM

Tema anterior - Siguiente tema

0 Miembros y 7 Visitantes están viendo este tema.

Abril 27, 2015, 05:46:02 PM Ultima modificación: Abril 29, 2015, 05:05:39 PM por blackdrake
Estimada Familia.

Llevo unos días desconectado porque se me han abierto unos cuantos frentes.

La cosa es que estaba con un proyecto en WordPress cuando me he topado con esta vulnerabilidad que afecta a la última versión.




Revisión:

Las versiones actuales de WordPress son vulnerables a un XSS almacenado. Un atacante no autenticado puede inyectar JavaScript en los comentarios de WordPress. El script se activa cuando el comentario está activo.

Si el administrador ha iniciado sesión bajo la configuración predeterminada, el atacante puede aprovechar la vulnerabilidad para ejecutar código arbitrario en el servidor a través de los editores de plugins y temas.

Alternativamente, el atacante podría cambiar la contraseña del administrador, crear nuevas cuentas de administrador, o hacer cualquier otra cosa en el momento en que el administrador ha iniciado sesión.

Detalles:

Si el texto del comentario es lo suficientemente largo, se truncará cuando se inserta en la base de datos. El límite de tamaño tipo TEXT en MySQL es de 64 kilobytes, por lo que el comentario tiene que ser bastante largo.

Los resultados de truncamiento en HTML con formato incorrecto generado en la página. El atacante puede suministrar cualquier atributo en las etiquetas HTML permitidas, en la misma forma que con los otros dos XSS publicados recientemente, que afectan el núcleo de WordPress.

La vulnerabilidad tiene una similitud con la reportada por Cedric Van Bockhaven en 2014, (parcheada esta semana, después de 14 meses). En lugar de usar un caracter UTF-8 no válido para truncar el comentario, esta vez un comentario de texto excesivamente largo se utiliza para el mismo efecto.

En estos dos casos el JavaScript inyectado al parecer no puede ser desencadenado en el tablero de instrumentos administrativos, por lo que estas hazañas requieren moverse por la moderación de comentarios, por ejemplo, mediante la publicación de un comentario inofensivo primero.

Pruebas:

El código a inyectar en el comentario es este:


Código: php
<a title='x onmouseover=alert(unescape(/hello%20world/.source))
style=position:absolute;left:0;top:0;width:5000px;height:5000px
AAAAAAAAAAAA [64 kb] ...'></a>


Ha sido probado en WordPress 4.2, 4.1.2, y 4.1.1, y las versiones de MySQL 5.1.53 y 5.5.41.

Solución:

Deshabilitar los comentarios . No aprobar cualquier comentario. (Un poco triste las soluciones, no??).




Siento mucho la traducción, pero tenéis el artículo original, en inglés, aquí:
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Saludos Cordiales.


Gracias por el aporte, hermano,

Según la web de la fuente, Wordpress ya lo ha solucionado lanzando el parche 4.2.1.

Esta vez han sido mas rapidos que la anterior.

Hermano bibliotecario tambien podriamos agregar parte del codigo a la lista negra de comentarios, para que automaticamente se descarte, por ejemplo:



Saludos.
El talento se parece al tirador que da en un blanco que los demás no pueden alcanzar; el genio se parece al tirador que da en un blanco que los demás no pueden ver.


No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Hermano bibliotecario tambien podriamos agregar parte del codigo a la lista negra de comentarios, para que automaticamente se descarte, por ejemplo:



Saludos.

Es una buena idea pero no lograría solventar el fallo, pues como Bibliotecario explica el fallo se produce por el tamaño excesivo del mensaje, no por su contenido por lo cual si se cambian las A por B, el fallo seguiría siendo funcional y aludiría el filtro de seguridad.

Saludos

Jamás utilicéis el blacklisting como filtro, y mucho menos ante un XSS.
Contacto: @migueljimeno96 -

Gracias por la info chicos.

Saludos.


Enviado desde mi iPhone utilizando Tapatalk
El talento se parece al tirador que da en un blanco que los demás no pueden alcanzar; el genio se parece al tirador que da en un blanco que los demás no pueden ver.