Включение expose php в php.Ини

мне сообщили, что имея expose_php = On в моем php.ini является проблемой безопасности и, следовательно, не соответствует PCI.

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

потенциальные проблемы, о которых я думаю, - это сторонние услуги (поставщики платежей, системы отслеживания электронной почты, API потокового видео), которые ожидают, что вы ответите заголовком, который указывает, что вы используете версию PHP, возможно, над определенной версией?

Должно ли это быть плавное изменение или у этого есть потенциал для проблем?

4 ответов


это правильно.

задание expose_php = Off просто предотвращает отправку веб-сервером X-Powered-By заголовок.

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

С точки зрения взаимодействия с сторонними сервисами, они не надо заботиться о том, какую версию PHP вы используете. Они должны иметь возможность обслуживать контент в платформенно-агностических форматах, таких как JSON, XML и т. д., Чтобы сервисы могли использоваться любой платформой, а не только PHP.

в anycase для них полагаться на версию PHP "потребителя" бесполезно, так как заголовок можно легко отключить и, возможно, даже манипулировать администратором сервера.

таким образом, это не должно быть проблемой выключения.


не должно быть никаких негативных побочных эффектов при отключении expose_php.

все, что он делает, это удалить X-Powered-By header и stop GET params от возврата PHP-кредитов и изображений.

любое стороннее приложение, которое использует на заголовке изворотливый. При необходимости вы всегда можете подделать заголовок.


нет абсолютно никакого вреда в том, чтобы включить или выключить эту опцию.

выключение его не добавит никакой безопасности на ваш сайт. Эти скриптовые детские инструменты настолько тупы, что они никогда не потрудятся отличить одну платформу от другой.

не говоря уже о том, что если ваш сайт основан на фреймворке / CMS, бесполезно скрывать присутствие PHP.


никакой угрозы безопасности нет, но разоблачение устаревшей версии PHP может быть приглашением для хакеров попробовать и использовать хорошо документированные "дыры" в прошлых версиях.

Что касается сторонних сервисов, они независимы от платформы и не должны заботиться о том, какую версию PHP мы используем. При необходимости мы можем установить просто пустой заголовок или как ниже.

header('X-Powered-By: Venu');