OK, alguien tiene que preguntar esto: hoy, 7/7/2015 se ha lanzado un nuevo parche de seguridad para Magento <1.9.2.
¡actualiza tus tiendas lo antes posible!
¿Pero qué ha cambiado? ¿Existen vulnerabilidades conocidas de los problemas de seguridad cubiertos? ¿Qué es lo peor que pudo haber pasado?
¿Y hay algo que pueda romperse? Al igual que con SUPEE-5994, donde no era posible aplicar el parche si faltaba el directorio de descarga ...
magento-1.9
security
patches
supee-6285
Fabian Schmengler
fuente
fuente
Respuestas:
Como ya se mencionó, las vulnerabilidades parcheadas se describen en detalle en esta página oficial (nuevos documentos comerciales): http://merch.docs.magento.com/ce/user_guide/Magento_Community_Edition_User_Guide.html#magento/patch-releases-2015.html
Resumen
Después de parchear algunas tiendas, esto es lo que reuní:
Parches temáticos
Algunos archivos de temas se han parcheado con escapes adicionales para evitar posibles ataques XSS:
checkout/cart.phtml
checkout/cart/noItems.phtml
checkout/onepage/failure.phtml
rss/order/details.phtml
wishlist/email/rss.phtml
Si su tema (s) contiene alguna de estas plantillas, o si realizó modificaciones directamente
base/default
(buena suerte, está jodido), entonces necesita parchearlas manualmente:en las plantillas de pago, reemplace todas las ocurrencias de
con
en
wishlist/email/rss.phtml
, reemplazarcon
En
rss/order/details.phtml
, reemplazarcon
Permisos
.htaccess
Los archivos se han agregadodownloader/Maged
ydownloader/lib
no permiten el acceso directo a los archivos de origen. Si usa nginx, debe agregar estas reglas para lograr lo mismo (gracias a Ben Lessani para esta):Pero recomiendo excluir
downloader
de las implementaciones a un sistema de sistema en vivo de todos modos, en este caso no necesita tomar medidas.Privilegios de administrador (ACL)
Si usa cuentas de administrador restringidas, es posible que algunos menús de extensiones de terceros ya no funcionen para ellas. La razón es que el valor de retorno predeterminado de
Mage_Adminhtml_Controller_Action::_isAllowed()
ha cambiado detrue
aMage::getSingleton('admin/session')->isAllowed('admin')
. Las extensiones que no anulan este método en sus controladores de administrador porque no usan la ACL, ahora necesitan el privilegio "TODOS" .La única solución es parchear las extensiones y agregar este método a todos sus controladores de administrador:
O si realmente tienen un recurso ACL definido en
etc/adminhtml.xml
:(puede ver que el parche hace lo mismo para
Phoenix_Moneybookers
versiones anteriores de Magento como 1.7 donde se incluyó esta extensión)Para obtener una perspectiva más detallada sobre este problema y una explicación sobre cómo definir los recursos de ACL faltantes, consulte: Errores de acceso denegado después de instalar SUPEE-6285
Posibles errores al aplicar el parche
Mensaje:
Motivo: el
default/modern
tema se eliminó de la instalaciónSolución: Agregue
app/design/frontend/default/modern
desde una nueva descarga de Magento (debe ser la misma versión que su tienda). También puede usar este espejo: https://github.com/firegento/magento . Luego, después de aplicar el parche con éxito, puede eliminar el tema nuevamente.Mensaje
Motivo: el
downloader
directorio se eliminó de la instalaciónSolución: Agregue
downloader
desde una nueva descarga de Magento (debe ser la misma versión que su tienda). También puede usar este espejo: https://github.com/firegento/magento . Luego, después de aplicar el parche con éxito, puede eliminar el directorio nuevamente.Mensaje: algo similar a
Motivo: los archivos se almacenan con
\r\n
(CRLF, salto de línea de Windows) o\r
(CR, salto de línea de Mac) en lugar de\n
(LF, salto de línea de Unix).Solución: simplemente convierta los saltos de línea, su editor de texto o IDE debería ser capaz de hacerlo.
fuente
_isAllowed
método. Afortunadamente, tuvimos ACL en el módulo y no se requirió ninguna acción adicional aparte de agregar el método. Además, encontré ese primer mensaje de error con eldefault/modern
tema que se había movido (también encontré al culpable gracias a Git). +1 para esoVía @ http://blog.philwinkle.com/supee-6285-broken-down/
Después de haber agregado:
Para uno de los controladores de terceros, la sección de administración comenzó a "trabajar" nuevamente ...
¿Tendremos otro parche de Magento pronto? Esto parece ser un problema mayor ...
fuente
Si tiene muchas extensiones comunitarias / locales, querrá prestar especial atención a este cambio en SUPEE-6285 que afecta
app/code/core/Mage/Adminhtml/Controller/Action.php
y está alrededor de la línea 666 dependiendo de su versión de parche (este es el archivo de parche EE 1.14.0.1):Todos los módulos personalizados que no implementan sus propios recursos de administración se ven afectados por el cambio anterior y el acceso será denegado a menos que el usuario administrador en cuestión tenga todos los privilegios de administrador.
Si busca en otra parte del parche, verá que muchos de los módulos principales incluidos se han actualizado; sin embargo, es probable que esto afecte a muchos módulos de terceros, así que preste especial atención para probar cualquier extensión de terceros en el parche posterior de su sitio para verificar ¡Todavía puedes acceder a ellos!
fuente
Parece que la página de lanzamiento del parche se ha actualizado con información sobre lo que afecta.
Todavía tengo que instalar en un sitio de producción y probar
fuente
La lista completa de archivos modificados después de aplicar el parche también está disponible en
app/etc/applied.patches.list
fuente
En mi caso para módulos de terceros, agregar el siguiente código a los controladores adminhtml funcionó:
fuente