رفتن به مطلب

زیر سوال بردن امنیت وب‌سایت با نمایش Error


 اشتراک گذاری

Recommended Posts

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

 

همانطور که اطلاع دارید بیشتر هکرها از طریق اطلاعاتی که خود آن سایت به دلیل ضعف کد نویسی و رعایت نکردن موارد امنیتی همچون نمایش خطا یا error به کاربر، در جهت نفوذ به آن سایت و استخراج داده های ذخیره شده در پایگاه داده آن سایت و در نهایت نفوذ به سرور اقدام می کنند بعبارتی از نمایش دادن خطاهایی که مربوط به مشکلات کد برنامه شما هستند به کاربر به شدت پرهیز کنید. این کار ممکن است اطلاعاتی را در مورد پیکربندی و ساختار برنامه شما به نفوذگر بدهد که نفوذگر از این اطلاعات میتواند سوء استفاده کند. برای جلوگیری از نمایش خطاها به کاربر، اگر زبان برنامه نویسی سایت شما PHP هست کافیست تنظیمات زیر را در فایل php.ini اعمال کنید:

 

display_errors=off
log_errors=on

 

 

این تنظیمات PHP را وادار می کند که به جای آنکه خطاها را به کاربر نشان دهد، آنها را در فایلی ذخیره کند. در صورتی که شما فایل خاصی را برای ذخیره خطاها در نظر گرفته‌اید، باید مسیر فایل و اسم آن را مشخص کنید:

 

error_log=/var/log/php.error.log

 

معمولا در تمامی هاست‌ها ، خطاها نمایش داده می‌شوند و شما به فایل php.ini مستقیما دسترسی ندارید ولی از طریق کدنویسی می‌توانید تغییرات را در فایل php.ini برای سایت خودتان اعمال کنید.

برای این منظور کافیست error_reporting(0); برای غیر فعال کردن نمایش خطاها و error_reporting(E_ALL) برای نمایش کلیه خطاها و یا سایر ساختارهای مربوط به گزارش خطاها که در مستندات پیکربندی PHP موجود هستند متناسب با کاربری سایت خود بانجام رسانید.


بطور مثال، فرض کنید شما در هنگام اتصال به پایگاه داده سهوا دچار اشتباه در یکی از پارامترهای ان شده باشید یا پایگاه داده شما از کار افتاده باشد و شما می‌خواهید با تابع mysql_connect() به پایگاه داده سایت خود وصل شوید، PHP این خطا را نشان خواهد داد:

 

 

<br>

b>Warning</b>: Can’t connect to MySQL server on ‘db.example.com’(111) in

b>/www/docroot/example.php</b> on lin>

<b>3</b></br>

 

 

 

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

 

 

منبع:پایگاه اطلاع رسانی پلیس فتا

لینک به دیدگاه
Share on other sites

به گفتگو بپیوندید

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

مهمان
ارسال پست در این تاپیک...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

 اشتراک گذاری

×
  • اضافه کردن...