تجاوز المصادقة من خلال حقن إس كيو إل (SQL) في تطبيق مالي
يعد حقن إس كيو إل (تعليمات الاستعلام البنيوية) أحد أبرز نقاط الضعف وأكثرها خطورة وشائعية، وغالبا ما يتواجد في العديد من التطبيقات. رصد خبراؤنا إحدى هذه الثغرات الأمنية في نموذج تسجيل الدخول لتطبيق مالي وتمكنوا من خرق البيانات وتنفيذ تجاوز المصادقة.
يعمل فريقنا من خبراء الأمن السيبراني في إم بي جي لخدمات الشركات على تقييم الوضع الأمني لعملائنا وتقديم خدمات استشارية تبني بيئة إلكترونية آمنة ورصينة. تشمل خدماتنا في الاستشارات السيبرانية مزيج من الإستراتيجيات الهجومية والدفاعية اللتي تستخدم أحدث الأدوات والمنصات وتنفذ من قبل محترفين ماهرين وذوي خبرة واسعة في هذا المجال.
سنتحدث في هذه المقالة عن ثغرة أمنية في حقن إس كيو إل والتي صادفناها خلال تقييم الضعف واختبار الاختراق لمجموعة التطبيقات المالية لأحد عملائنا في قطاع التأمين. نظراً إلى كم المعلومات المالية اللتي تمتلكها شركات التأمين عن عملائها، كانت هذه حالة حرجة وخطيرة تحتاج إلى المعالجة الفورية.
حقن إس كيو إل
يعدُ حقن إس كيو إل ثغرة أمنية في تطبيق الويب تسمح للمهاجم بالتدخل في الاستعلامات التي يقوم بها أحد التطبيقات لقاعدة بياناتها، بهدف الحصول على معلومات حساسة أو مهمة وغير متاحة لعامّة المستخدمين واللتي تتضمن بيانات العميل وبيانات المستخدم الأخرى.
في معظم االحالات، يمكن للمهاجم تعديل هذه البيانات أو حذفها، مما يتسبب في تغييرات مستمرة في محتوى التطبيق أو سلوكه، كما يمكن للمهاجم تصعيد هجوم حقن إس كيو إل للحصول على وصول غير مصرح به من خلال تجاوز المصادقة (كاحالة اللتي وجدناها ) أو اختراق الخادم الأساسي أوشتَى البنى التحتية الخلفية، أو تنفيذ هجمات الحرمان من الخدمات.
هناك العديد من أنواع الثغرات الأمنية والهجمات والتقنيات الخاصة بحقن إس كيو إل والتي تظهر في مواقف مختلفة. سنلقي نظرة على ثغرة حقن إس كيو إل في تجاوز المصادقة. للعثور على ثغرة في حقن إس كيو إل يجب عليك أولاً محاولة العثور على نقطة حقن يمكن من خلالها إدخال استعلام إس كيو إل في هجوم ما ثم قم بحقن بعض الأحرف الخاصة لاستدعاء استجابة من التطبيق تشير إلى وجود ثغرة أمنية محتملة لإدخال حقن إس كيو إل.
هذه بعض الاحرف الخاصة اللتي يمكن حقنها:
‘ ” ` ‘) “) `) ‘)) “)) `))
عند حقنها بهذه الأحرف الخاصة، من المتوقع أن ينشئ التطبيق خطأ أو أن يرجع استجابة غير معتادة لتأكيد وجود ثغرة أمنية لإدخال حقن إس كيو إل. يمكن للخطأ الذي تم إنشاؤه توفير المزيد من المعلومات المفيدة مثل نوع قاعدة البيانات التي تعمل في الخلفية والمعلومات الهامة الأخرى. يساعد تحديد قاعدة البيانات في تحديد الحمولة اللتي يتم استخدامها لقاعدة بيانات معينة (على سبيل المثالMssql, MySQL,NosSQL و ما إلى ذلك…)
هذه الخطوات اعلاه تسمح بتحديد ما إذا كان اسم المستخدم أو حقل كلمة المرور في نموذج تسجيل الدخول عرضة لحقن إس كيو إل. من بعدها تحاول استخدام الحمولات لقاعدة البيانات المحددة لتشغيل ثغرة تجاوز المصادقة.
بعض أمثلة الحمولة تتضمن التالي:
ثم تحاول حقن هذه الحمولات ، إما يدويًا أو باستخدام أدوات مثل Burpsuite مع معالجة الحمولات وفقًا للاستجابات ونوع قاعدة البيانات في الواجهة الخلفية في نفس الوقت.
عندما ينجح الهجوم ، تحصل على الوصول غير المصرح به إلى الأجزاء الداخلية لتطبيق الويب ، وهي ثغرة أمنية خطيرة.
إثبات مفهوم الاستغلال
في حالة عميلنا ، وجدنا ثغرة حقن إس كيو إل في تجاوز المصادقة ومن خلالها تمكننا من الحصول على وصول المسؤول إلى بوابة التطبيق.
تؤدي الخطوات التالية إلى اختراق بوابة المسؤول على تطبيق الويب:.
- أولاً ، قمنا بالزحف إلى تطبيق الويب للعثور على نقاط الحقن الممكنة
- بعد ذلك ، قمنا بحقن رموز خاصة في معلمات إدخال نموذج تسجيل الدخول لتحديد وجود ثغرات أمنية لحقن إس كيو إل من
- كان هناك تأخير كبير في أحد الردود على الطلبات المرسلة إلى نموذج تسجيل الدخول لإحدى الحمولات عند مقارنتها بالطلبات الاخرى مما يدل على احتمال وجود ثغرة أمنية لحقن إس كيو إل في معلمة اسم المستخدم في نموذج تسجيل الدخول في التطبيق.
- حدد فحص Nmap على التطبيق أن قاعدة البيانات هي من نوع Mysql كون المنفذ 3306 مفتوحاً
- ثم قمنا بعمل قائمة من الحمولات لمحاولة الحقن التي من شأنها أن تؤدي إلى ثغرة في حقن إس كيو إل والحصول على وصول غير مصرح به إلى بوابة تسجيل الدخول
- ‘ او ‘1’=’1– الحمولة التي نجحت كانت
- منحنا هذا وصولاً غير مصرح به كمسؤول ، مما أتاح لنا أيضًا عرض بعض المعلومات المالية الهامة لكل من عملائنا وعملائهم.
- يسمح وصول المسؤول أيضاً بإنشاء مستخدمين جدد مع جميع أذونات المسؤول ، مما مكننا من زرع باب خلفي حتى نتمكن من الوصول إلى البوابة لاحقًا..
تم الإبلاغ عن هذه الثغرة الأمنية على الفور إلى فريق تكنولوجيا المعلومات الخاص بالعميل. كما قدمنا لهم دليلًا مفصلاً عن المفهوم مع العلاج اللازم لتصحيح الثغرة الأمنية في أسرع وقت ممكن.
العلاج
الطريقة الوحيدة المضمونة لتكون قادرًا على منع هجمات الثغرات الأمنية في حقن إس كيو إل هي التحقق من صحة الإدخال والاستعلامات ذات المعلمات بما في ذلك العبارات المعدة. . يجب ألا يستخدم رمز التطبيق الإدخال مباشرةً.
. يجب أن يقوم مطور التطبيق بتعقيم جميع المدخلات ، وليس فقط مدخلات نموذج الويب مثل نماذج تسجيل الدخول. يجب عليهم إزالة عناصر التعليمات البرمجية الضارة المحتملة مثل علامات الاقتباس الفردية. يفضَل إيقاف تشغيل رؤية أخطاء قاعدة الإنتاج الخاصة بك لإمكانية استخدام أخطاء قاعدة البيانات مع حقن إس كيو إل للحصول على المعلومات عن قاعدة البيانات لديك.
مكن العثور على شرح أكثر مفصل و طريقة المعالجة على موقع OWASP يمكن للمطورين استخدام التعليمات المتوفرة على الرابط التالي لتعقيم مدخلات المستخدم بشكل صحيح واستخدام طرق أخرى فعالة:
https://cheatsheetseries.owasp.org/cheatsheets/SQL_Injection_Prevention_Cheat_Sheet.html
تستمر حقن إس كيو إل بتشكيل ثغرة أمنية خطيرة ويجب أن تؤخذ على محمل الجد ، وإلا ستسبب بالكثير من الأضرار والخسائر.
لمزيد من المعلومات وأي متطلبات خاصة بخدمات الشركات ، يرجى التواصل معنا
البريد الإلكتروني: uae@mbgcorp.com




