نمایش نتایج: از شماره 1 تا 10 , از مجموع 42

موضوع: جلوگیری از اجرای شل

Threaded View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #11
    عضو انجمن info_dlsong آواتار ها
    تاریخ عضویت
    Jul 2010
    محل سکونت
    مشهد
    نوشته ها
    281
    تشکر تشکر کرده 
    412
    تشکر تشکر شده 
    1,118
    تشکر شده در
    685 پست

    پیش فرض پاسخ : جلوگیری از اجرای شل


    درود
    اقدامات زیر تا حد زیادی جلوی اجرای اسکریپت های مخرب Shell را میگیرد
    مرحله اول کانفیگ PHP.ini
    بعضی از فانکشن ها بر روی سرور باید Disable شوند, این کار جلوی شل هایی که از این فانکشن ها استفاده میکنند را میگیرد
    برای این کار دستور زیر را در SSH وارد کنید
    nano /usr/local/lib/php.ini
    سپس کلید های ترکیبی CTRL+W را فشار دهید(مثل همان CTRL+F یا find در Notepad) و عبارت مقابل را در صفحه جستجو کنید disable_functions
    کد:
    disable_functions = ""
    در میان دو کوتیشن عبارت های زیر را وارد کنید
    کد:
    fpassthru,show_source,crack_check,crack_closedict,crack_getlastmessage,crack_opendict,psockopen,proc_open,proc_nice,proc_terminate,proc_get_status,proc_close,system,dl,ctrl_dir,tmp,systemroot,server_software,get_current_user,HTTP_HOST,php_uname,ini_restore,popen,pclose,exec,shell_exec,suExec,passthru,apache_child_terminate,pfsockopen,leak,posix_kill,posix_mkfifo,posix_setpgid,posix_setsid,posix_setuid,escapeshellcmd,escapeshellarg,posix_ctermid,posix_getcwd,posix_getegid,posix_geteuid,posix_getgid,posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid,posix_getppid,posix_getpwnam,posix_getpwuid,posix_getrlimit,posix_getsid,posix_getuid,posix_isatty,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setuid,posix_times,posix_ttyname,posix_uname,posix_access,posix_get_last_error,posix_getppid,posix_mknod,posix_strerror,posix_access,posix_ctermid,posix_get_last_error,posix_getcwd,posix_getegid,posix_geteuid,posix_getgid,posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,php_ini_scanned_files,posix_getpgrp,posix_getpid,posix_getppid,posix_getpwnam,posix_getpwuid,posix_getrlimit,posix_getsid,posix_getuid,posix_initgroups,posix_isatty,posix_kill,posix_mkfifo,posix_mknod,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname,symlink,allow_url_fopen
    دقت کنید تا فانکشن ها دقیقا مثل تصویر زیر وارد شوند
    Untitled.png
    ممکن است این فانکشن ها در برخی از CMS ها مشکلاتی ایجاد کند ! در صورت بروز هر گونه ممکن میتوانید فانکشن مورد نظر را از این لیست حذف کنید
    طبق توصیه CSF بستن فانکشن های زیر نیز کفایت میکند
    کد:
    show_source,system,shell_exec,passthru,exec,phpinfo,popen,proc_open,allow_url_fopen
    بعد از کپی کردن فانکشن ها کلید های ترکیبی CTRL+X را فشار دهید و فایل را ذخیره کنید

    فانکشن ها در PHP.ini اصلی سرور غیر فعال شدند ولی به صورت پیشفرض هر کاربر میتواند برای خود فایل php.ini بسازد و بدون اینکه هیچ یک از این فانکشن ها برایش غیر فعال باشد از شل خود استفاده کند
    پس ما باید کاری کنیم که تنها PHP.ini که در سرور استفاده میشود همینی باشد که ما کانفیگش کردیم

    خصوصی کردن PHP.ini
    کد:
    nano /usr/local/apache/conf/includes/pre_main_global.conf
    فایل بالا را ویرایش کرده و دستور های زیر را در آن کپی کنید
    کد:
    <IfModule mod_suphp.c>
    <Location />
    suPHP_ConfigPath /usr/local/lib/
    </Location>
    </IfModule>
    کد:
    nano /opt/suphp/etc/suphp.conf
    فایل بالا را ویرایش کنید و ; های اول خطوط زیر را بردارید
    کد:
    application/x-httpd-php=/usr/local/lib/
    application/x-httpd-php4=/usr/local/php4/lib/
    application/x-httpd-php5=/usr/local/lib/
    در نهایت هم آپاچی را با دستور زیر ری استارت کنید
    service httpd restart

    مرحله بعدی نصب آنتی ویروس ClamAV هست
    دستور ها
    کد:
    cd /etc/yum.repos.d
    wget http://www.linuxmail.info/files/dag-clamav.repo
    yum clean all
    yum -y install clamav clamav-devel clamd
    /etc/init.d/clamd restart
    /scripts/upcp --force
    دستور /scripts/upcp --force فقط مربوط به کاربرانی هست که از Cpanel استفاده میکنند
    برای اسکن فایل ها توسط ClamAV میتوانید از دستور های زیر استفاده کنید
    کد:
    cd /home
    clamscan -vr
    مرحله بعدی روشن کردن SafeMode هست
    از دیدگاه خیلی از افراد SafeMode در هاستینگ عمومی مشکلاتی ایجاد میکنه
    من منکر این حرف نیستم ! ولی معمولا از هر 50 سایتی که میزبانی میکنی یکی دو مورد مشکل دارن که قطعا! قطعا! امنیت ارزش بیشتر از یکی دوتا کاربر هست
    برای روشن کردن SafeMode فایل زیر را ویرایش کنید , عبارت safe_mode را در صفحه پیدا کنید و مقدار آن را به On تغییر دهید
    nano /usr/local/lib/php.ini

    مرحله بعدی غیر فعال کردن PHP4 هست
    یکی از دوستان سرورش رو جهت تست در اختیار بنده قرار داد با php5 هیچکار نتوانستم انجام دهم ولی در PHP4 براحتی توانستم method های امنیتی را bypass کنم
    جدیدا php4 اصلا استفاده نمیشه و فقط هاستینگ های قدیمی برای سایت های قدیمیشون از این نسخه در کنار php5 استفاده میکنند

    مرحله آخر هم خرید لایسنس و استفاده از LiteSpeed Load Balancer هست
    بطور مثال شل اجرا میشه ولی هر کاری میخواد بکنه ارور 403 و.. میگیره
    البته LiteSpeed Load Balancer در کارایی سرور هم نقش بسزایی داره و استفاده اصلیش برای اون هست

    سوالی دارید در خدمتم
    ویرایش توسط info_dlsong : May 21st, 2011 در ساعت 13:38
    Email: hamihost [at] gmail (dot) com

  2. تعداد تشکر ها ازinfo_dlsong به دلیل پست مفید


اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •