اولین بار است که به این وب‌سایت می‌آیید. راهنما را مطالعه کنید!
x
موسسه خیریه محک

شهر ریاضی بازی-ریاضی

سرریز بافر یا buffer overflows چیه؟

0 امتیاز
100 نمایش

این عبارت که بیشتر در مورد رشته‌ها من برخورد کردم باهاش چیه؟ و چرا اینقدر ترسناک در موردش صحبت می‌شه؟

هیچ پژوهش انسانی نمی‌تواند ادعای علمی بودن داشته باشد، مگر این‌که از برهان ریاضی برخوردار باشد (لئوناردو داوینچی)
پرسیده شده دوشنبه ۱۲ فروردین ۱۳۹۲ در C++ توسط prodo  

1 پاسخ

0 امتیاز

سرریز بافر وقتی اتفاق می‌افته که مقدار اطلاعات ورودی به یه بافر از ظرفیت بافر بیشتر بشه. در این صورت بنا به برنامه‌ای که نوشته شده و کنترل‌هایی که تعبیه شده ممکنه اتفاق‌های بد یا بسیار بدی بیافته.

یک امکان صدور اخطار و پایان دادن به برنامه یا صدور یک هشدار نسبت به از دست رفتن داده‌هاست. که این بهترین اتفاق بدی هست که می‌تونه بیافته
یک امکان بدتر که تقریباً بدون کنترل هست امکان ذخیره‌ی اطلاعات بیشتر هست که ممکنه به جاهایی از حافظه که مربوط به داده‌های یک متغیر دیگه هست اجازه‌ی دسترسی داده بشه و برنامه نتایج نامعتبر تولید کنه.
در حالت بسیار بد ممکنه اطلاعاتی که بین برنامه‌های مختلف مشترکه (مثل clipboard در ویندوز) ناخواسته مورد دسترسی قرار بگیره و خراب بشه.

هیچ پژوهش انسانی نمی‌تواند ادعای علمی بودن داشته باشد، مگر این‌که از برهان ریاضی برخوردار باشد (لئوناردو داوینچی)
پاسخ داده شده سه شنبه ۱۸ تیر ۱۳۹۲ توسط prodo