Сам WordPress в wp-content
папке содержит пустой PHP-файл, который выглядит следующим образом.
<?php
// Silence is golden.
?>
Должны ли плагины включать в себя такой пустой файл, чтобы люди не могли просматривать содержимое каталога? А как насчет дополнительных папок в темах - как includes
каталог?
plugin-development
theme-development
chrisguitarguy
источник
источник
Options –Indexes
в комплекте htaccess, поэтому эти файлы неОтветы:
Нет, они не должны. Если плагин имеет уязвимости только потому, что кто-то может увидеть его структуру каталогов, он поврежден. Эти ошибки должны быть исправлены.
Безопасность через неизвестность - это ошибка для себя.
Владелец сайта может разрешить или запретить просмотр каталогов.
Вторая проблема заключается в производительности: WordPress сканирует все файлы PHP в корневой директории плагина, чтобы найти заголовки плагина. Это позволяет вам иметь несколько плагинов в одном каталоге, например
/wp-content/plugins/wpse-examples/
.Это также означает, что неиспользуемые PHP-файлы в этом каталоге тратят впустую время и память, когда WordPress ищет плагины. Один файл не принесет большого вреда, но представьте, что это становится обычной практикой. Вы создаете реальную проблему в попытке исправить вымышленное.
источник
index.php
? это может быть оптимальным обходнымЯ собираюсь сказать ДА. Безопасность через неизвестность работает, если вы более неясны, чем ваши соседи :) (шучу, но в этом есть доля правды).
Реальность такова, что боты / сканеры теперь компилируют списки плагинов прямо с wordpress.org и сканируют URL-адрес плагина напрямую, считывая отпечатки пальцев для известных эксплойтов и сохраняя информацию в базе данных для справки.
Итак, какой из них вы бы предпочли: бот не может собрать информацию о вашей установке или оставить его на усмотрение автора плагина, чтобы убедиться, что вы в безопасности. Как насчет обоих.
пс. Кроме того, в прошлом году было зарегистрировано 186 эксплойтов из плагинов wordpress.org (* сообщается ...).
источник
index.php
ничего не защитит, вы просто получите ложное чувство безопасности.Поскольку ядро WordPress делает это, для плагинов имеет смысл следовать их примеру. Хотя все это может быть защищено с помощью различных настроек на стороне сервера, это не помешает иметь настройки по умолчанию (вероятно, почему ядро WordPress делает это).
источник
Как указала fuxia, существует недостаток производительности, связанный с наличием дополнительного
.php
файла, который WordPress сканирует на наличие плагинов.index.html
, Вероятно , будет лучшим вариантом. Конечно, лучшим вариантом было бы запретить просмотр каталогов через веб-сервер.А также, безопасность через неизвестность не годится.
источник