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

Почему в Apache по умолчанию включена функция «Параметры, включающая индексы»?

Мне было любопытно, почему Options Includes Indexes обычно включен по умолчанию в конфигурациях Apache.

Кто-нибудь знает, почему это так, поскольку это обычно не одобряется из соображений безопасности?

Традиция?
Потому что так было всегда?
Потому что проект Apache не хочет разрушать существующие сайты?
Потому что вам действительно нужно проверить свою конфигурацию перед запуском сервера?

Все вышеперечисленное.


Некоторые примечания к рассматриваемым директивам

Серверные включает (Includes) обычно не одобряются, особенно потому, что в наши дни есть более эффективные способы создания динамического контента. Если ни один контент на вашем сервере не использует их, у вас нет реальной угрозы безопасности. Лучше всего отключить их на случай, если кому-то удастся скомпрометировать вашу машину и загружает страницу, которая использует их для чего-то неприятного.

Голый Includes Директива, с которой поставляется Apache, особенно плоха в этом отношении, поскольку она позволяет вам выполнять программы (как пользователь Apache) как часть директив SSI. Если у вас ДОЛЖНЫ быть включены включения на стороне сервера, вы должны оценить, нужна ли вам возможность запускать программы, а если нет, вам следует использовать IncludesNOEXEC вместо голого Includes директива.


Автоматическое создание индекса (Indexes) являются уязвимостью раскрытия информации: если нет индексного файла, сервер с радостью перечислит все в каталоге (включая ссылку на .. чтобы вы могли просмотреть дерево назад).
Из-за ссылки для просмотра каталогов также существует риск того, что плохо настроенный сервер позволит пользователям выйти из корневого веб-сайта и прочитать что-то конфиденциальное, например /etc/passwd.

Имея Indexes Включено не представляет большого риска для безопасности, если ваш сервер настроен правильно (в корневом веб-корне нет конфиденциальной информации, нет возможности просматривать ваш путь вне корневого веб-сайта), и это может быть отличным вариантом для файловых серверов (вам не нужно поддерживать индекс вручную), но если вам не нужно создавать автоматические индексы, отключение этого, вероятно, будет хорошей идеей.

Не полагайтесь на это как на «безопасность через неясность», чтобы защитить вас, если ваш веб-сервер плохо настроен: кто-то все же может сделать http://example.com/../../../../../../../../etc/passwd для себя в системе с достаточно плохим выбором конфигурации.