شرح اكتشاف ثغرة SQL Injection عمليًا

x32x01
  • بواسطة x32x01 ||
ثغرة SQL Injection من أخطر الثغرات الموجودة في تطبيقات الويب، وبتسمح للمهاجم إنه يتلاعب باستعلامات قاعدة البيانات ويطلع بيانات مش من حقه 👀
في البوست ده هشرحلك الفكرة بشكل عملي وبسيط من غير تعقيد، علشان تفهم إزاي الثغرة بتحصل وإزاي يتم استغلالها.

مثال عملي لاكتشاف ثغرة SQL Injection 🧪​

خلينا نفترض إن في موقع تسوق إلكتروني بيعرض منتجات مختلفة 🛒
لما تضغط على قسم الهدايا، بيظهرلك الرابط ده:
Code:
https://website.com/products?category=Gifts
في الحالة دي الموقع بيبعت استعلام SQL لقاعدة البيانات علشان يجيب المنتجات المطلوبة.



استعلام SQL اللي بيشتغل في الخلفية ⚙️​

الاستعلام غالبًا بيكون بالشكل ده:
Code:
SELECT * FROM products
WHERE category = 'Gifts' AND released = 1
وده معناه 👇
  • جلب كل البيانات (*)
  • من جدول المنتجات
  • اللي فئتها هدايا
  • واللي حالتها منشورة (released = 1)
القيمة released = 1 بتستخدم علشان تخفي المنتجات اللي لسه ما نزلتش (قيمتها 0).



فين المشكلة الأمنية؟ 🚨​

المشكلة هنا إن التطبيق مش عامل أي حماية ضد هجمات SQL Injection 😐
وده يسمح للمهاجم إنه يغير شكل الاستعلام بسهولة.
مثال على رابط خبيث:
Code:
https://website.com/products?category=Gifts'--



إزاي الاستعلام اتغير؟ 😈​

الاستعلام بعد التلاعب بيبقى كده:
Code:
SELECT * FROM products
WHERE category = 'Gifts'--' AND released = 1
الشرطة المزدوجة -- معناها تعليق في SQL
يعني أي حاجة بعدها مش هتتنفذ ❌
النتيجة؟
✔️ شرط released = 1 اتشال
✔️ الموقع يعرض كل المنتجات حتى اللي مش منشورة



استغلال أخطر باستخدام OR 1=1 💣​

المهاجم ممكن يروح لمرحلة أخطر ويستخدم:
Code:
https://website.com/products?category=Gifts'+OR+1=1--
الاستعلام هيبقى:
Code:
SELECT * FROM products
WHERE category = 'Gifts' OR 1=1--' AND released = 1
بما إن 1=1 دايمًا صح ✅
فكده قاعدة البيانات هترجع كل المنتجات بدون أي فلترة 😱



خطورة ثغرة SQL Injection 🔐​

اللي حصل ده مثال بسيط جدًا، لكن في الواقع الثغرة دي ممكن تؤدي إلى:
  • عرض بيانات مستخدمين 👤
  • تسريب إيميلات وباسوردات 📧
  • الوصول لملفات حساسة 📂
  • أحيانًا التحكم الكامل في قاعدة البيانات 💀
وعلشان كده SQL Injection من أخطر الثغرات في عالم اختبار الاختراق.



أدوات أوتوماتيك لاستغلال SQL Injection 🤖​

بدل ما تشتغل يدوي طول الوقت، في أدوات بتسهّل عليك الشغل جدًا، أهمها:
الأدوات دي بتعمل:
  • فحص تلقائي للثغرات
  • استخراج بيانات
  • تسريع عملية الاختبار



إزاي تكتشف الثغرة بنفسك؟ 🕵️‍♂️​

مفيش طريقة سحرية ✋
لازم تجربة ومحاولة، سواء يدوي أو باستخدام الأدوات.
من أشهر الحاجات اللي بتتجرب:
  • ' (Quote)
  • --
  • OR 1=1
  • UNION SELECT
وتراقب:
  • هل الموقع كسر؟
  • ترى بيانات غريبة؟
  • رسائل خطأ غير متوقعة؟
وفي منتديات اكتب كود هتلاقي شروحات أعمق وفيديوهات كتير عن SQL Injection وأنواعها المختلفة 🎥🔥
 
التعديل الأخير:
المواضيع ذات الصلة
x32x01
الردود
0
المشاهدات
964
x32x01
x32x01
x32x01
الردود
0
المشاهدات
860
x32x01
x32x01
x32x01
الردود
13
المشاهدات
2K
x32x01
x32x01
x32x01
الردود
0
المشاهدات
361
x32x01
x32x01
x32x01
الردود
0
المشاهدات
899
x32x01
x32x01
الوسوم : الوسوم
sql injection أختراق المواقع أكتشاف الثغرات تعلم أختراق المواقع تعلم أكتشاف الثغرات ثغرة sql injection
الدخول أو التسجيل السريع
نسيت كلمة مرورك؟
إحصائيات المنتدى
المواضيع
2,320
المشاركات
2,533
أعضاء أكتب كود
567
أخر عضو
Mohaned
عودة
أعلى