الاداة sqlmap لجلب معلومات قواعد البيانات

الكاتب: Mr.Aziz

تاريخ النشر: 2022-06-04 11:05:37

مساء الخير

 

أن شاءالله تكونون بأحسن حال.

 

اليوم راح تنكلم عن اداة خاصة في قواعد البيانات ولجلب جميع البيانات منها هو sqlmap

 

ماهو sqlmap و كيف يشتغل ومتى نقدر نستخدمة؟

 

Sqlmap: هو اداة مجهزه لجلب جميع البيانات من القواعد البيانات موجوده بالمواقع. بس بشرط يكون الموقع مصابة بالثغرة Sql Injection

 

ماهو sql Injection: هي ثغرة لسبب عدم وجود فلتره في كود البرمجة و طبعآ يكون خطأ من المبرمج بكل تأكيد

 

ويوجد طريقتين الى هي بشكل يدوي او عن طريق الاداة sqlmap  كلها تفي الغرض.

 

مثلآ في الكود نفترض نكتب prepare statement لحماية القواعد البيانات من هذي الثغرة

 

ولكن لو كتبنا كود قواعد البيانات بشكل مباشر زي كذا

 

Select * from tablename  هنا يكون معرض لثغرة Sql injection

خلينا نكتبها مع اللغة php

 

$sql = query->(select * from tablename)

 

 

بهذي طريقة تكون معرضة الثغرة هذي

 

الان راح نجرب على موقع مسموح لنا الى هو هذا

 

لانه هذا بأمكانك تتعلم عليه لغرض الدراسة وايضآ لفهم طريقة الثغرات بشكل عام.

 

للعلم المقال هذا فقط لغرض الدراسة و مختبرين أختراق اخلاقي فقط.

 

المهم نكمل

 

كيف نعرف الموقع مصاب بالثغرة ولالا؟ بيكون بهذي طريقة

 

 

الان نروح نجرب عند parameter تمام

 

لما يكون في شي اسمه php?id=1 يعني هنا في احتمال وجود ثغرة sql

 

كل الى عليك تضع علامة (') بعد الرقم مو شرط يكون رقم 1 ممكن يكون 21 ولكن الاهم يكون كذا php?id=1'

بعد وضع العلامة نضغط Enter

 

هنا راح تلاحظ وجود خطأ بما يعني هذا الموقع مصاب في ثغرة Sql Injection

 

المهم الان يجي دورنا نستخدم sqlmap

 

نروح على شاشة الاوامر ثم نضع sqlmap بهذي طريقة

 

 

 

الان كل الى علينا ننسخ الرابط

 

ثم نضع بهذي طريقة

 

sqlmap -u url --dbs

 

أول شي نكتب sqlmap لتنفيذ الامر

 

بعد كذا نضع -u تعني الرابط

 

url تعني مكان الرابط زي ماهو موضح بالصوره

 

بكذا نكتب --dbs تعني جلب جميع البيانات موجوده في قواعد البيانات

 

الان نشوف النتيجة ايش بيصير.

 

 

قبل فقط جاب لنا اسم قواعد البيانات تمام

 

الان جاب لنا كل قواعد البيانات فيه اسماء الجداول و كل الى يهمنا الان هو users عشان ناخذ users و ايضآ password

 

بعد كذا نحاول ندخل جدول users عشان نشوف البيانات الى فيها

 

 

بكذا نحدد اسم قواعد البيانات  و ايضآ اسم الجدول

 

يعني نكتب زي كذا

 

sqlmap -u url -D acuart -T users --dump

 

-D تعني قواعد البيانات

-T تعني جداول الى موجوده في قواعد البيانات

 

--dump تعني يجلب جميع البيانات الى موجوده في جدول users

 

بكذا تكون النتيجة.

 

 

بعد ماينتهي هذا النتيجة زي ماهو موضح

 

الاسم مستخدم هو test و الكلمة المرور هو test

 

لما نجي نسجل دخول بيكون كذا

 

 

الان قدرنا نحصل جميع البيانات تبع الموقع و نفرض الحساب هو ادمن

 

هذا ثغرة sql injection و لازم نعمل له فلتره عشان نتفادى من هذي المشكلة

 

مع الملاحظة: هذي طريقة مو دائمة تكون شغالة و يجب ان تستخدم بشكل يدوي خاصة لو وصلت مرحلة المتقدمة في كشف الثغرات او bugbounty

 

ولكن هذي طريقة ممتازة لو حاب تاخذ اختبار pts و تنجح فيها لانه احد الاسئلة يجب انك تخترق و تاخذ قواعد البيانات عشان تبحث عن flags

 

 

وأشوفكم على خير...