JetPack y TwentyFifteen Vulnerable a DOM-based XSS

JetPack y TwentyFifteen vulnerables.

Cualquier Plugin de WordPress o tema que aprovecha el paquete genericons es vulnerable a una DOM-based Cross-Site Scripting (XSS) debido a un archivo inseguro incluido con genericons. Hasta el momento, el plugin JetPack (informó de que tiene más de 1 millón de instalaciones activas) y el tema TwentyFifteen (instalado por defecto) se encuentran ser vulnerable. El número exacto es difícil de entender, pero el plugin y el tema son instalaciones por defecto en millones de WordPress instala. El tema principal aquí es el paquete genericons, por lo que cualquier plugin que hace uso de este paquete es potencialmente vulnerable si se incluye el archivo example.html que viene con el paquete.

 

DOM-based XSS

La vulnerabilidad XSS es muy fácil de explotar y sucede a nivel Document Object Model (DOM). Si usted no está familiarizado con los ataques del DOM, el grupo de OWASP lo explica aqui bien:

DOM- based XSS es un ataque XSS en el que la carga útil de ataque se ejecuta como resultado de la modificación del Document Object Model (DOM) “medio ambiente” en el navegador de la víctima utilizado el script del lado del cliente original, por lo que el código del lado del cliente se ejecuta en un manera “inesperada”. Es decir, la propia página (la respuesta HTTP que es) no cambia, pero el código de cliente que figura en la página ejecuta de manera diferente debido a las modificaciones maliciosas que se han producido en el entorno de DOM.

Eso significa que la carga útil XSS nunca se envía hacia el lado del servidor y se ejecuta directamente en el navegador. Así que incluso alguien que use nuestra Sitio Web Firewall, puede ser vulnerable ya que nunca tiene la oportunidad de verlo. En este caso, hemos sido capaces de arreglar prácticamente el exploit, pero DOM-based XSS es muy difícil de bloquear.

DOM-based XSS también son un poco más difíciles de explotar, ya que requiere un cierto nivel de ingeniería social para conseguir que alguien haga clic en el enlace de explotar. Sin embargo, una vez que logren hacer esto, proporciona el mismo nivel del acceso que otros tipos de ataques de XSS (reflejado o almacenado).

0-days in the wild

Lo interesante de este ataque es que lo detectamos en los días antes de la divulgación. Conseguimos un informe sobre ello y algunos de nuestros clientes también conseguían informes que dicen que eran vulnerables y señalaban a:

http:// site.com/wp-content/themes/twentyfifteen/genericons/example.html#1< img/ src=1 onerror= alert(1)>

En esta prueba de concepto, el XSS impreso una alerta de javascript, pero podría ser utilizado para ejecutar javascript en tu navegador y hacerse cargo de la web si ha iniciado sesión como administrador.

Elimine el archivo genericons/example.html

Afortunadamente, la solución para esto es bastante sencillo. Elimine el archivo genericons/example.html o asegúrese de que tiene un WAF o IDS que está bloqueando el acceso a la misma. Debido a la baja gravedad, pero el impacto masivo, tendimos la mano a nuestra red de recibir relaciones en un intento de remendar prácticamente esto para millones de usuarios de WordPress tan pronto como sea posible.

Los anfitriones siguientes deberían haber remendado prácticamente o haber endurecido sus ambientes de esta cuestión desde hace una semana:

  • GoDaddy
  • HostPapa
  • DreamHost
  • ClickHost
  • Inmotion
  • WPEngine
  • Pagely
  • Pressable
  • Websynthesis
  • Site5
  • SiteGround

No podemos olvidar uno de los principios básicos de la seguridad, en el que debemos mantener un ambiente prístino de la producción. Esto significa que quitar debug o archivos de prueba antes de que se mude a la producción. En este caso, Automattic y el equipo de WordPress dejaron un archivo simple ejemplo.html que había encajada la vulnerabilidad. Lo qué es más preocupante aquí es el alcanzar el plugin y el tema se han combinado; que se instalan en muchos casos, por defecto en todas las instalaciones de WordPress. Simple descuido, que podría tener devastadores impactos en incautos propietarios de páginas web y las empresas.

Tenga en cuenta que a pesar de ser un DOM XSS, cualquier sitio detrás de nuestro Firewall Sitio Web ya están protegidos, pero si usted no tiene un WAF o IPS protegiendo su sitio, le recomendaría la eliminación de la example.html desde dentro del directorio genericons.

Tenga en cuenta que a pesar de ser un DOM XSS, cualquier sitio detrás de Sucuri Firewall Sitio Web ya están protegidos, pero si usted no tiene un WAF o IPS protegiendo su sitio, le recomendaría la eliminación de la example.html desde dentro del directorio genericons.

Texto obtenido de Tucancunix.net