اطلاعیه

بستن
هنوز اعلام نشده است.

جلوگیری از اجرا شدن شل در سرور لینوکس و هاست

بستن
X
  • فیلتر کردن
  • زمان
  • نمایش
پاک کردن همه
پست های جدید

  • جلوگیری از اجرا شدن شل در سرور لینوکس و هاست

    شل (shell) یک اصطلاح بسیار کلی برای اسکریپت ها و کد ها مخربی است که در صورت آپلود شدن داخل هاست و سرور ، به هکر دسترسی های غیر مجاز تا مرز دسترسی root access خواهند داد . جلوگیری از اجرا شدن شل در سرور لینوکس و سرویس های هاست و میزبانی وب کاملا نسبی است و هیچ راه ۱۰۰٪ و قابل اطمینانی برای جلوگیری از اجرا شدن شل در سرور لینوکس وجود ندارد . در واقع فقط در صورتی میتوانید با اطمینان اعلام کنید که موفق به جلوگیری از اجرا شدن شل در سرور لینوکس شده اید کهSSH ، CRON , PHP ، Perl ، Python ، CGI و … را به طور کامل غیر فعال کرده باشید که در این صورت نه تنها شل ، بلکه هیچ وب سرور و سایتی هم روی سرور لینوکس شما کار نخواهد کرد . راه هایی برای محدود کردن هکر ها و فعالیت های مخرب روی سرور های اشتراکی وجود دارد که در ادامه به معرفی این راهکار ها میپردازیم .

    برای دیدن سایز بزرگ روی عکس کلیک کنید

نام: 672x355xsecurity-banner-672x355.jpg.pagespeed.ic.v7PnPW5KO3.jpg
مشاهده: 1
حجم: 45.6 کیلو بایت

    جلوگیری از اجرا شدن شل در سرور لینوکس و هاست :
    با توجه به اینکه ساختار اغلب این شل ها بر اساس کد های php است ، ابتدا به راه های امن سازی php می پردازیم .

    غیر فعال کردن توابع و function های خطرناک php :
    برای این غیر فعال کردن توابع و فانکشن های خطرناک و یا بدون استفاده زبان PHP در سرور لینوکس ، باید لیست توابع را به فرمت زیر در فایل php.ini اضافه کنیم :

    کد PHP:
    disable_functions function1function2function3 
    به عنوان یک مثال ، ما در سرور های چت روم بر پایه ET-CHAT توابع را به شکل زیر محدود میکنیم :

    کد PHP:
    disable_functions detcwddlescapeshellargescapeshellcmdexecfpassthruimap_listini_alterini_restorelinkmysql_list_dbsopenlogpassthrupcntl_execpcntl_forkpcntl_signalpcntl_waitpidpcntl_wexitstatuspcntl_wifexitedpcntl_wifsignaledpcntl_wifstoppedpcntl_wstopsigpcntl_wtermsigpfsockopenphpinfopopenproc_closeproc_get_statusproc_niceproc_openproc_terminatereadlinkshell_execsnmpgetsocket_acceptsocket_bindsocket_createsocket_create_listensocket_create_pairsocket_listensocket_selectsocket_strerrorstream_selectsymlinksyslogsystemposix_getpwuidposix_getgrgidini_setshow_sourceallow_url_fopenxmlrpc_entity_decodeposix_unameposix_setuidposix_setsidposix_setpgidposix_mkfifoposix_killphpAds_xmlrpcEncodephpAds_xmlrpcDecodephpAds_XmlRpcphpAds_remoteInfophp_unamemysql_pconnectinject_codeini_get_allhighlight_fileftp_rawlistftp_rawftp_putftp_nb_fputftp_loginftp_getftp_execftp_connectfputfp, eval, define_syslog_variablesapache_setenvapache_child_terminate 
    توابع محدود شده باید بر اساس نوع کاربری سرور ، نوع اسکریپت ها ، ماژول ها و کامپوننت های استفاده شده در سرور انتخاب شوند . در یک سرور هاستینگ بر پایه سی پنل ، در صورت بستن تمام توابع فوق ، قطعا با مشکلاتی مانند اجرا نشدن بعضی از کد های PHP و سیستم های مدیریت محتوا مواجه خواهید شد . بعد از ذخیره کردن فایل php.ini اقدام به ریستارت کردن وب سرور آپاچی (یا php-fpm در صورت استفاده) میکنیم .

    کد PHP:
    service httpd restart 
    سایر موارد مورد نیاز برای افزایش امنیت php :
    فایل php.ini سرور را ویرایش کرده و مقادیر مورد نظر را به شکل زیر مقدار دهی کنید :

    کد PHP:
    enable_dl Off
    allow_url_fopen
    =Off
    allow_url_include
    =Off
    safe_mode 
    On 
    بعد از ذخیره کردن فایل php.ini اقدام به ریستارت کردن وب سرور آپاچی (یا php-fpm در صورت استفاده) میکنیم .

    کد PHP:
    service httpd restart 
    توجه داشته باشید که هر ۴ مورد فوق و به خصوص safe_mode در مورد بعضی از وب سایت ها و اسکریپت ها محدودیت هایی ایجاد خواهد کرد که معمولا باید بین امنیت بیشتر و سازگاری بیشتر یکی را انتخاب کنید .

    نصب پچ امنیتی php-suhosin :
    پچ امنیتی suhosin یک سیستم محافظ هوشمند PHP است که با الگوریتم خود php را نسبت به بسیاری از بد افزار های شناخته شده و شناخته نشده امن خواهد ساخت . suhosin بر اساس رفتار و چگونگی اجرای کد ، مخرب یا مفید بودن آن را تشخیص خواهد داد . این دقیقا همان چیزی است که برای محدود کردن شل های اختصاصی و ناشناخته به آن نیاز داریم .

    برای دیدن سایز بزرگ روی عکس کلیک کنید

