به صورت پیش فرض تنظیمات PHP امکان نمایش ورژن php نصب شده روی سرور را در response header سرور HTTP و در فیلد "X-Powered-By" را مهیا میکند. به دلایل امنیتی سرور (البته تهدید جدی به حساب نمیشود و نیاز به نگرانی نیست) توصیه میشود که ورژن php را غیر فعال و از چشم هکرهایی که ممکن است سایت شما را هدف قرار داده باشند و بخواهند بدانند که آیا شما روی وب سایت تان php استفاده کردید یا خیر، مخفی کنید.
همچنین توصیه میشود مطالعه کنید :
نحوه مخفی کردن ورژن وب سرور آپاچی در لینوکس به همراه اطلاعات حساس دیگر
نحوه مخفی کردن ورژن وب سرور Nginx در لینوکس
فرض میکنیم ورژن خاصی از php که روی سرور تان نصب است، حفره های امنیتی دارد و از طرف دیگر هکر ها از این موضوع با خبر شوند میتواند کار کشف نفوذ پذیری ها و کسب دسترسی به سرور شما را از طریق اسکریپت ها آسانتر سازد.
در مقاله قبلی ما به شما نحوه مخفی کردن ورژن آپاچی را شرح دادیم، و شما با نحوه غیرفعال کردن ورژن آپاچی آشنا شدید. اما اگر شما روی سرور آپاچی خود php داشته باشید شما نیاز به مخفی کردن ورژن php نیز خواهید داشت و به این دلیل است که ما این پست را نیز برای شما به نمایش خواهیم گذاشت.
در این پست ما نحوه مخفی کردن یا غیرفعال کردن نمایش ورژن php در response header سرور HTTP را شرح خواهیم داد.
این تنظیمات را میتوان در فایل کانفیگ php لود شده انجام داد. در مواقعی که شما مکان این فایل کانفیگ روی سرورتان را نمیدانید دستور زیر را برای پیدا کردن آن اجرا کنید.
قبل از اینکه هر گونه تغییری در فایل کانفیگ php اعمال کنید به شما پیشنهاد میکنم که اول یک بک آپ از این فایل کانفیگ همانند زیر بگیرید.
سپس فایل را تحت دسترسی سوپر یوزر و با ویرایشگر متنی دلخواه خود باز کنید.
عبارت expose_php را در فایل قرار دهید و مقدار آنرا برابر با Off بگذارید.
فایل را ذخیره و از آن خارج شوید. سپس وب سرور را همانند زیر ریستارت کنید.
در آخر با استفاده از دستور زیر بررسی کنید که آیا ورژن php تان همچنان در HTTP response header نمایش داده میشود.
در دستور بالا آپشن های :
-head : یک درخواست HEAD برای mime headers ارسال میکند.
-mime_header : هدر MIME یک داکیومنت لود شده را به همراه سورس آن نمایش میدهد.
نکته : مطمئن شوید که شما lynx (مرورگر وب کامند لاینی) را روی سیستم تان نصب داشته باشید.
در این مقاله ما به منظور امن کردن یک وب سرور از حمله های احتمالی، نحوه مخفی کردن ورژن php را در HTTP response header توضیح دادیم. شما نیز میتوانید نظرات یا سوال های مرتبط با این پست را با ما به اشتراک بگذارید.
همچنین توصیه میشود مطالعه کنید :
نحوه مخفی کردن ورژن وب سرور آپاچی در لینوکس به همراه اطلاعات حساس دیگر
نحوه مخفی کردن ورژن وب سرور Nginx در لینوکس
فرض میکنیم ورژن خاصی از php که روی سرور تان نصب است، حفره های امنیتی دارد و از طرف دیگر هکر ها از این موضوع با خبر شوند میتواند کار کشف نفوذ پذیری ها و کسب دسترسی به سرور شما را از طریق اسکریپت ها آسانتر سازد.
در مقاله قبلی ما به شما نحوه مخفی کردن ورژن آپاچی را شرح دادیم، و شما با نحوه غیرفعال کردن ورژن آپاچی آشنا شدید. اما اگر شما روی سرور آپاچی خود php داشته باشید شما نیاز به مخفی کردن ورژن php نیز خواهید داشت و به این دلیل است که ما این پست را نیز برای شما به نمایش خواهیم گذاشت.
در این پست ما نحوه مخفی کردن یا غیرفعال کردن نمایش ورژن php در response header سرور HTTP را شرح خواهیم داد.
این تنظیمات را میتوان در فایل کانفیگ php لود شده انجام داد. در مواقعی که شما مکان این فایل کانفیگ روی سرورتان را نمیدانید دستور زیر را برای پیدا کردن آن اجرا کنید.
کد PHP:
$ php -i | grep "Loaded Configuration File"
کد PHP:
---------------- On CentOS/RHEL/Fedora ----------------
Loaded Configuration File => /etc/php.ini
---------------- On Debian/Ubuntu/Linux Mint ----------------
Loaded Configuration File => /etc/php/7.0/cli/php.ini
کد PHP:
---------------- On CentOS/RHEL/Fedora ----------------
$ sudo cp /etc/php.ini /etc/php.ini.orig
---------------- On Debian/Ubuntu/Linux Mint ----------------
$ sudo cp /etc/php/7.0/cli/php.ini /etc/php/7.0/cli/php.ini.orig
کد PHP:
---------------- On CentOS/RHEL/Fedora ----------------
$ sudo vi /etc/php.ini
---------------- On Debian/Ubuntu/Linux Mint ----------------
$ sudo vi /etc/php/7.0/cli/php.ini
کد PHP:
expose_php = off
کد PHP:
---------------- On SystemD ----------------
$ sudo systemctl restart httpd
$ sudo systemctl restart apache2
---------------- On SysVInit ----------------
$ sudo service httpd restart
$ sudo service apache2 restart
در آخر با استفاده از دستور زیر بررسی کنید که آیا ورژن php تان همچنان در HTTP response header نمایش داده میشود.
کد PHP:
$ lynx -head -mime_header http://localhost
OR
$ lynx -head -mime_header http://server-address
در دستور بالا آپشن های :
-head : یک درخواست HEAD برای mime headers ارسال میکند.
-mime_header : هدر MIME یک داکیومنت لود شده را به همراه سورس آن نمایش میدهد.
نکته : مطمئن شوید که شما lynx (مرورگر وب کامند لاینی) را روی سیستم تان نصب داشته باشید.
در این مقاله ما به منظور امن کردن یک وب سرور از حمله های احتمالی، نحوه مخفی کردن ورژن php را در HTTP response header توضیح دادیم. شما نیز میتوانید نظرات یا سوال های مرتبط با این پست را با ما به اشتراک بگذارید.