#ثريد
بسم الله الرحمن الرحيم
زي العادة نستمر بثريدات عن الثغرات وطرق استغلالها ?
بهذا الثريد بتكلم عن ثغرة
SQL injection ?
" حقن قواعد البيانات "
بسم الله الرحمن الرحيم
زي العادة نستمر بثريدات عن الثغرات وطرق استغلالها ?
بهذا الثريد بتكلم عن ثغرة
SQL injection ?
" حقن قواعد البيانات "
بتكلم في هذه الثريد عن واحد من أشد الأخطار فتكاً في تطبيقات الويب ، حيث يمكن لهذه النوعية من الهجمات أن تقوم بمسح قاعدة بيانات كاملة ، او سرقة محتوياتها ، او تغيير بيانات بقاعدة البيانات من دون ان يلاحظ احد.
ماهي ثغرة SQL injection ؟
هي ببساطة هجوم يتم فيه حقن كود SQL بتطبيق الويب حتى يتم استخراج البيانات من قاعدة البيانات التي يعتمد عليها الموقع ، والثغرة تعتمد على خطأ في عدم معاينة ما يتم إدخاله قبل ان يتم تمريره لقاعدة البيانات
تعتبر هذه الثغرة الأكثر خطورة حسب ترتيب OWASP.
هي ببساطة هجوم يتم فيه حقن كود SQL بتطبيق الويب حتى يتم استخراج البيانات من قاعدة البيانات التي يعتمد عليها الموقع ، والثغرة تعتمد على خطأ في عدم معاينة ما يتم إدخاله قبل ان يتم تمريره لقاعدة البيانات
تعتبر هذه الثغرة الأكثر خطورة حسب ترتيب OWASP.
سبب وجود ثغرة SQL Injection :
السبب يعود إلى عدم حماية البيانات أثناء التعامل مع القاعدة. إما عن غير قصد ، و غالبا عن جهل المبرمج. فلا غرابة أن نجد هذه الثغرة في الكثير و الكثير من المواقع. رغم أنها من أقدم الثغرات ، و طرق حمايتها لا يتطلب جهدا و خاصة أثناء إنجاز المشروع.
السبب يعود إلى عدم حماية البيانات أثناء التعامل مع القاعدة. إما عن غير قصد ، و غالبا عن جهل المبرمج. فلا غرابة أن نجد هذه الثغرة في الكثير و الكثير من المواقع. رغم أنها من أقدم الثغرات ، و طرق حمايتها لا يتطلب جهدا و خاصة أثناء إنجاز المشروع.
طرق الحماية :
الحماية في هذا المستوى تعتمد على المبرمج بشكل كامل.
وبما ان حقن قواعد البيانات يتم عن طريق مُدخلات المستخدم فيستطيع المبرمج التحكم في مُدخلات المستخدم والتحقق منها.
يجب على من يبني قواعد البيانات ان يكون يعرف انماط حقن البيانات ليستطيع ان يتفادى هذة الثغرة.
الحماية في هذا المستوى تعتمد على المبرمج بشكل كامل.
وبما ان حقن قواعد البيانات يتم عن طريق مُدخلات المستخدم فيستطيع المبرمج التحكم في مُدخلات المستخدم والتحقق منها.
يجب على من يبني قواعد البيانات ان يكون يعرف انماط حقن البيانات ليستطيع ان يتفادى هذة الثغرة.
تجربة عملية:
هذا موقع للتدريب على إختبار الاختراق:
testphp.vulnweb.com
1- ادخل الموقع وتأكد ان الموقع مصاب بثغرة SQL injection ( يكون بإضافة علامة الاقتباس بأخر الرابط ( ' ))
هذا موقع للتدريب على إختبار الاختراق:
testphp.vulnweb.com
1- ادخل الموقع وتأكد ان الموقع مصاب بثغرة SQL injection ( يكون بإضافة علامة الاقتباس بأخر الرابط ( ' ))
2- استغلال الثغرة يكون بتغيير اخر رقم بالرابط بقيمة تتوقع انها ليست مخزنة بقاعدة البيانات ( غالباً الارقام السالبة لاتكون مخزنة ).
• بعد تغيير القيمة الى قيمة سالبة مثلا ( 1- ).
ننتقل للخطوة الثالثة.
• بعد تغيير القيمة الى قيمة سالبة مثلا ( 1- ).
ننتقل للخطوة الثالثة.
3- اضافة كلمة UNION لإرفاق استعلامك لقاعدة البيانات مع الاستعلام الأصلي وبكذا ممكن نحصل على قيم اعمدة من جداول اخرى بقاعده البيانات.
اتمنى من اي شخص طبق الطريقة وطلع له نتيجة ، يشاركها معنا ?
واتمنى اني افدتكم علمياً وعملياً بطريقة مبسطة ♥️
واتمنى اني افدتكم علمياً وعملياً بطريقة مبسطة ♥️
@sjsw_90 ايه ولكن تقدر من جدول واحد سحب اليوزرنيم والباسوورد وبكذا تنتهي مهمة SQL injection
جاري تحميل الاقتراحات...