باگ «حفره امنیتی»‏

شکالیا باگ نوعی خطا یا اشتباه در اجرای نرم‌افزار است که موجب نتایج اشتباه یا اجرا نشدن نرم‌افزار می‌شود. علت این اشکالات می‌تواند اشتباه در هنگام برنامه‌نویسی باشد که شرکت‌های سازنده نرم‌افزارها برای حل این مشکل قبل از ارائه نسخه نهایی نسخه‌هایی تحت نام بتا یا آلفا انتشار می‌دهند تا افرادی آنها را بررسی کنند و این باگ‌ها را گزارش کنند. (ویکی پدیا)

* * * * * * *

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

* * * اسکریپت‌ها برنامه‌های کوچکی هستند که به‌وسیله آن‌ها می‌توان برخی وظایف تکراری و پراستفاده یا یک وظیفه طولانی را به طور خودکار انجام داد.

/ 0 نظر / 10 بازدید