используемые дистрибутивы ПО, номера версий клиента и сервера и установленные обновления. В других случаях в утекающей информации может содержаться расположение временных файлов или резервных копий. Во многих ситуациях эти данные не требуются для работы пользователя. Большинство серверов предоставляют доступ к чрезмерному объему данных, однако необходимо минимизировать объем служебной информации. Чем большими знаниями о приложении будет располагать злоумышленник, тем легче ему будет скомпрометировать систему.
Индексирование директорий (Directory Indexing). Предоставление списка файлов в директории представляет собой нормальное поведение веб-сервера, если страница, отображаемая по умолчанию (index.html/home.html/default.htm), отсутствует.
Когда пользователь запрашивает основную страницу сайта, он обычно указывает доменное имя сервера без имени конкретного файла (http://www.example.com). Сервер просматривает основную папку, находит в ней файл, используемый по умолчанию, и на его основе генерирует ответ. Если такой файл отсутствует, в качестве ответа может вернуться список файлов в директории сервера. Этот случай аналогичен выполнению команды ls (UNIX) или dir (Windows) на сервере и форматированию результатов в виде HTML. В этой ситуации злоумышленник может получить доступ к данным, не предназначенным для свободного доступа. Довольно часто администраторы полагаются на «безопасность через сокрытие», предполагая, что раз гиперссылка на документ отсутствует, то он недоступен непосвященным. Современные сканеры уязвимостей, такие как Nikto, могут динамически добавлять файлы и папки к списку сканируемых в зависимости от результатов запросов. Используя содержимое /robots.txt или полученного списка директорий, сканер может найти спрятанное содержимое или другие файлы. Таким образом, внешне безопасное индексирование директорий может привести к утечке важной информации, которая в дальнейшем будет использована для проведения атак на систему.
Используя индексирование директорий, можно получить доступ к следующим данным.
♦ Резервные копии (BAK, OLD или ORIG-файлы).
♦ Временные файлы. Такие файлы должны удаляться сервером автоматически, но иногда остаются доступными.
♦ Спрятанные файлы, название которых начинается с символа ..
♦ Соглашение об именах. Эта информация может помочь предсказать имена файлов или директорий (admin или Admin, back-up или backup).
♦ Список пользователей сервера. Очень часто для каждого пользователя создается папка с именем, основанном на названии учетной записи.
♦ Имена файлов конфигурации (CONF, CFG или CONFIG).
♦ Содержимое серверных сценариев или исполняемых файлов в случае неверно указанных расширений или разрешений.
Могут использоваться три основных сценария получения списка файлов.
♦ Ошибки конфигурации. Подобные проблемы возникают, когда администратор ошибочно указывает в конфигурации сервера эту опцию. Такие ситуации могут возникать при настройке сложных конфигураций, где некоторые папки должны быть доступны для просмотра. С точки зрения злоумышленника, запрос не отличается от указанного раньше. Он просто обращается к директории и анализирует результат. Его не беспокоит, почему сервер ведет себя подобным образом.
♦ Некоторые компоненты веб-сервера позволяют получать список файлов, даже если это не разрешено