Довольно часто я сталкиваюсь с красивым или функциональным веб-сайтом и задаюсь вопросом, какая технология была использована для его создания. Какие методы доступны, чтобы выяснить, что конкретный веб-сайт был построен с помощью?
Некоторые фреймворки, в отличие от веб-редакторов, включают в себя какие-либо метатеги генератора. Есть ли какие-нибудь контрольные признаки конкретных языков и / или фреймворков?
Резюме ответов
URL-адреса сайтов могут выдавать структуру и / или язык программирования, но на них нельзя полагаться (например, расширения файлов, такие как .asp). Заголовки ответов HTTP, файлы cookie, таблицы стилей и комментарии к источникам также могут дать подсказки.
Несколько хороших инструментов для запроса информации о сайте (без сомнения, их гораздо больше):
Дополнения Firefox:
Расширения Chrome:
Букмарклеты:
Я хотел бы знать, есть ли способ скрыть основной язык сервера
@shababhsiddique Основной язык сервера по умолчанию «скрыт». Не будет стандартной техники для сокрытия того, на чем построен ваш сайт - просто не позволяйте Backend выводить контрольные маркеры во внешний интерфейс.
@ZachL до сих пор я нашел несколько веб-сайтов, на которых я не мог сказать, что они были созданы. возьмем, к примеру, apple.com. builtwith.com/?https%3a%2f%2fwww.apple.com%2f, как узнать? если вы не можете узнать, как яблоко это спрятало?






URL-адреса могут дать много подсказок, особенно с системами управления контентом.
Например, «http://abcxyz.com/узел / 46» очень похож на Drupal.
Также во многих фреймворках есть стандартные файлы JavaScript и CSS, которые они используют.
Хороший! Мне нравится стандартный javascript и особенно стандартные файлы CSS в качестве отпечатка пальца.
Неправильно. SO использует .NET и имеет синтаксис, аналогичный вашему примеру. Веб-сайт, который я разработал, использует тот же синтаксис и работает на Django.
Такой же формат URL используется и в Rails ... Для приложения Rails. Вы можете увидеть тот же формат. Например: mysite.com/post/12
Есть множество вещей, на которые вы можете обратить внимание, но на самом деле это не дает вам никакой уверенности в отношении технологии, лежащей в основе сайта. В общем, подобную информацию люди захотят скрыть, поскольку чем больше раскрывается информации, тем легче злоумышленникам выявлять уязвимости безопасности или дыры в отказе в обслуживании.
Если бы мне было интересно, я бы, вероятно, посмотрел, без определенного порядка, на:
Кстати, инструменты, упомянутые в других ответах, смотрят только на некоторые из вышеуказанных свойств сайта для вас, хотя и автоматически и немного быстрее. :)
Было много хороших ответов, поэтому я несколько задержался с выбором принятого, но он подошел лучше всего. Он охватывает основные отправные точки, которые можно использовать, возможно, прежде чем углубляться в автоматизированные инструменты.
Вы можете использовать http://builtwith.com, чтобы выяснить, какой сервер и язык программирования использовались. Например, он сказал мне, что SO использует IIS7, Google Analytics, html4 и utf8.
Если вы хотите узнать структуру ... ну, это, вероятно, будет невозможно, просто взглянув на сайт. Почему бы тебе не написать им электронное письмо? ;)
Напишите им электронное письмо, что ж, для вас это нестандартное мышление. Хорошая точка зрения! И мне нравится builtwith.com, просто нужно как-то добавить этот ответ в закладки. Ваше здоровье.
Построен так, что не могу сказать, что SO находится на IIS7, как вы получили эту информацию?
@shababhsiddique: Еще в 2008 году могло.
Как я могу также скрыть информацию о моих сайтах? Я еще не видел ни одного ресурса?
@shababhsiddique: это отдельный вопрос, вы должны задать его правильно, если он еще не существует
Так круто. Спасибо.
Вы можете использовать domaintools.com для поиска информации о сервере для веб-сайта и сузить круг вопросов до того, является ли он открытым исходным кодом / Microsoft:
http://whois.domaintools.com/stackoverflow.com
И после этого нужно искать в нижнем колонтитуле такие подсказки, как «Powered by WordPress» или «vBulletin» и т. д.
Еще один классный инструмент, который мне нужен для создания закладок в SO. Придется добавить эти ссылки в вопрос.
да, есть некоторые характерные признаки для распространенных CMS, таких как Drupal, Joomla, Pligg, RoR и т.д .. ASP.NET тоже легко обнаружить .. но по мере того, как структура становится все более непонятной, становится все труднее выводить ..
Обычно я сравниваю сайт, который отслеживаю, с другим сайтом, который, как я знаю, создан с использованием определенной технологии. Иногда это срабатывает ..
Большинство сайтов ASP.NET легко определить по .aspx в URL-адресах. В исходном HTML-коде также есть контрольные признаки, такие как скрытое поле формы с именем __VIEWSTATE или JavaScript WebResource.axd. HTML-элементы часто имеют атрибуты id, начинающиеся с чего-то вроде _ctl0.
Сайты Rails обычно включают таблицы стилей из / stylesheets и файлы JavaScript из / javascripts, и каждый URL-адрес обычно будет иметь строку запроса, содержащую временную метку для предотвращения кеширования. Поля формы часто соответствуют соглашению об именах model_name[attribute_name].
Я использую 1 плагин для Firefox, который дает мне IP-адрес и страну для веб-сайта хостинга, и его имя веб-сервера называется Детали домена, а для фреймворка javascript я использую WTFramework
Мне все еще нужно гадать, на каком скрипте это было написано, но это начало :)
Надеюсь, поможет.
P.S. вывод будет примерно таким:
альтернативный текст http://img88.imageshack.us/img88/2505/200812282328ha0.png
рад, что вам понравилось :) вы также можете щелкнуть «правильный значок», который находится под номером репутации для этого вопроса, чтобы вы могли пометить его как принятый ответ, если хотите;)
Есть ли шанс, что вы знаете о расширении сведений о домене для Chrome?
@ Андрей хотя бы пытался это выяснить? это первый результат поиска в Google!
Перейдите к Netcraft и используйте "Что это за сайт работает?" поле поиска в верхнем левом углу. Нажмите здесь, чтобы увидеть отчет о Переполнение стека. Это не обязательно будет правильным (например, может быть кеширование или балансировка нагрузки), но часто дает вам ключ к разгадке.
Некоторые люди могут даже намеренно скрыть используемую ими технологию. В конце концов, мне не потребовалось много времени, чтобы настроить apache так, чтобы «.asp» действительно запускал сценарии Perl и помещал «на базе Microsoft IIS» в нижний колонтитул, несмотря на то, что я использовал MySQL.
Таким образом, вы потратите все свое время, пытаясь взломать мой сайт, используя уязвимости, которых на самом деле нет.
Изучение файлов cookie, которые предоставляет сайт, может выявить основную структуру. CodeIgniter, например, по умолчанию использует контрольный файл cookie ci_sessions. Сайты, использующие PEAR Auth, будут делать нечто подобное.
http://www.quarkbase.com/ - очень хороший инструмент и информационный сайт
Оцените Chrome Sniffer, отличное легкое решение.
Хорошее расширение chrome, по состоянию на 2014 год, оно дает вам очень полную информацию о техническом стеке. Это отлично работает с расширением BuiltWith (последнее дает вам больше информации, связанной с сетью)
Также есть W3Techs, который показывает вам большую часть этой информации.
Я использую WebParser (http://www.cybermake.com), который позволяет определить CMS, используемую веб-сайтом. Он позволяет определять CMS для нескольких веб-сайтов, а также может извлекать список веб-сайтов из поисковых систем по заданному списку ключевых слов. Мощный инструмент.
В Linux / OSX я часто использую простую команду curl -sI www.site.com
http://guess.scritch.org/ делает это для CMS.
Просто введите URL-адрес, и он попытается угадать CMS. В этом случае он сообщает мне, что в моем блоге работает wordpress 3.4.2 (что верно, я только что проверил!)

Это не хорошо. Читает только метатеги страниц ... :(
Вы можете использовать http://builtbased.com/, чтобы выяснить, какой сервер, фреймворк и язык программирования использовались.
http://www.similartech.com - это новый инструмент, который мы создали, он делает именно это и очень красиво представляет его.
Мне нравится использовать Wappalyzer, надстройку Firefox, чтобы сразу увидеть технологии сайта.