Clicky

Averigua en cuestión de segundos qué tecnologías está utilizando un sitio web

Joomla 3.6

Incluyendo el CMS, servidor web, JavaScript y mucho más

La curiosidad pudo haber matado al gato, pero para los desarrolladores web que puede ser beneficioso curiosear y descubrir sobre qué se construyen nuestros sitios web favoritos. No se trata sólo de satisfacer la curiosidad; aprender más acerca de un sitio web puede introducirnos en nuevas tecnologías o llevarnos a soluciones alternativas que puede que no hayamos considerado previamente.

Además si tienes un cliente que es cauteloso acerca de dar acceso al backend o FTP, todavía se puede conseguir algo de información básica que puede apuntar en la dirección correcta. Por supuesto, a pesar de las aplicaciones prácticas, una gran parte del tiempo que pasamos aprendiendo acerca de lo que hay debajo del capó de un sitio web es puramente para la diversión, pero eso no quiere decir que no valga la pena hacerlo!

Así que sin más preámbulos, vamos a echar un vistazo a qué tipo de información se puede sacar como visitante normal de un sitio y cómo podemos hacerlo.

Todas las secuencias de comandos!

Hace algunos años la caza de información sobre un sitio web era una tarea simple, cuando sólo había dos o tres principales sistemas de gestión de contenidos y no se publican todos los días nuevos frameworks de JavaScript. La mayoría de los sitios utilizaban ya sea Joomla! o WordPress junto con una única biblioteca de JavaScript, así que no había mucho por descubrir.

Hoy en día, sin embargo, una sola página puede incluir múltiples plugins de JavaScript, herramientas para la identificación de funciones del navegador, herramientas para el seguimiento, secuencias de comandos de redes sociales y más. Es una página mucho más llena, así que tendremos que depender de algunas de las herramientas más potentes para encontrar la información que necesitamos.

Para ayudarnos con esta tarea, podemos utilizar un plugin llamado Wappalyzer. La página web oficial explica de modo sencillo su principal función:

Wappalyzer destapa las tecnologías utilizadas en los sitios web. Si usted es un desarrollador web o si sólo tiene un interés en el software en la web, sigue adelante e instala la extensión en el navegador.

Wappalyzer está disponible como una extensión de Chrome o Firefox (también esta disponible para Opera a través de la extensión Chrome Download), y se pueden instalar a través de los respectivos directorios de plugins de cada navegador. Alternativamente, si se está ejecutando otro navegador que no tiene disponible un plugin, entonces se puede utilizar también la funcionalidad vía un Bookmarklet, que se puede encontrar en la sección Descargas del sitio principal.

El texto introductorio en el ejemplo anterior puede haber proporcionado una breve descripción de para lo que es el plugin, pero no entra en detalles sobre el tipo de información que puede desenterrar, ni cómo funciona. Afortunadamente, todo es materia bastante estándar.

Inmediatamente después de la instalación del plugin podemos ver un pequeño icono que se agrega a la barra de herramientas de nuestro navegador. Al hacer clic en cualquier momento en este icono, en cualquier página, tirará de algunos detalles útiles acerca de lo que está usando la página, incluyendo los detalles de:

•  El servidor web
•  CMS (si se utiliza)
•  Lenguaje de programación (como PHP)
•  Bibliotecas de JavaScript incluidas, lo que cubre los medios sociales, analítica, frameworks, etc...

A modo de ejemplo, si nos dirigimos a un sitio popular conocido como joomla.org entonces podemos encontrar la siguiente información:

información de joomla.org

No es ninguna sorpresa encontrar que se construye a partir de Joomla!; después de todo el sitio tiene que practicar lo que predica! Lo que no nos dice es la versión de Joomla! instalada; tendremos que hacer un poco más de caza para eso. Aún así, podemos utilizar nuestro conocimiento de Joomla! para ayudarnos a formar una conjetura si la versión no es inmediatamente evidente. En este caso, podemos ver en los archivos información sobre jQuery y el framework Bootstrap, lo que sugiere que la página se basa en Joomla! 3.x. Aunque vamos a tener que entrar un poco más al fondo si queremos ver la respuesta definitiva.

Cómo identificar la versión de Joomla! de una página web

Dependiendo de la cantidad de acceso que tengamos, enterarnos de los detalles de la versión de Joomla! actualmente en uso en nuestro sitio web de ejemplo puede ser sorprendentemente fácil o un pequeño desafío. A menudo, si no están disponibles una de las soluciones más directas, entonces podríamos tener que depender de nuestros poderes de observación para descubrir los detalles adicionales que necesitamos para averiguar la versión. Desde fácil a difícil, los métodos son:

Mediante el área de administrador de Joomla!

La manera más obvia para saber qué versión de Joomla! se está ejecutando es comprobar el área de /administrator del del sitio, donde podemos comprobar la versión de Joomla! en la barra inferior en cualquier página de Joomla!. Por supuesto, esto requiere que seamos capaces de conseguir de alguna manera el acceso al área de administración, que no es probable que sea posible.

versión de Joomla en el administrador

