Vulnerabilidad en Adblock Plus que permite ejecutar código al utilizar filtros dudosos.

En el bloqueador de anuncios Adblock Plus se ha detectado una vulnerabilidad, que permite organizar la ejecución de código JavaScript en el contexto de sitios web, en caso de usar filtros no verificados preparados por atacantes (por ejemplo, al conectar conjuntos de reglas de terceros o mediante la sustitución de reglas durante un ataque MITM).

Los autores de listas con conjuntos de filtros pueden organizar la ejecución de su código en el contexto de los sitios abiertos por el usuario añadiendo reglas con el operador «rewrite«, que permite reemplazar parte de la URL. El operador rewrite no permite reemplazar el host en la URL, pero permite manipular libremente los argumentos de la consulta. Solo se permite el uso de texto como máscara para el reemplazo, y la inserción de etiquetas script, object y subdocument. se bloquea.

Sin embargo, se puede lograr la ejecución de código mediante un camino alternativo.
Algunos sitios, incluidos Google Maps, Gmail y Google Images, emplean la técnica de carga dinámica de bloques de JavaScript ejecutables, transmitidos en forma de texto plano. Si el servidor permite la redirección de solicitudes, se puede lograr un pase a otro host alterando los parámetros de la URL (por ejemplo, en el contexto de Google, la redirección puede realizarse a través de la API «google.com/search«). Además de los hosts que permiten redirecciones, el ataque también puede llevarse a cabo contra servicios que permiten el alojamiento de contenido de usuarios (hostings de código, plataformas de publicación de artículos, etc.).

El método de ataque propuesto solo afecta a las páginas que cargan dinámicamente cadenas con código JavaScript (por ejemplo, a través de XMLHttpRequest o Fetch) y luego las ejecutan. Otra limitación importante es la necesidad de usar una redirección o alojar datos arbitrarios en el lado del servidor original que entrega el recurso. Sin embargo, como demostración de la relevancia del ataque, se muestra cómo organizar la ejecución de su código al abrir maps.google.com, utilizando una redirección a través de «google.com/search».

La corrección está en proceso de preparación. El problema también afecta a los bloqueadores AdBlock y uBlock. El bloqueador uBlock Origin no está afectado por el problema, ya que no soporta el operador «rewrite». En su momento, el autor de uBlock Origin.
renunció agregar soporte para rewrite, citando posibles problemas de seguridad y la insuficiencia de las restricciones a nivel de host (en lugar de rewrite, se propuso la opción querystrip para limpiar los parámetros de la consulta en lugar de reemplazarlos).

Los desarrolladores de Adblock Plus consideran poco probable la ejecución de ataques reales, ya que todos los cambios en las listas de reglas predeterminadas son revisados, y la conexión de listas externas es muy rara entre los usuarios. La sustitución de reglas a través de MITM se excluye debido a la aplicación por defecto de HTTPS para cargar listas de bloqueo predeterminadas (para otras listas, se planea prohibir la carga a través de HTTP en una futura versión). Para bloquear ataques desde los sitios, se pueden utilizar directivas CSP (Content Security Policy), a través de las cuales se pueden definir explícitamente los hosts desde los cuales se permite la carga de recursos externos.

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster