Как защитить PHP, встроенный в вашу веб-страницу, с настройками конфигурации

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


Это создает веб-страницу с содержимым, которое изменено на сервере до того, как оно будет передано запрашивающей стороне..

Эти возможности PHP также делают его подверженным риску безопасности из-за того, что он позволяет активно собирать данные, получать данные и обрабатывать данные из любого места в World Wide Web или в Интернете. Хакеры могут попытаться опубликовать вредоносные данные и сценарии и обмануть ваш сервер, чтобы собирать и запускать вредоносные сценарии как свои собственные.

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

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

В файле Php.ini указаны параметры конфигурации, которые PHP использует при запуске на вашем веб-сайте. В файле Php.ini указано, что разрешено делать PHP-скриптам и что им запрещено делать.

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

Шаг 1. Настройте следующие рекомендуемые настройки Php.ini:

1. allow_url_fopen = выключен allow_url_include = выключен

consoleCopy

allow_url_fopen = Off

Этот параметр отключает изолированные URL-адреса. Это может сделать файлы, которые обрабатывают функции, уязвимыми для внедрения кода. Этот параметр очень важен из-за того, что он запрещает использование URL-адресов в выражениях типа include (). Настройка"allow_url_fopen to "от," подразумевает, что только файлы на вашем сайте могут быть интегрированы.

Это означает, что вы не можете интегрировать любой файл с другого сервера. Это также означает, что ни один злоумышленник не сможет сделать это с помощью атак с использованием удаленного включения файлов (RFI). (При атаке RFI san imposter интегрирует URL-адрес в HTTP-запрос с тем, чтобы он обманул ваш сценарий, заставляя его думать, что он выполняется вашим."http://website.com/page.php"), например, не будет выполнен. Включите файл с вашего собственного сайта, указав его путь и имя файла.

2. register_globals = Off Отключить настройку Register_globals

consoleCopy

register_globals = Off

Например, для URL http://site.com/index.php?variable=***value*** переменная перемещается в ваш сценарий со значением, установленным в ценность когда register_globals "На." Когда register_globals "от," тем не менее, переменные обычно не переносятся в список переменных списка переменных вашего скрипта. Это усложняет хакерам внедрение кода в ваш скрипт.

3. open_basedir ="C: Inetpub"

Этот параметр скрипта используется для ограничения возможностей чтения и записи в файловой системе PHP-системами..

4. safe_mode = выкл safe_mode_gid = выкл

Этот параметр используется для отключения безопасного режима.

consoleCopy

safe_mode = Off

Этот параметр не находится в "рекомендуется Php.ini" файл. Это ограничивает разрешения, предоставляемые сценариям PHP для запуска. Многие сторонние скрипты не работают должным образом, когда safe_mode включен и установлен в "На." Обратите внимание, что начиная с PHP 6 safe_mode не существует.

5. max_execution_time = 30 max_input_time = 60

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

6. memory_limit = 16M upload_max_filesize = 2M post_max_size = 8M max_input_nesting_levels = 64

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

7. display_errors = Off log_errors = On error_log ="C: pathofyourchoice"

Этот параметр помогает настроить сообщения об ошибках и ведение журнала.

consoleCopy

Display_errors = Off
display_startup_errors = Off
log_errors = On
error_reporting = E_ALL

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

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

8. fastcgi.logging = 0

Модуль FastCGI Internet Information Services (IIS) не будет возвращать запрос, когда PHP передает любую информацию на stderr с использованием протокола FastCGI. Отключив ведение журнала FastCGI, вы остановите PHP от передачи сообщения об ошибке на stderr и создания 500 кодов ответов для пользователя..

9. expose_php = Off

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

10. $ _SERVER [‘DOCUMENT_ROOT’]

consoleCopy

include ($ _ SERVER [‘DOCUMENT_ROOT’]. ‘/page.php’);

$ _SERVER [‘DOCUMENT_ROOT’] – это суперглобальная переменная, настроенная в качестве корневой папки вашего сайта. (Обратите внимание, что нет трейлинг "/"; вам нужно предложить ведущий "/" в ‘/page.php’.)

Если вы намереваетесь включить статический контент с другого вашего веб-сайта, например, интегрировать его (‘http://myothersite.com/includes/footer.php’), получите дубликат контента на текущем сайте, а затем интегрируйте его локально.

Если вам действительно нужно интегрировать контент с изолированного сайта, вы всегда должны использовать URL-адреса и установить allow_url_fopen = On. Вы, однако, реализуете другой вариант безопасности, чтобы обезопасить себя от атак RFI.

11. error_log = /home/yourUserID/public_html/phperr.txt

 consoleCopy

error_log = /home/yourUserID/public_html/phperr.txt

Этот параметр определяет путь и файл, в которые входят ваши ошибки и предупреждения PHP. Вы должны использовать текстовый файл для регистрации ошибок. Тем не менее, вы должны знать, что текстовый файл будет накапливать ошибки до тех пор, пока вы не очистите его. Сохраните файл журнала ошибок в месте на вашем веб-сайте, к которому нет доступа для широкой публики..

12. expose_php = Off

consoleCopy

expose_php = Off

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

ШАГ 2. Просмотр настроек PHP

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

1. Создайте текстовый файл с .PHP расширение:

XMLCopy
<?PHP phpinfo (); ?>

2. Загрузите его на свой сервер и, если возможно, в папку, защищенную паролем..

3. Нажмите, чтобы открыть веб-браузер, и введите адрес в адресную строку:

consoleCopy

http://yoursite.com/whatever/filename.php

4. Введите свой имя пользователя а также пароль получить доступ в защищенную папку и проверить страницу результатов.

5. Нажмите Сохранить сохранить полученную страницу на вашем локальном компьютере. Вы также можете распечатать его для дальнейшего использования.

6. Нажмите удалять удалить .PHP файл из вашего сервера.

Проверьте эти лучшие 3 хостинга Windows:

Hostwinds

Стартовая цена:
$ 3,29


надежность
9,3


ценообразование
9,2


Дружественный интерфейс
9,2


Служба поддержки
9,3


особенности
9,2

Читать отзывы

Посетить Hostwinds

Time4VPS

Стартовая цена:
$ 3,27


надежность
8,4


ценообразование
8,5


Дружественный интерфейс
8,3


Служба поддержки
8,1


особенности
8,1

Читать отзывы

Посетите Time4VPS

межсерверной

Стартовая цена:
$ 5,00


надежность
9,1


ценообразование
9,3


Дружественный интерфейс
9,1


Служба поддержки
9,0


особенности
9,1

Читать отзывы

Посетите InterServer

Связанные статьи с практическими рекомендациями

  • Как защитить PHP, интегрированный в вашу веб-страницу, с настройками конфигурации
    промежуточный
  • Как включить индивидуальную настройку PHP и указать расположение Php.Ini
    промежуточный
Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map