Sin embargo, incluso con esta solución fácil podría ser un poco difícil, ya que la información de la versión se muestra a través de un sencillo módulo de Joomla! de back-end que significa que puede estar inédita . En tales casos, sería necesario modificar el acceso a los módulos mediante el acceso al gestor de módulos y módulos de filtrado por el administrador, a continuación, publicar el módulo Versión Joomla. Sin este acceso, tendremos que utilizar un método alternativo.

A través de Joomla! frontend usando el archivo de manifiesto joomla.xml

Hay varias formas comunes para descubrir qué versión Joomla! está siendo utilizada cuando sólo se tiene acceso frontend, y dos de ellas son muy eficaces. En primer lugar, podemos examinar el archivo joomla.xml que registra alguna información básica acerca de la instalación. Si todo lo que tienes es la URL del sitio web y sabes que es ejecutado con Joomla!, entonces todo lo que tienes que hacer añadir lo siguiente al final de la URL: administrator/manifests/files/joomla.xml.

Esto dirigirá tu navegador al archivo XML y lo abrirá como texto HTML; aquí se puede buscar la etiqueta <version>, donde podrás ver la versión actualmente en uso en el sitio, incluyendo las actualizaciones de seguridad. Este archivo es visible por defecto en las instalaciones de Joomla!, y siempre que el propietario del sitio no haya realizado ningún cambio en este sentido serás capaz de leer este archivo. Para poner este método en contexto, intenta visitar https://www.joomla.org/administrator/manifests/files/joomla.xml y comprueba los resultados; parece que joomla.org está utilizando la última versión 3.6, como cabría esperar!

versión de Joomla con el archivo joomla.xml

A través del archivo README.txt de Joomla!

Cada vez que Joomla! se actualiza a través de un paquete de actualización desde el sitio joomla.org, o mediante el uso de la opción de actualización automática que viene integrada con Joomla!, el paquete de actualización incluirá un archivo denominado README.txt que, al igual que el archivo joomla.xml, puede ser leído por los visitantes del sitio. ¿Por qué es útil? Porque, así como alguna información y enlaces a los recursos básicos para ayudar a los nuevos usuarios a empezar con Joomla !, también hay alguna información adicional sobre la versión de Joomla! instalada. En la primera parte del archivo readme hay una sección titulada "1- What is this?", donde podemos encontrar el historial de versiones del paquete actual. A modo de ejemplo, podemos comprobar la página web joomla.org de nuevo, y ver que el primer párrafo del readme contiene el texto siguiente:

readme.txt de Joomla

Que nos dice que el sitio está utilizando Joomla! 3.6, como se confirmaba en el archivo XML previamente visto. Una cosa que puedes notar es que este método sólo revela la versión principal actual y no tiene en cuenta la versión de seguridad actual como hace el archivo joomla.xml. Entonces, ¿cómo hacemos para tener acceso a este archivo README.txt? Si utilizaste el enlace de arriba habrás visto que es prácticamente el mismo que el método XML; sólo tienes que añadir /README.txt (es sensible a mayúsculas) al final de la URL del sitio y debes ser capaz de abrir el archivo directamente en tu navegador.

Es muy común que los desarrolladores mantengan este archivo en su servidor, ya que no supone peligro y proporciona información de la versión de Joomla!, detalles muy generales y los recursos que están libremente disponibles en otros lugares. Por lo tanto, en los casos en que el primer método no funcione (como en apañados.es) el segundo es casi seguro que será un éxito (en el caso de esta página tampoco se puede leer, ya que lo tengo protegido por seguridad).

Identificar la versión de Joomla! basada en secuencias de comandos de detalles de la versión

Si todo lo demás falla, hay una forma más de ayudar a determinar la versión de Joomla! instalada, pero no es recomendable ya que es más incómoda y tiene una alta probabilidad de inexactitud. Básicamente, mediante la comparación de los tipos de scripts y sus números de versión instalada en el sitio que se está comprobando en comparación con las versiones regulares de Joomla!, entonces podrías ser capaz de deducir la versión actual. Por ejemplo, si ves que está instalado MooTools, entonces es probable que el sitio web esté ejecutando una versión anterior de Joomla! 1,5/2.x. Al ver la versión de jQuery o BootStrap también se puede obtener una mejor idea de qué versión está instalada, pero esto es sin duda difícil de manejar ya que muchos desarrolladores de plantillas utilizan scripts personalizados, versiones actualizadas de BootStrap, o simplemente eliminan por completo la acción predeterminada de Joomla! jQuery/Bootstrap. Sin embargo, si no tienes ninguna otra opción, entonces ¿cuál es el daño de tratar de verlo?

Resumiendo

A pesar de ser un simple y llano visitante de un sitio web sin ningún tipo de acceso especial, todavía es posible aprender algunas cosas acerca de lo que está pasando detrás de las escenas. Además de los métodos mencionados anteriormente, también puedes hacerlo a través de algunas herramientas avanzadas como complementos pagados, pero sospecho que utilizan soluciones muy similares a las de arriba para identificar las versiones de Joomla!, así que no recomendaría el uso de ellos. Si conoces otras maneras de encontrar la versión de Joomla! con sólo una URL del sitio por favor deje un comentario abajo y comparte el conocimiento; siempre estamos interesados en alternativas!

Jesus_Caceres