html - etiquetas - ¿Cómo se determina en qué tecnología se basa un sitio web?
programacion html pdf (18)
Algunas personas incluso pueden oscurecer deliberadamente la tecnología que usan. Después de todo, no me tomaría mucho tiempo ajustar apache para que ".asp" realmente ejecutara scripts Perl y pusiera "powered by Microsoft IIS" en mi pie de página a pesar de que utilicé MySQL.
De esa forma, pasarías todo tu tiempo intentando piratear mi sitio usando vulnerabilidades que en realidad no tiene.
Muy a menudo me encuentro con un sitio web atractivo o funcional y me pregunto qué tecnología se utilizó para crearlo. ¿Qué técnicas están disponibles para descubrir con qué se construyó un sitio web en particular?
Pocos marcos parecen incluir cualquier tipo de metaetiqueta de generador como lo hacen los editores web. ¿Hay algún signo revelador de idiomas y / o marcos particulares?
Resumen de respuestas
Las URL del sitio pueden traicionar el marco y / o el lenguaje de programación, pero no se puede confiar (por ejemplo, extensiones de archivos como .asp). Los encabezados de respuesta HTTP, las cookies, las hojas de estilo y los comentarios de origen también pueden dar pistas.
Algunas buenas herramientas para consultar los detalles del sitio (sin duda, hay muchas más):
Complementos de Firefox:
- Wappalyzer - CMS, marcos / bibliotecas, comercio electrónico, tableros de mensajes, etc.
- Detalles de dominio: detalles de IP, país y servidor web
- Library Detector - Bibliotecas Javascript en uso
Extensiones de Chrome:
Bookmarklets:
- WTFramework : muestra el marco de JavaScript en uso
Echa un vistazo a Chrome Sniffer , una gran solución liviana.
El examen de las cookies que proporciona el sitio puede revelar el marco subyacente. CodeIgniter, por ejemplo, tiene como valor predeterminado una cookie telltale ci_sessions. Los sitios que usan PEAR Auth harán algo similar.
En Linux / OSX a menudo uso el comando simple curl -sI www.site.com
Hay todo tipo de cosas que puede tener en cuenta, pero en realidad no le da ninguna certeza en cuanto a la tecnología detrás de un sitio. En general, la información así es algo que la gente querrá ocultar, ya que mientras más información exista, más fácil será para las partes malintencionadas identificar vulnerabilidades de seguridad o denegación de servicio.
Si estuviera interesado, probablemente miraría, sin ningún orden en particular, a:
- urls y extensiones de archivos.
- Encabezados de respuesta HTTP
- Código fuente para comentarios, o bibliotecas estándar JS
A propósito, las herramientas mencionadas en otras respuestas solo están mirando algunas de las propiedades anteriores del sitio, aunque sean automáticas y un poco más rápidas. :)
Las URL pueden dar muchas pistas, especialmente con los sistemas de gestión de contenido.
Por ejemplo, " http://abcxyz.com/ node / 46 " se parece mucho a Drupal.
Además, muchos marcos tienen archivos JavaScript y CSS estándar que usan.
Puede usar http://builtbased.com/ para descubrir qué servidor, marco y lenguaje de programación se usaron.
Puede usar BuiltWith para averiguar qué servidor y qué lenguaje de programación se utilizó. Por ejemplo, me dijo que SO usa IIS7, Google Analytics, html4 y utf8.
Si desea conocer el marco ... bueno, eso probablemente no sea posible solo por mirar el sitio. ¿Por qué no les escribes un correo electrónico? ;)
Puede usar domaintools.com para buscar la información del servidor de un sitio web y limitarlo a si es de código abierto / Microsoft:
http://whois.domaintools.com/.com
Y después de eso, es cuestión de buscar en el pie de página consejos como "Powered by WordPress" o "vBulletin", etc.
También hay W3Techs , que muestra mucha de esa información.
Uso 1 complemento para Firefox que me da el IP y el país para el sitio web de alojamiento y su nombre de servidor web llamado Detalles de dominio , y para el marco de JavaScript utilizo WTFramework
Todavía tengo que preguntarme en qué guión está escrito, pero es un comienzo :)
Espero eso ayude.
PS el resultado será algo como esto:
texto alternativo http://img88.imageshack.us/img88/2505/200812282328ha0.png
Uso WebParser ( http://www.cybermake.com ) que permite determinar el CMS utilizado por un sitio web. Permite determinar el CMS para múltiples sitios web, así como también puede extraer la lista de sitios web de los motores de búsqueda para una lista dada de palabras clave. Herramienta poderosa.
Ve a NetCraft y usa el "¿Qué está funcionando ese sitio?" cuadro de búsqueda en la esquina superior izquierda. Haga clic aquí para obtener el informe sobre Desbordamiento de pila . No necesariamente será correcto (por ejemplo, podría haber almacenamiento en caché o carga en el camino), pero a menudo le da la pista que necesita.
sí, hay algunos signos reveladores de CMS comunes como Drupal, Joomla, Pligg y RoR, etc. .. ASP.NET cosas es fácil de detectar también ... pero a medida que el marco se vuelve más oscuro, es más difícil de deducir ..
Lo que suelo comparar es el sitio en el que estoy fisgoneando con otro sitio que sé que está construido con una tecnología en particular. Eso a veces funciona ...
guess.scritch.org hace esto para los CMS.
Simplemente ingrese la URL e intentará adivinar el CMS. En este caso, me dice que mi blog está ejecutando wordpress 3.4.2 (que es correcto, ¡acabo de comprobar!)
http://www.quarkbase.com/ es una muy buena herramienta y sitio web de información
http://www.similartech.com es una nueva herramienta que creamos, que hace exactamente eso y lo presenta muy bien.
La mayoría de los sitios ASP.NET son fáciles de identificar desde .aspx en las URL. También hay signos reveladores en el código fuente HTML, como un campo de formulario oculto llamado __VIEWSTATE
o el JavaScript WebResource.axd. Los elementos HTML a menudo tienen atributos de identificación que comienzan con algo como _ctl0
.
Los sitios de Rails generalmente incluirán hojas de estilo de / stylesheets y archivos de JavaScript de / javascripts y cada URL generalmente tendrá una cadena de consulta que contiene una marca de tiempo para impedir el almacenamiento en caché. Los campos de formulario a menudo seguirán la convención de nomenclatura de model_name[attribute_name]
.