суббота, 13 июля 2013 г.

Опасные функции PHP

Рекомендуется отключить следующие PHP функции: 

exec, system, passthru, readfile, shell_exec, escapeshellarg, escapeshellcmd, proc_close, proc_open, ini_alter, dl, popen, parse_ini_file, show_source, curl_exec.

так как именно они чаще всего применяются во вредоносных скриптах.

Для того чтобы это сделать, необходимо привести раздел disable_functions файла php.ini к следующему виду:
 

disable_functions = "exec,system,passthru,readfile,shell_exec,escapeshellarg,escapeshellcmd,proc_close,proc_open,ini_alter,dl,popen,parse_ini_file,show_source,curl_exec,pcntl_exec,expect_popen"

service php-fpm restart 

Если ваши сайты (Joomla) используют ini файлы, то parse_ini_file лучше не отключать.

Также рекомендуется отключить чтение и использование удаленных файлов, это реализуется путем изменения значения опции allow_url_fopen off и allow_url_include off в файле php.ini

Описание указанных функций:

exec — вызов внешней программы
ini_get — получает значение опции конфигурации
ini_get_all — получает все опции конфигурации
parse_ini_file — разбирает файл конфигурации
passthru — вызов внешней программы и вывод «сырых» результата на дисплей
php_uname — возвращает информацию об ОС, на которой php был построен
popen — открывает файловый указатель процесса
proc_open — выполняет команду и открывает файловый указатель для ввода/вывода
shell_exec — выполняет команду в оболочке/shell и возвращает полный вывод в виде строки
show_source — вывод исходного текста текущей веб страницы
system — вызов внешней программы и вывод результата на дисплей
Также стоит подумать над отключением таких функций:
diskfreespace — псевдоним функции disk_free_space
disk_free_space — получить размер доступного пространства в каталоге
disk_total_space — возвращает общий размер диска
eval — вычисляет строку, заданную в code_str, как код PHP (eval ( string code_str))
fileperms — получить информацию о правах на файл
fopen — открывает файл или URL
opendir — возвращает дескриптор каталога для последующего использования с функциями closedir(), readdir() и rewinddir()
phpinfo — выводит всю информацию об php, Ос
phpversion — выводит версию php
posix_getpwuid — возвращает информацию о пользователе по его user id
posix_getgrgid — возвращает информацию о группе по её group id
posix_uname — получает системное имя, возвращает хэш строк с информацией о системе

Комментариев нет:

Отправить комментарий