باز بودن توابع خطرناک php باعث می شود، هکر ها بتوانند به بعضی از سورس های سرور دسترسی داشته باشند و برخی از اطلاعات مهم سرور را بیرون بکشند.
متاسفانه در اکثر سرور ها توابع خطر ناک php بسته نشده است و همین مورد باعث ایجاد مشکلات امنیتی بسیار در سایت و سرور می شود.
اکثر شرکت های هاستینگ بر این باور هستند که با نصب فایروال و تنظیمات امنیتی می توانند دسترسی به این فایل ها را محدود نمایند و صاحبان سایت ها و طراحان نیز براین باور هستند که با نصب افزونه های امنیتی می توانند این مشکل را حل نمایند ولی متاسفانه این مشکل را در وب سایت های که دارای المنتور 3 به پایین بودند در گذشته مشاهده شد که با وجود افزونه های امنیتی دوچار فایل های الوده و ویروس هم شدند.
جهت محدود کردن این مشکلات یکی از روش ها غیر فعال کردن توابع خطرناک php از طریق فایل php.ini از طریق وب سایت و یا سرور می باشد.
در سرور مجازی خود می توانید این مورد را به صورت کلی برای تمام هاست های خود از طریق تغییر تنظیمات فایل php.ini به صورت زیر انجام دهید.
جهت پیدا کردن آدرس این فایل از دستور زیر استفاده کنید:
php -i | grep php.ini
به عنوان مثال اگر این فایل در آدرس /etc/php.ini باشد:
باید این فایل را ادیت کنیم. از دستور زیر برای ادیت استفاده کنید:
Nano /etc/php.ini
به دنبال disable_functions = بگردید برای اینکار میتونید در ویرایشگر Ctrl +W رو بزنید و عبارتی disable_functions رو وارد کنید تا ویرایشگر شما رو به همین خط کد هدایت کند.
حالا توابع این خط رو به صورت زیر جایگزین کنید :
disable_functions =apache_child_terminate, apache_setenv, define_syslog_variables, escapeshellarg, escapeshellcmd, eval, exec, fp, fput, ftp_connect, ftp_exec, ftp_get, ftp_login, ftp_nb_fput, ftp_put, ftp_raw, ftp_rawlist, highlight_file, ini_alter, ini_get_all, ini_restore, inject_code, mysql_pconnect, openlog, passthru, php_uname, phpAds_remoteInfo, phpAds_XmlRpc, phpAds_xmlrpcDecode, phpAds_xmlrpcEncode, popen, posix_getpwuid, posix_kill, posix_mkfifo, posix_setpgid, posix_setsid, posix_setuid, posix_setuid, posix_uname, proc_close, proc_get_status, proc_nice, proc_open, proc_terminate, shell_exec, syslog, system, xmlrpc_entity_decode,readfile
سپس با کلید ترکیبی Ctrl + X از فایل خارج و فایل رو ذخیر کنید .
وب سرور را ریستارت کنید.