نام: suhosin.png
مشاهده: 1
حجم: 21.5 کیلو بایت

    نصب ModSecurity v2.7 یا بالاتر :
    ماژول ModSecurity یک فایروال وب بیس وب سرور است که در صورت استفاده از رول های صحیح قابلیت های بسیار زیادی از جمله اسکن لحظه ای و realtime فایل های در حال آپلود به سرور توسط pure-ftpd را دارا است . این ماژول قدرتمند در حال حاضر از وب سرور های آپاچی ، انجین اکس و همچنین IIS پشتیبانی میکند ولی بیشترین سازگاری آن با وبسرور Apache است . با کمک این ماژول امنیتی وب سرور ، جلوی اجرا شدن بسیاری از شل های معروف را خواهید گرفت .

    برای دیدن سایز بزرگ روی عکس کلیک کنید

نام: modsecurity2.jpg
مشاهده: 1
حجم: 15.3 کیلو بایت

    نصب فایروال CSF :
    نصب فایروال CSF از این جهت توصیه میشود که با رعایت موارد امنیتی که توسط CSF به شما پیشنهاد خواهد شد ، اجرای بسیاری از شل ها و بد افزار ها مختل خواهد شد .

    استفاده از اجرا کننده suPHP :
    در محیط های اشتراکی (در صورت استفاده از وب سرور آپاچی) حتما از php-handler امن و قدرتمند suphp استفاده کنید . با کمک این اجرا کننده php در صورت هک شدن یکی از یوزر های هاست ، دسترسی گرفتن از محیط خارج از هاست هک شده برای هکر بسیار دشوار و در مواردی غیر ممکن خواهد شد .

    برای دیدن سایز بزرگ روی عکس کلیک کنید

نام: suphp.jpg
مشاهده: 1
حجم: 23.1 کیلو بایت

    امنیت اسکریپت و سیستم مدیریت محتوا :
    امن کردن سرور و وب سرور وظیفه مدیر سرور و هاستینگ است ، ولی بخشی از امنیت نیز مربوط به مدیر سایت می باشد . بار ها پیش آمده که سایتی به دلیل وجود باگ امنیتی ، حتی با توجه به امنیت بالای سرور هک شده است . حتما همیشه از آخرین نسخه های پایدار سیستم های مدیریت محتوا استفاده کنید . پلاگین ها ، ماژول ها و کامپوننت ها را همیشه به روز نگهدارید و از اسکریپت های ناشناخته و قدیمی هرگز استفاده نکنید . اگر سایت شما یک آپلود سنتر است ، حتما در پوشه آپلود عکس ها ، محدودیت هایی برای اجرا نشدن هر نوع فایل اجرایی اعمال کنید . برای مثال با وارد کردن کد زیر در .htaccess پوشه مورد نظر ، وب سرور هیچ فایلی به جز فایل های مربوط به تصویر و عکس را اجرا نخواهد کرد :

    کد PHP:
    <FilesMatch “\.(gif|jpg|png)$”deny from all </FilesMatch
    نصب و کانفیگ آنتی ویروس CLAMAV :
    همیشه آخرین نسخه آنتی ویروس ClamAV را روی لینوکس خود نصب کرده و آن را به روز نگه دارید . اسکن های روزانه و هفتگی به شما امکان حذف حد اقل بعضی از ویروس ها و شل های شناخته شده را خواهد داد . به هر حال اگر شل اختصاصی یا کد شده باشد ،*معمولا ClamAV قادر به شناسایی آن نخواهد بود .

    نصب آنتی شل CXS در سرور های سی پنل :
    آنتی شلر CXS یک برنامه ضد شل بسیار قوی و مفید است که فقط امکان نصب در سرور های cPanel را دارد . با خرید لایسنس آنتی شل CXS سرور خود را به قابلیت اسکن لحظه ای و realtime پراسس های در حال اجرا و همچنین در حال آپلود مجهز خواهید کرد .

    نصب و کانفیگ آنتی شل Maldet :
    آنتی شل Maldet یک برنامه آنتی ویروس و ضد شل رایگان و متن باز است که با کمک انجین ClamAV اقدام به اسکن و شناسایی شل ها و تروژان های سرور های لینوکس خواهد کرد . اگر امکان خرید CXS را ندارید یا سرور شما از پنلی به جز cPanel استفاده میکند ، استفاده از این ضد شل قوی را به شما توصیه میکنیم . با کانفیگ صحیح این آنتی شلر رایگان* ، امکاناتی مانند اسکن لحظه ای و realtime به سرور شما اضافه خواهد شد .

    موارد فوق تنها بخشی از راه های امن کردن سرور و جلوگیری از اجرا شدن شل های معروف روی هاست بود ، راه های بسیار دیگری نیز مانند محدود کردن perl و python و … وجود دارند که مسئول کانفیگ و ادمین سرور با پیاده سازی صحیح آن ، امنیت سرور را افزایش خواهد داد . در مقیاس بزرگ و کلاس Enterprise فایروال های سخت افزاری در لایه های شبکه ، پکت های ارسالی و دریافتی را باز کرده و signature آن ها را با دیتابیس خود مطابقت میدهند و در صورت مخرب بودن کد ، آن را در میانه راه و قبل از رسیدن به سرور حذف میکنند . همانطور که در ابتدای بحث اشاره کردیم ، امنیت نسبی است و هیچ راه تضمینی و قطعی برای جلوگیری از اجرا شدن شل در سرور وجود ندارد .
    نویسنده Babak Ajideh
    منبع

  • #2
    خیلی خوب و کاربردی بود

    نظر

    پردازش ...
    X
    کانال تلگرام منطقه لینوکسی ها