امن کردن PHP

صفحه اصلی / اخبار / امن کردن PHP

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

در ابتدا فایل php.ini با ویرایشگر باز می کنیم:

گزینه های زیر ویرایش کنید

این حداقل تنظیمات برای امن شدن سرور می باشد، حال به امن کردن بهتر php میپردازیم

1= Allow_url_fopen ( در تنظیمات پیشفرض فعال هست )

این تابع اجازه می دهد تا دیتا ها  ( مانند تابع file_get_contents() ) ،به صورت ftp یا از طریق سایت از مکان دیگری ریموت بشود، برای جلوگیری از این کار بهتر هست غیرفعال بشود.

یا از httpd.conf غیرفعال کنید:

2= Allow_url_include ( در تنظیمات پیشفرض غیرفعال هست )

مانند فانکشن های fopen() و file_get_contents اجازه دسترسی از راه دور به فایل می دهد، برای غیر فعال کردن به شکل زیر php.ini کانفیگ کنید

یا از httpd.conf غیرفعال کنید:

3= Disable_function

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

این لیست شما باید آن را در سرور خود را غیر فعال کنید:

– curl_exec – perform cURL session

– curl_multi_exec – run a sub-connection with the cURL handle

– dl – me0loads a PHP extension at run

– exec – execute an external command

– fsockopen – Open Internet or Unix domain socket connection

– parse_ini_file – parse the configuration file

– passthru – execute an external program and display output

– popen – process opens the file pointer

– proc_open – execute a command and open file pointers for input / output

– proc_close – shut down a process opened by proc_open and return the exit code in the function.

– shell_exec – execute command via shell and return the output as a string

– show_source – shows the source code file

– symlink – make a symbolic link

– system – execute an external program and display output

نکته: امکان دارد با غیرفعال کردن برخی توابع در لود سایت شما تاثبر بگذارد برای همین قبل از غیر فعال کردن برخی از فانکشن ها و توابع قبل از ان چک کنید تا در سرویس دهی شما اختلال ایجاد نشود.

4= display_errors  و log error

برای امنیت بیشتر نمایش error های php تحت وب غیرفعال کنید و از log error استفاده کنید.

یا از httpd.conf غیرفعال کنید:

5= Expose_php

اطلاعات مربوط به php توسط افزاد قابل مشاهده هست و به هکرها اطلاعات می دهد، اگر شما این function فعال کردید پس ما غیر فعال می کنیم:

6= Open_basedir

این خاصیت در php این امکان را فراهم می آورد تا فایل هایی که توسط php باز می شوند را محدود کنید این diretive تحت تاثیر safe mode نیست و روشن یا خاموش بودن آن تاثیری بر عملکرد این directive ندارد.

یا از httpd.conf غیرفعال کنید:

 

 

ارسال پاسخ

آدرس ایمیل شما منتشر نخواهد شد.