با سلام دوستان من تاپیک های زیادی رو مطالعه کردم و خودمم سرورمو امنیت دادم اما رو سی پنلم شل اجرا نمیشه اما
روی سرور دایرکت ادمینم شل اجرا میشه به نظرتون چه توابعی رو ببندم که شل اجرا نشه ؟
نمایش نسخه قابل چاپ
با سلام دوستان من تاپیک های زیادی رو مطالعه کردم و خودمم سرورمو امنیت دادم اما رو سی پنلم شل اجرا نمیشه اما
روی سرور دایرکت ادمینم شل اجرا میشه به نظرتون چه توابعی رو ببندم که شل اجرا نشه ؟
سلام
نخست قابلیت PHP.ini Override را غیر فعال کنید.
سپس فانکشن های متداول مثل زیر را ببندید:
کد: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
درود
دوست بزرگوار تنها بستن توابع کافی نیست .
الته شما نگرانی بابت شلن داشته باشید در اکثر هاستینگ های معذوف دنیا هم شل براحتی اجرا میشود اما چیزی که روی اون تمرکز دارند این هستش که وقتی شل اجرا میشود هکر نتواند دسترسی به خارج از public_html بگیرد و سایت های دیگر را مختل کند و امنیت صحیح هم همین هستش نه اینکه صدها انتی شل و.. که live کار میکنند و هر کدام هم پردازنده را مشغول میکنند روی سرور نصب شود که یک شل اجرا نشود یا حذف شود. مسلما اگر امنیت اسکریپ کافی باشد و permission فولدها و فایلها صحیح نگرانی بابت آپلود شل نباید داشته باشید
در php.ini اخر فایل این مقادیر را قرار دهید :
اما باید suhosin نصب شده باشد .کد:suhosin.executor.func.blacklist = system,passthru,exec,popen,proc_close,proc_get_status,proc_nice,proc_terminate,shell_exec,highlight_file,escapeshellcmd,debugger_off,debugger_on,leak,listen,define_syslog_variables,ftp_exec,posix_uname,posix_getpwuid,disk_free_space,disk_total_space,get_cfg_var,show_source,dl,symlink,php.ini,listen,syslog,php_ini_scanned_files,inurl,apache_setenv,closelog,zip_open,zip_read,rar_open,bzopen,bzread,bzwrite,shellcode,show_source,apache_get_modules,apache_get_version,apache_note,openlog,crack_check,crack_closedict,pcntl_exec
اما برای خیلی از اسکریپت ها امکان اینکه مشکل به وجود بیارد میباشد و
باسلام
سوالی برای بنده پیش امد
ایا این توابع را با دقت ارسال کردید یا خیر؟
برای مثال توابع مربوط به ftp و ...
تاجایی که بنده درمورد دایرکت ادمین اطلاع دارم ، برای مورادی مثل انتقال بکاپ به سرور ریموت از php استفاده میکند
این ها مشکل ساز نمیشوند؟
تابع system چه طور؟
باتشکر
- - - Updated - - -
لطفا شما هم به این سوال ها پاسخ دهید
فکر کنم بین ان ها مواردی درمورد zip و ... هم بود
مشکلی پیش نمیاید؟
باتشکر
این موارد کلی عرض شد
اما بنده در حال حاضر با بررسی توابع مورد استفاده اسکریپت های رایج و حذف اونها از این مورد استفاده میکنم :
suhosin.executor.func.blacklist = system,passthru,exec,popen,proc_close,proc_get_sta tus,proc_nice,proc_terminate,shell_exec,highlight_ file,escapeshellcmd,debugger_off,debugger_on,leak, listen,define_syslog_variables,ftp_exec,posix_unam e,posix_getpwuid,disk_free_space,disk_total_space, show_source,dl,symlink,php.ini,listen,syslog,php_i ni_scanned_files,inurl,openlog,crack_check,crack_c losedict,pcntl_exec
درود دوست عزیزم
البته دایرکت ادمین از ncftp استفاده میکند نه خود ftp command اما در کل فکرن میکنم نیازی باشه دسترسی اجرای تابع ftp را ببندید همان توابع خطرناک سیستمی معمولا پیشنهاد میشود وگرنه صدها function - variable هستند که در شل ها استفاده میشوند که میشه تک تک مسدود کرد