غالبا برای نفوذ و هک سیستم های مدیریت محتوای نوشته شده با زبان php از توابعی استفاده می شود که برای جلوگیری از بروز این مشکلات می بایست آنها در سرور ببندیم. البته باید توجه داشت سیستم های مدیریت محتوا برای عملکرد صحیح به یکسری توابع نیاز دارند که با بررسی های تخصصی می توان به یک لیست جامع دست یافت. این توابع نباید در لیست disable_functions قرار بگیرند و تنها می بایست توابعی را در این لیست قرار داد که به واسطه آنها امکان نفوذ به سایت ها فراهم می شود. در این مطلب نحوه بستن توابع خطرناک PHP در دایرکت ادمین را به شما آموزش خواهیم داد. لطفا در ادامه با ما همراه باشید.
نحوه دسترسی به فایل کانفیگ PHP در SSH
برای مشاهده محتویات فایل کانفیگ php که در فایل php.ini قرار دارد می بایست بصورت زیر اقدام نمایید:
- ورود به SSH – آموزش ورود به SSH
- وارد کردن دستور php -i | grep php.ini به منظور پیدا کردن مسیر فایل php.ini
اگر قصد ویرایش این فایل را داشته باشید می توانید با دستور زیر اقدام نمایید:
nano /usr/local/php74/lib/php.ini
ممکن است مسیر فایل php.ini سرور شما با مسیر ذکر شده فوق برابر نباشد و شما می بایست مسیر بدست آمده برای سرور خودتان را با مقدار nano /usr/local/php74/lib/php.ini جایگزین کنید. چنانچه دستور فوق عمل نکرد احتمالا نرم افزار ویرایش فایل nano بر روی سرور شما نصب نشده است که برای اینکار می توانید از دستور زیر استفاده نمایید.
yum install nano
چنانچه در مراحل نصب از شما سوالی پرسیده شد با y به آن پاسخ دهید.
ویرایش فایل php.ini و مشاهده لیست disable_functions
همانطور که گفته شد با دستور nano /usr/local/php74/lib/php.ini می توانید محتویات فایل php.ini را مشاهده نمایید. توجه داشته باشید که برای بستن توابع خطرناکه php می بایست لیست توابع را در مقابل عبارت disable_functions در فایل php.ini قرار دهیم. برای پیدا کردن این خط کافیست کلید ترکیبی ctrl+w را فشار داده و عبارت disable_functions را وارد و کلید Enter را فشار دهید. با انجام اینکار با نتیجه ای مشابه تصویر زیر مواجه خواهید شد.
اگر لیست اختصاصی برای توابع خطرناک در اختیار دارید می توانید آنها را با مقادیر پیشفرض جایگزین کنید اما اگر تخصصی در اینکار ندارید پیشنهاد می کنیم هیچگونه دستکاری انجام نداده و با کلید ترکیبی ctrl+x از فایل خارج شوید.
روش پیشنهادی برای بستن توابع خطرناک PHP در دایرکت ادمین
اگر از کنترل پنل دایرکت ادمین استفاده می کنید کافیست دستورات زیرا به ترتیب وارد نمایید تا تنظیمات امنیتی لازم بر روی php فعال در سرور شما اعمال گردد.
cd /usr/local/directadmin/custombuild ./build update ./build secure_php
هر کدام از خط های فوق را بصورت مجزا وارد نمایید. با دستور اول به مسیر کانفیگ هدایت می شوید، در دستور دوم فایل کافیگ بروز از منابع دایرکت ادمین بر روی سرور ذخیره می شود و در دستور سوم، عملیات امن سازی php اجرا می شود.
توجه کنید اگر شما به تازگی دایرکت ادمین را نصب کرده اید این توابع بصورت خودکار بر روی فایل php.ini برای disable_functions تنظیم شده است و با وارد کردن دستور آخر پیغام PHP has been secured را مشاهده خواهید کرد که به معنی این است که اینکار قبلا صورت گرفته است. اما اگر مدتی از نصب دایرکت ادمین شما گذشته و نسخه جدیدتری از php ارائه شده باشد با وارد کردن دستور آخر، مراحل کار انجام می شود.
نوشته آموزش بستن توابع خطرناک PHP در دایرکت ادمین اولین بار در پایگاه دانش میزبانفا پدیدار شد.