¿Hay alguna manera de encontrar la versión de Magento que se está utilizando sin tener acceso al código del lado del servidor?
Por ejemplo, ¿cómo funciona este complemento?
https://chrome.google.com/webstore/detail/magento-version-check/aekpbnbbbgocohlbdpdfgghamedmplal
Mis pensamientos son verificar LICENSE.txt
o LICENSE_EE.txt
. Al menos puede determinar CE vs EE.
También puede usar el año de copyright por defecto styles.css
para hacer una suposición.
¿Alguien más sabe una mejor manera?
Respuestas:
Magento 1.x
El aviso de copyright
/skin/frontend/default/default/css/styles.css
ya es un buen indicador.Estos son los diferentes avisos de copyright para Magento CE:
Para distinguir 1.4 y 1.5, debe hacer una diferencia real contra los archivos. Este repositorio espejo en GitHub podría ayudar:
https://github.com/OpenMage/magento-mirror/commits/magento-1.5/skin/frontend/default/default/css/styles.css
Magento 2.x
Para las tiendas Magento 2, obtienes la versión en una placa de plata siempre que el
Magento_Version
módulo no esté desactivado. Solo visitashop-domain.tld/magento_version
. Salida de ejemplo:Sin embargo, no hay información sobre la versión exacta del parche.
Si el módulo de versión está deshabilitado o el acceso a esta URL está bloqueado, también puede verificar una hoja de estilo predeterminada como
/static/frontend/Magento/blank/en_US/css/print.css
. Pero hasta ahora, el aviso de copyright no dice mucho:fuente
Si la tienda todavía tiene instalado el Magento Connect Module y no bloquea a propósito esa URL del acceso público, solo puede acceder a http://www.website.com / downloader, la versión se mostrará en la parte inferior según esta imagen.
Técnicamente creo que esta es la versión para el paquete Downloader, pero nunca he visto que no coincida con la versión general de Magento.
fuente
public static function getVersionInfo()
hay una matriz que muestra la versión. Supongo que esta versión también corresponde a la versión de Magento.Puede usar hash MD5 de archivos públicos (imágenes, css, js) para identificar la versión.
Este depósito tiene una lista de hashes de archivos en
js
,media
yskin
carpetas.Aquí están los hashes únicos en
json
formatoPor ejemplo, si probamos la tienda de demostración de Magento
Vemos que el hash corresponde a
CE 1.9.0.0
.Con php podría parecer
Tenga en cuenta que esto puede no funcionar si los archivos están minificados, parcheados, tienen diferentes finales de línea, etc.
fuente
Si tiene acceso al panel de administración, puede consultarlo en el pie de página para la versión de magento
De lo contrario, si no se cambia el permiso, puede consultar el archivo RELEASE_NOTES.txt para la versión de magento que puede determinar fácilmente si se trata de EE o comunidad
fuente
No , sería malo si se publicara públicamente. En cuanto a la seguridad, está bien no decirle todo a todos.
A veces, la funcionalidad frontend le dará una buena suposición. Debido a que algunas características se acaban de implementar desde la edición x. O las rutas se crean de una manera que es especialmente para una versión.
Lo mismo ocurre con los módulos, si tienen una funcionalidad de interfaz específica y enrutadores que los señalan o el uso del nombre de la clase, se puede adivinar fácilmente.
Sin embargo, puede hacer esto (todos necesitan un cierto nivel de acceso):
app/Mage.php
) y comprobarapp/etc/modules
fuente
Solía
magescan
determinar una versión remota de Magento:https://github.com/steverobbins/magescan
También puede buscar el nivel de parche, la información del servidor, los módulos instalados, el catálogo, el mapa del sitio, las rutas inalcanzables y, por supuesto, la versión. Es un PHP phar y se puede instalar con Composer.
Uso típico:
fuente