আমি কলেজে একটি কোর্স করছি, যেখানে ল্যাবগুলির মধ্যে একটি হ'ল তারা আমাদের দেওয়া কোডে বাফার ওভারফ্লো শোষণ করে। এটি সাধারণ শোষন থেকে শুরু করে স্ট্যাকের কোনও ফাংশনের জন্য ফেরত ঠিকানা পরিবর্তন করা যেমন কোনও আলাদা ফাংশনে ফিরে আসে, কোডগুলিতে সমস্ত প্রোগ্রাম যা কোনও প্রোগ্রামের রেজিস্ট্রার / স্মৃতি অবস্থার পরিবর্তন করে তবে তারপরে আপনি যে ফাংশনটি ডেকেছিলেন ফিরে আসে, যার অর্থ আপনি যে ক্রিয়াকলাপটি বলেছেন তা শোষণের জন্য সম্পূর্ণ অসতর্ক।
আমি এটি নিয়ে কিছু গবেষণা করেছি, এবং এই ধরণের শোষণগুলি এখন পর্যন্ত যেকোন জায়গায় ব্যবহার করা হয়, Wii এ হোমব্রব চালানো এবং আইওএস 4.3.1 এর জন্য শিরোনামহীন জেলব্রেকের মতো জিনিসগুলিতে
আমার প্রশ্ন হল কেন এই সমস্যাটি ঠিক করা এত কঠিন? এটি স্পষ্টতই শত শত জিনিস হ্যাক করার জন্য ব্যবহৃত একটি প্রধান শোষণ, তবে মনে হচ্ছে অনুমোদিত দৈর্ঘ্যের কোনও ইনপুট কেটে ফেলা এবং আপনি যে সমস্ত ইনপুট গ্রহণ করেন তা কেবল স্যানিটাইজ করে এটি ঠিক করা বেশ সহজ হবে।
সম্পাদনা: আরেকটি দৃষ্টিকোণ যা আমি বিবেচনা করতে উত্তর চাই - সি এর নির্মাতারা কেন লাইব্রেরিগুলিকে সংশোধন করে এই সমস্যাগুলি সমাধান করেন না?