جلوگیری از حملات سیملینک

جلوگیری از حملات سیملینکReviewed by securityblog on Jun 23Rating: 4.0جلوگیری از حملات سیملینکجلوگیری از حملات سیملینک در کنترل پنل های سی پنل و دایرکت ادمین

جلوگیری از حملات سیملینک از اساسی ترین موارد مدیریت و امنیت سرور است. با جلوگیری از حملات سیملینک امنیت هر کاربری در سرور مشمول خود آن اکانت می شود و ضعف آن اثر منفی بر روی اکانت های دیگر نخواهد داشت. در این مقاله مبحث جلوگیری از حملات سیملینک را با توجه به میزان استفاده از آن با کنترل پنل های سی پنل و دایرکت ادمین مطرح خواهیم کرد. با ما در ادامه با مقاله جلوگیری از حملات سیملینک همراه باشید.

سیملینک چیست

سیملینک امکانی است که توسط آن می توان ارجاعی از یک فایل یا دایرکتوری را در مسیر دیگری ایجاد کرد. برای مثال فایل test.php در مسیر home/test قرار دارد. اگر بخواهیم فایل test.php در مسیر دیگری برای مثال home/sample نیز قابل مشاهده ، اجرا و حتی ویرایش باشد می توان از symlink استفاده کرد. این امکان در بسیاری از سیستم عامل ها پشتیبانی می شود اما نام و عملکرد آنها با هم متفاوت است.

جلوگیری از حملات سیملینک

 

symlink = symbolic link = soft link

جلوگیری از سیملینک در سی پنل

جلوگیری از سیملینک در سی پنل طی چند مرحله و روش کاری قابل انجام است. symlink یکی از خطرناکترین مواردی است که می بایست روی سرور محدود شود. سیملینک یکی از ابزارهای هسته سیستم عامل لینوکس است. در صورت عدم رفع مشکل و محدودیت symlink در سرور لینوکس ، در صورتی که اکانتی مورد نفوذ قرار گیرد توسط symlink می توان به اکانت های دیگر نیز نفوذ کرد. سیستم عامل cloudlinux تا حد بسیار بالایی توانسته این موضوع را برطرف کند. این سیستم عامل توسط ابزاری به نام cagefs هر اکانت را بصورت قفس در حیطه خود زندانی می کند.

برای جلوگیری از symlink در cpanel بصورت زیر عمل کنید.

وارد مسیر Home » Service Configuration » Apache Configuration » Global Configuration در WHM شوید.
در صفحه مورد نظر بصورت زیر عمل کنید.
— مقدار Server Tokens را از منوی کشویی روی ProductOnly تنظیم کنید.
— در بخش Directory “/” Options تیک FollowSymLinks و ExecCGI را بردارید. توجه کنید تیک SymLinksIfOwnerMatch فعال باشد.
— موارد را ذخیره کنید.

وارد مسیر Home » Service Configuration » PHP Configuration Editor شده و مورد Advanced Mode را انتخاب کنید.
— مورد disable_functions را پیدا کرده و در مقدار آن علاوه بر مقادیر موجود symlink و ln را نیز وارد کنید.
— موارد را ذخیره کنید.

وارد مسیر Home » Security Center » Apache mod_userdir Tweak شده و تیک Enable mod_userdir Protection را فعال و بر روی Save کلیک کنید.

وارد مسیر Home » Security Center » PHP open_basedir Tweak شده و تیک Enable php open_basedir Protection را فعال و بر روی Save کلیک کنید.

وارد مسیر Home » Security Center » Shell Fork Bomb Protection شده و بر روی گزینه Enable Protection کلیک کنید.

از هندلر suphp در وب سرور apache برای php استفاده کنید.

موارد فوق تا حد زیادی عمل symlink را محدود می کند اما بصورت قطعی آنرا غیر فعال نمی کند. توجه داشته باشید که موارد دیگری نیز برای محدود کردن symlink وجود دارد که بعضا موجب اختلال در عملکرد سرویس می شوند که از بیان آنها در این آموزش خودداری شده است.

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

جلوگیری از سیملینک در دایرکت ادمین با راهکارهای مختلفی انجام می شود. symlink یکی از خطرناکترین مواردی است که می بایست روی سرور محدود شود. سیملینک یکی از ابزارهای هسته سیستم عامل لینوکس است. در صورت عدم رفع مشکل و محدودیت symlink در سرور لینوکس ، در صورتی که اکانتی مورد نفوذ قرار گیرد توسط symlink می توان به اکانت های دیگر نیز نفوذ کرد. سیستم عامل cloudlinux تا حد بسیار بالایی توانسته این موضوع را برطرف کند. این سیستم عامل توسط ابزاری به نام cagefs هر اکانت را بصورت قفس در حیطه خود زندانی می کند.

برای جلوگیری از symlink در directadmin بصورت زیر عمل کنید.

دستورات زیر را در ssh وارد کنید. این دستور تنظیمات امنیتی سیملینک را لحاظ می کند.

cd /usr/local/directadmin/custombuild
./build update
./build set harden-symlinks-patch yes
./build set secure_htaccess no
./build apache
./build rewrite_confs

در ادامه دستور زیر را برای یافتن مسیر php.ini در ssh وارد کنید.

/usr/local/bin/php -i | grep ‘Loaded Configuration File’

با کمک دستور nano وارد ویرایش فایل مورد نظر شده و disable_functions را پیدا کنید. علاوه بر مقادیر موجود symlink , ln را نیز وارد کنید و ذخیره کنید.

حاصل فهرست جمع = 0

  1. علیرضا گفت:

    بسیار عالی بود، ممنون و متشکرم، سایت خوبی دارید

  2. رضا گفت:

    سلام
    سیملینک برای سایت های asp.net هم کارایی داره؟

  3. وهاب گفت:

    سلام.
    ممنون.

    دستور ./build set harden-symlinks-patch yes که میزنیم پیغام زیر میدهد
    yes is not a valid setting for harden-symlinks-patch option.

    آیا راه حلی دارد؟

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *