خانه WHM پیکربندی سرور چگونه امنیت لینوکس و سرویس های LEMP را افزایش دهیم؟ ( بخش چهارم )

چگونه امنیت لینوکس و سرویس های LEMP را افزایش دهیم؟ ( بخش چهارم )

48 ثانیه خوانده شده
۰
0
31
امنیت لینوکس و سرویس PHP

امنیت لینوکس ، در بخش سوم این مقاله ، ما به بررسی نحوه برقراری امنیت لینوکس از طریق ایمن کردن وب سرور Nginx و همچنین پایگاه داده MySQL پرداختیم . در ادامه این مقاله ما قصد داریم تا آخرین سرویس باقی مانده یعنی PHP را نیز بررسی کنیم و به شما راه هایی را آموزش دهیم که به وسیله آنها بتوانید امنیت سرویس پی اچ پی و به تبع آن امنیت لینوکس را تامین کنید .

امنیت لینوکس و سرویس PHP
امنیت لینوکس

برقراری امنیت لینوکس از طریق ایمن کردن سرویس PHP :

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

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

در یک هاست اشتراکی امنیت PHP بسیار مهم می باشد و همچنین این سرویس نباید آنقدر محدود شود که نتواند نیاز های کاربران را برآورده کند .

اگر شما به دنبال میزبانی وب با امنیت بالا و قابلیت های مناسب سرویس PHP می باشید ، پیشنهاد ما به شما انتخاب سرویس هاست لینوکس و هاست ویندوز چیتاهاست می باشد .

حالت های محتلف از حمله های PHP

حمله SQL Injection :

این حمله معمولا زمانی رخ میدهد که برنامه های شما دارای روزنه های نفوذ باشد . برای مثال اگر شما یک برنامه داشته باشید که نگارش کدهای PHP آن استاندارد نباشد ، زمینه را یک حمله SQL Injection ( تزریق SQL ) فراهم میکند . معمولا سیستم های مدیریت محتوای معروف ، همیشه در برابر این گونه حملات ایمن هستند زیرا به روز رسانی های لازم برای مقابله با این حملات به صورت مداوم روی آنها انجام میشود . خیلی چیز زیادی نمیتوان در مورد این نوع از حمله ها بیان کرد ولی بهترین راهی که میتوانیم از آنها جلوگیری کنیم این است دانش های لازم را به برنامه نویس ها ارائه دهیم تا کدهای آنها استاندارد شود .

حمله Cross Site Scripting ( یا XSS ) :

خیلی سخت است که بتوان در برابر این نوع از حملات و راه های نفوذ از سیستم خود محافظت کنیم . درست مانند مورد بالا ، برنامه نویس های سیستم های مدیریت محتوای پر کاربرد مانند وردپرس ، جوملا ، دروپال و غیره ، باید بسیار محتاط باشند و مطمئن شوند که کدهای آنها به خوبی نوشته شده است و همچنین به صورت مداوم باید این کدها را به روز رسانی کنند . بسیاری از اقدامات امنیتی لازم برای مقابله با این نوع حملات ، از طریق فایل اصلی تنظیمات PHP انجام میشود که در ادامه به آن ها خواهیم پرداخت .

حمله Cross-site request forgeries ( یا CSRF ) :

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

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

تنظیمات بهینه و صحیح فایل تنظیمات PHP به نام PHP.INI

متوقف کردن فرآیند های PHP در صورت پیدا نشدن فایل مربوطه :

شما باید مطمئن شوید که در داخل فایل تنظیمات PHP ، مقدار عبارت cgi.fix_pathinfo=0 ، مقدار ۰ تعیین شده باشد . این پارامتر باعث میشود که مترجم PHP ، فقط مسیر داده شده را بررسی کند و اگر فایل مورد نظر یافت نشد ، فرآیند پردازش را متوقف کند و از مسیرهای دیگر استفاده نکند . آیا بخش ” هدایت درخواست های کنترل نشده PHP ” که در مقاله قبلی به آن پرداختیم را به خاطر دارید ؟ این مرحله در واقع تکمیل کننده امنیت وب سرور Nginx در مقاله قبلی می باشد .

غیر فعال کردن عملگرهای خطرناک سرویس PHP :

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

قابل انعطاف بودن PHP باعث میشود تا برخی از عملگرهای آن به صورت پیش فرض فعال باشند که بسته به هدفی که شخص استفاده کننده دارد ، میتواند مفید یا مضر باشد . برای مثال اگر تنظیمات PHP را به صورت پیشرفته دنبال کنید ، میدانید که PHP اجازه اجرا شدن فایل ها به صورت راه دور ( remote ) را نیز به کاربران میدهد . در این حالت فایل های PHP که حتی در سرور اصلی موجود نیستند هم میتوانند روی آن اجرا شوند . اگر چه این قابلیت ممکن است جالب باشد ولی باعث میشود تا روزنه هایی برای حمله هکرها روی سرور ایجاد شود .

در این حالت یک هکر میتواند هر فایلی را روی سرور remote اجرا کند . این قابلیت همچنین به آنها اجازه خواهد داد که فایل های مخرب را بارگذاری کنند . در شرایط عادی قابلیت اجرای فایل به صورت راه دور باید در فایل تنظیمات PHP ، غیر فعال باشد .

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

disable_functions =exec,eval,phpinfo,passthru,shell_exec,system,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source

این مقاله ادامه خواهد داشت . منتظر ادامه این مقاله باشید …

بارگذاری نوشته های مرتبط بیشتر
مطالب بیشتر از این نویسنده علی دربان
بارگذاری بیشتر در پیکربندی سرور

پاسخ دهید

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

بررسی کنید

چگونه از سرویس Git به موثرترین شکل ممکن استفاده کنیم ؟ ( بخش دوم )

در بخش اول این مقاله ، ما دانستیم که سرویس Git چه فوایدی برای توسعه دهندگان وب دارد و به ش…