Назад | Перейти на главную страницу

Как определить веб-сервер без заголовка сервера

ПОЗЖЕ РЕДАКТИРОВАТЬ : Может ли быть так, что IIS не чувствителен к регистру для URL-адресов, а Apache - и кто-то может использовать эту информацию для дальнейшего повышения коэффициента достоверности при обнаружении OS / WebServer?


Я читал о полезном инструменте UrlScan Вот и наткнулся

IIS 6.0 не включает функцию RemoveServerHeader, поскольку эта функция не дает реальных преимуществ в плане безопасности. Большинство атак на серверы не зависят от операционной системы. Кроме того, можно определить идентичность сервера и информацию об операционной системе с помощью механизмов, которые не зависят от заголовка сервера.

Конечно, это вызвало у меня любопытство, так как я не понимаю, как можно обнаружить ОС и / или веб-сервер без использования заголовка сервера. Однако расширения (.php, .asp, .aspx, .do, .py и т. Д.) Не могут быть ответом на этот вопрос или искать "__VIEWSTATE" или аналогичные скрытые поля ввода в содержимом ответа.

Есть ли какой-то секретный способ, о котором я действительно не знаю?

РЕДАКТИРОВАТЬ 1: Я предполагаю настраиваемые страницы ошибок (а не те, которые по умолчанию четко показывают веб-сервер; знание веб-сервера также дает вам четкое представление об ОС)

Похожий на Обнаружение ОС, каждый веб-сервер имеет небольшие особенности и поведение при определенных условиях, которые могут быть обнаружены. Я не знаю точных методов макушки. Это часто делается путем отправки недействительных или необычных запросов и просмотра сообщения об ошибке или ответа. Apache может обрабатывать конкретный недопустимый запрос несколько иначе, чем IIS.

Некоторые из них будут замаскированы, если на пути есть обратный прокси-сервер или балансировщик нагрузки. Вместо того, чтобы изучать ваш веб-сервер, любопытный человек узнает, какой прокси вы используете.

На самом деле это довольно тривиально, даже если между ними есть прокси. Например, этот инструмент дает вам довольно хорошее представление:

Httprint Net-Square

Хотя это все еще метод проверки заголовка HTTP, есть много других заголовков, помимо заголовка сервера, которые разные серверы приложений будут добавлять к ответу HTTP, что указывает на то, на каком сервере они работают.

Некоторые примеры из IIS / ASP.NET / Sharepoint:

  • X-Powered-By: ASP.NET
  • X-AspNet-Версия: 2.0.50727
  • MicrosoftOfficeWebServer: 5.0_Pub

Это не гарантированный метод, но во многих случаях работает.

Nmap имеет функцию, которая обнаруживает, что ОС работает на сервере. Вероятно, это не доказательство отказа, но я думаю, он должен работать на разумном количестве серверов в сети.

Вот это полная ссылка на это.