En una plataforma abierta para organizar el comercio electrónico , que dura aproximadamente mercado de sistemas para la creación de tiendas online, vulnerabilidades, cuya combinación le permite realizar un ataque para ejecutar su código en el servidor, obtener control total sobre la tienda en línea y organizar la redirección de pagos. Vulnerabilidades en cuestiones Magento 2.3.2, 2.2.9 y 2.1.18, que en conjunto abordan 75 cuestiones relacionadas con la seguridad.
Un problema permite a un usuario no autenticado lograr una ubicación de JavaScript (XSS) que se puede ejecutar al ver el historial de compras canceladas en la interfaz de administración. La esencia de la vulnerabilidad es la capacidad de omitir la operación de limpieza de texto usando la función escapeHtmlWithLinks() al procesar una nota en el formulario de cancelación en la pantalla de pago (usando la etiqueta "a href=http://onmouseover=..." anidado en otra etiqueta). El problema se manifiesta cuando se utiliza el módulo Authorize.Net integrado, que se utiliza para aceptar pagos con tarjeta de crédito.
Para obtener control total utilizando el código JavaScript en el contexto de la sesión actual de un empleado de la tienda, se explota una segunda vulnerabilidad, que le permite cargar un archivo phar bajo la apariencia de una imagen ( "Deserialización de Phar"). El archivo Phar se puede cargar a través del formulario de inserción de imágenes en el editor WYSIWYG incorporado. Una vez ejecutado su código PHP, el atacante puede cambiar los datos de pago o interceptar la información de la tarjeta de crédito del cliente.
Curiosamente, se envió información sobre el problema de XSS a los desarrolladores. Magento En septiembre de 2018, se publicó un parche a finales de noviembre que, como se demostró, solo solucionaba uno de los casos específicos y era fácil de eludir. En enero, se informó además que era posible cargar un archivo Phar disfrazado de imagen, y se demostró cómo se podía utilizar una combinación de dos vulnerabilidades para comprometer tiendas en línea. A finales de marzo, Magento 2.3.1,
2.2.8 y 2.1.17 solucionaron el problema con los archivos Phar, pero olvidaron la corrección XSS, aunque el ticket del problema se cerró. En abril, se reanudó el análisis XSS y el problema se solucionó en las versiones 2.3.2, 2.2.9 y 2.1.18.
Cabe señalar que estas versiones también corrigen 75 vulnerabilidades, 16 de las cuales están clasificadas como críticas, y 20 problemas pueden provocar la ejecución de código PHP o la sustitución de SQL. La mayoría de los problemas críticos solo los puede cometer un usuario autenticado, pero como se muestra arriba, las operaciones autenticadas se pueden lograr fácilmente utilizando vulnerabilidades XSS, de las cuales varias docenas han sido parcheadas en las versiones mencionadas.
Fuente: opennet.ru
