সুচিপত্র:
সংজ্ঞা - এসকিউএল ইঞ্জেকশনটির অর্থ কী?
একটি এসকিউএল ইঞ্জেকশন এমন একটি কম্পিউটার আক্রমণ যার মধ্যে দূষিত কোডটি একটি খারাপভাবে ডিজাইন করা অ্যাপ্লিকেশনটিতে এম্বেড করা হয় এবং তারপরে ব্যাকএন্ড ডেটাবেজে পাস করা হয়। দূষিত ডেটা তখন ডাটাবেস ক্যোয়ারী ফলাফল বা ক্রিয়া তৈরি করে যা কখনও কার্যকর করা উচিত ছিল না।
টেকোপিডিয়া এসকিউএল ইনজেকশন ব্যাখ্যা করে
এসকিউএল ইনজেকশন হামলার উদাহরণটি দেখি:
ব্যাংকের ক্রিয়াকলাপ পরিচালিত একটি অ্যাপ্লিকেশনটিতে মেনু রয়েছে যা গ্রাহকের সামাজিক সুরক্ষা নম্বর হিসাবে ডেটা পয়েন্ট ব্যবহার করে গ্রাহকের বিশদ অনুসন্ধান করতে ব্যবহৃত হতে পারে। ব্যাকগ্রাউন্ডে অ্যাপ্লিকেশনটি একটি এসকিউএল কোয়েরি কল করে যা প্রবেশের অনুসন্ধান মানগুলি নিম্নলিখিতভাবে পাস করে ডাটাবেসে চালিত হয়:
ক্লায়েন্টের নাম, টেলিফোন, ঠিকানা, তারিখের_ জন্ম_এখানে সামাজিক_সামগ্রী_না = 23425 নির্বাচন করুন
এই নমুনা স্ক্রিপ্টে ব্যবহারকারী 23425 মানটি অ্যাপ্লিকেশন মেনু উইন্ডোতে প্রবেশ করে এবং ব্যবহারকারীকে সামাজিক সুরক্ষা নম্বর প্রবেশ করার জন্য অনুরোধ করে। তারপরে, ব্যবহারকারীর সরবরাহিত মানটি ব্যবহার করে একটি এসকিউএল কোয়েরি ডাটাবেসে চলে।
এসকিউএল জ্ঞানযুক্ত ব্যবহারকারী অ্যাপ্লিকেশনটি বুঝতে পারে এবং সামাজিক সুরক্ষা নম্বর জিজ্ঞাসা করার সময় একটি একক মান প্রবেশের পরিবর্তে "23425 বা 1 = 1" স্ট্রিংটি প্রবেশ করে যা ডাটাবেসে পাস করা হয়েছে:
ক্লায়েন্টের নাম, টেলিফোন, ঠিকানা, তারিখের_ জন্ম_এখানে সামাজিক_সামিকা_নু = 23425 বা 1 = 1 নির্বাচন করুন
যেখানে দফাটি গুরুত্বপূর্ণ তাই এটি দুর্বলতার পরিচয় দেয়। একটি ডাটাবেসে, শর্তটি 1 = 1 সর্বদা সত্য এবং ক্লায়েন্টটি সামাজিক সুরক্ষা নম্বর বিশদ (23425) বা যেখানে 1 = 1 প্রদান করতে নির্দিষ্ট করা হয়েছে, তাই কোয়েরিটি সারণীতে সমস্ত সারি ফেরত দেবে, যা ছিল না মূল উদ্দেশ্য
উপরের এসকিউএল ইঞ্জেকশন আক্রমণ উদাহরণ সহজ, তবে এটি দেখায় যে কীভাবে অ্যাপ্লিকেশনটিকে ব্যাকএন্ড ডাটাবেস ক্যোয়ারী বা কমান্ড চালানোর জন্য দুর্বলতা কাজে লাগানো হয়।
এসকিউএল ইনজেকশন আক্রমণগুলি যথাযথ অ্যাপ্লিকেশন নকশা নিশ্চিত করে কমানো যেতে পারে, বিশেষত মডিউলগুলিতে যেগুলি ডাটাবেস অনুসন্ধান বা কমান্ড চালানোর জন্য ব্যবহারকারীর ইনপুট প্রয়োজন। উপরের উদাহরণে, অ্যাপ্লিকেশনটি এমনভাবে পরিবর্তন করা যেতে পারে যাতে এটি কেবল একটি সংখ্যাসূচক মান গ্রহণ করে।