আজকের এই ব্লগে আমরা জানবো SQL Injection এর বেসিক বিষয়গুলো, কিভাবে কাজ করে, এর ঝুঁকি ও নিরাপত্তার পদ্ধতি সম্পর্কে।
SQL Injection (SQLi) হচ্ছে একটি কোড ইনজেকশন টেকনিক যেখানে হ্যাকার ইনপুট ফিল্ড বা URL প্যারামিটারে ম্যালিশাস SQL কমান্ড যোগ করে ডেটাবেসের সাথে অবৈধভাবে ইন্টার্যাক্ট করতে পারে।
সহজ ভাষায় বললে:
যদি কোনো ওয়েবসাইট ইউজারের ইনপুট ঠিকমতো যাচাই না করে সরাসরি SQL Query-তে বসায়, তখন হ্যাকার সেই ইনপুটের মধ্যে বিশেষ কোড ঢুকিয়ে ডেটাবেসের নিয়ন্ত্রণ নিতে পারে।
SQL Injection কিভাবে কাজ করে?
ধরা যাক, কোনো ওয়েবসাইটের লগইন সিস্টেমে নিচের মতো কোড চলে:
SELECT * FROM users WHERE username = '$username' AND password = '$password';
1=1 সবসময় সত্য হয়। ফলে লগইন সিস্টেম বাইপাস হয়ে যাবে এবং হ্যাকার প্রবেশ করতে পারবে।SQL Injection এর প্রকারভেদ
১. Classic SQLi:
সরাসরি ইনপুটের মাধ্যমে SQL Query ভেঙে ডেটাবেসে কমান্ড চালানো হয়।
২. Blind SQLi:
যখন সার্ভার কোনো error দেখায় না, তখন হ্যাকার লজিক দিয়ে তথ্য বের করে।
৩. Error-Based SQLi:
ওয়েবসাইটের error message থেকে ডেটাবেসের গঠন সম্পর্কে ধারণা নেওয়া হয়।
৪. Union-Based SQLi:
UNION keyword ব্যবহার করে একাধিক টেবিলের তথ্য একত্র করে বের করা হয়।
SQL Injection দিয়ে কী কী করা সম্ভব?
-
সকল ইউজারনেম ও পাসওয়ার্ড বের করা
-
অ্যাডমিন অ্যাক্সেস নেওয়া
-
ডাটাবেসের তথ্য মুছে ফেলা বা পরিবর্তন করা
-
সার্ভারে শেল আপলোড করে ওয়েবসাইট দখল নেওয়া
-
পুরো সার্ভার Takeover করা
অবশ্যই SQLi সম্পর্কে গভীর ধারণা রাখতে হবে এবং নিরাপত্তা নিশ্চিত করতে হবে।



1 Comments
I learned a lot from your blog. You really deserve a thank you.
ReplyDelete