معهد سكيورتي العرب | وظائف خالية
وظائف 2018 سوق السيارات عقارات 2018 الارشيف البحث
اسم العضو:  
كلمة المرور:     
تسجيل المساعدة قائمة الأعضاء اظهار المشاركات الجديدة اظهارمشاركات اليوم

طرق الحماية من هجمات حقن قواعد البيانات


طرق الحماية من هجمات حقن قواعد البيانات
التوقيت الحالي : 12-13-2018, 02:32 AM
مستخدمين يتصفحوا هذا الموضوع: 1 ضيف
الكاتب: dr.wolf
آخر رد: dr.wolf
الردود : 0
المشاهدات : 1856

إضافة رد 

طرق الحماية من هجمات حقن قواعد البيانات

الكاتب الموضوع

رقم العضوية :3
الاقامة : ام الدنيا
التواجد : غير متصل
معلومات العضو
المشاركات : 7,392
الإنتساب : Oct 2010
السمعة : 5


بيانات موقعي اسم الموقع : سكيورتي العرب
اصدار المنتدى : 1.6.8

مشاركات : #1
طرق الحماية من هجمات حقن قواعد البيانات

طرق الحماية من هجمات حقن قواعد البيانات


السلام عليكم ورحمة الله وبركاته :

طرق الحماية من هجمات حقن قواعد البيانات


مقدمة

ازداد اعتمادنا على تطبيقات الويب بشكل ملحوظ واستخدامها في أنشطة حياتنا اليومية، فمثلاً: عندما نقوم بعمل الحجوزات أو دفع الفواتير فإنّنا نتوقع من هذه التطبيقات أن تكون آمنة وموثوقة. وكما أن توافر هذه التطبيقات في ازدياد ، كانت هناك زيادة مماثلة في عدد ومستوى التطور التقني من الهجمات التي تستهدفهم. أحد أخطر أنواع الهجمات ضد تطبيقات الويب هي حقن لغة الاستعلام (SQL) . في هذا المقال سأتحدث عن ماهية هذه الحقن، مخاطرها على قواعد البيانات، وأخيراً سأتطرق إلى الحلول والطرق المُمكنة للحماية من هذه الهجمات.




ما هي حقن لغة الاستعلام (SQL)؟

حقن لغة الاستعلام هي نوع من الهجمات التي تستغل ضعف أو ثغرة في البرنامج. يعتمد المهاجم على إضافة شفرة SQL إلى المتغيرات الممررة للنظام، بحيث يتم تنفيذها مع الشفرة الأساسية الموجودة في النظام ومن ثمّ تمكن المهاجم من الوصول الغير مخول إلى نظام قواعد البيانات أو استرجاع معلومات حساسة من قواعد البيانات.

المثال التالي يعطي فكرة مبسطة عن حقن لغة الاستعلام :



Var ShipCity = Request.form ("ShipCity");

Var sql = "select * from OrdersTable where ShipCity = ' " + ShipCity + " ' ";

يطلب من المستخدم إدخال اسم المدينة. إذا أدخل Redmond فإن الشفرة تصبح كالآتي:

SELECT * FROM OrdersTable WHERE ShipCity = 'Redmond'

لكن، إذا كان المستخدم أدخل الآتي:

Redmond'; drop table OrdersTable --



فإن الشفرة تكون كما يلي:

SELECT * FROM OrdersTable WHERE ShipCity= 'Redmond';drop table OrdersTable--'



الفاصلة المنقوطة (Wink تشير إلى نهاية الشفرة وبداية أخرى. الواصلة المزدوجة (--) تشير إلى أن ما تبقى من الشفرة هو تعليق وينبغي تجاهله. إذا كانت الشفرة المعدلة صحيحة كتابيا، فإن الخادم سوف يقوم بتطبيقها. عندما يقوم الخادم بتطبيق هذه الشفرة، في البداية سوف يقوم بتحديد كافة السجلات في OrdersTable حيث ShipCity هو Redmond . ثم سوف يقوم بحذف الجدول OrdersTable من قاعدة البيانات.

طالما أن الشفرة المضافة على شفرة ال SQL هي صحيحة كتابياً، فإن التلاعب بالشفرة لا يمكن الكشف عنه برمجياً.




مخاطر حقن لغة الاستعلام (SQL)

العواقب الأساسية المترتبة من هجمات حقن لغة الاستعلام هي :

تأثيرها على التحقق من هوية المستخدم (Authentication) ، حيث يستطيع المهاجم الاتصال بالنظام من دون معرفة كلمة المرور باستخدام حقن لغة الاستعلام إذا كانت شفرة ال SQL المستخدمة للتحقق من المستخدم وكلمة المرور ضعيفة.
تأثيرها على السرية (Confidentiality) عندما يتمكن المهاجم من الوصول الغير مصرّح إلى نظام قواعد البيانات والإطلاع على البيانات الحساسة.
تأثيرها على التكامل (Integrity) فكما يستطيع المهاجم الإطلاع على البيانات الحساسة فيُمكنه أيضا باستخدام حقن لغة الاستعلام التعديل والإضافة على البيانات الحساسة.
تأثيرها على استمرارية توفر الخدمة (Availability) عندما يستطيع المهاجم مسح البيانات والجداول من قواعد البيانات.



لاستيعاب حجم هذه المخاطر سوف أذكر بعض من الأمثلة الواقعية لمواقع وأنظمة تعرضت إلى هجمات حقن لغة الاستعلام:

في أكتوبر من عام 2007، تعرض 3000 سجل من سجلات عملاء بنك التجارة الأمريكي (Commerce Bank) إلى الخطر والكشف عن معلوماتها من قبل المهاجمين، وقد تمت فعليا سرقة 20 سجل من هذه السجلات.
تعرضت معلومات 570 عميل من عملاء متجر لبيع الهدايا الكترونيا (Scarborough & Tweed) إلى السرقة من قبل المهاجمين فقد تمكنوا من سرقة معلوماتهم الخاصة وكذلك سرقة معلومات بطاقاتهم الائتمانية.
تعرض موقع الأمم المتحدة إلى تغيير في مظهر وشكل صفحة الموقع (Website defacement) من قبل مجموعة من المهاجمين المناهضين للحروب وذلك في شهر أغسطس من عام 2007.
كذلك في عام 2007 تعرضت صفحة موقع أخبار ميكروسوفت البريطاني إلى تغيير في مظهر وشكل الصفحة من قبل مجموعة من المهاجمين.



هذه كانت بعض من الأمثلة على أنظمة تعرضت لهجمات حقن لغة الاستعلام وغيرها الكثير. وجميعها تجعلنا ندرك الخطر الكبير المترتب من هذه الهجمات – هجمات حقن لغة الاستعلام - وتجعلنا نتساءل كيف يمكن لنا أن نحمي النظام وقواعد المعلومات من مثل هذه الهجمات.




طرق الحماية من هجمات حقن لغة الاستعلام (SQL)

يمكن الحماية من هجمات حقن لغة الاستعلام بتغييرات برمجية بسيطة مثل:

التحقق دائما من مدخلات المستخدم وذلك باختبار نوع المدخل، طوله، شكله ومدى الاحتمالات التي يأخذها هذا المدخل.
عدم استخدام مدخلات المستخدم مباشرة في شفرة ال SQL ، حيث يفضل فصلها واستخدام المتغيرات (Parameterized Input).
على قدر الإمكان يفضّل عدم قبول المدخلات التي تحتوي على العلامات التالية: الفاصلة المنقوطة (Wink التي تعني نهاية الشفرة، . الواصلة المزدوجة (--) التي تشير إلى أن ما تبقى من الشفرة هو تعليق وينبغي تجاهله، (/* ... */) والتي تعني أن ما بينها هو تعليق ينبغي تجاهله من قبل الخادم.
تنقيح المدخلات وإزالة بعض العلامات منها كالفاصلة المنقوطة و الواصلة المزدوجة وغيرها من العلامات اللي قد تسهل على المهاجم الوصول إلى قاعدة البيانات كما رأينا ذلك بالمثال السابق.
بعض وظائف قاعدة البيانات الأساسية والمخصصة يمكن استغلالها في الهجوم. البرنامج قد يحتوي على مهام إضافية يمكن استغلالها مثل تغيير كلمة المرور وإنشاء مستخدمين جدد؛ لذلك جميع الوظائف والدوال الغير ضرورية في البرنامج يجب منعها من الاستخدام.
تعطيل خاصية الاستعلامات المتداخلة (Nested Queries ) في نظام قواعد البيانات.
عدم عرض رسائل خطأ تفصيلية، بعض المبرمجين يقوم بعرض رسائل خطأ تبين أين كانت المشكلة، و في أي جدول من قواعد البيانات، هذه التفاصيل تعتبر تفاصيل ثمينة جدا للمخترقين، حيث يتمكنون من خلالها تكوين صورة كاملة عن بنية قاعدة البيانات الخاصة بالنظام.
يفضل استخدام حسابات بأقل صلاحيات ضرورية للبرنامج وعدم استخدام حساب المدير وما يشابهه.
مراجعة الشفرة واختبارها ضد حقن لغة الاستعلام، وإيجاد الثغرات التي يمكن الاستفادة منها بواسطة هذه الحقن من قبل المهاجم، ثم تعديل الشفرة بما يلزم.

خاتمة

يعتبر أمن قواعد البيانات من الأمور المهمة جداً خصوصا مع انتشار وتطوّر الهجمات على الشبكات والأنظمة. وتزداد أهميتها بازدياد أهمية البيانات المراد حمايتها. يوجد العديد من الطرق والوسائل المتبعة لتوفير الأمن لقواعد البيانات منها ما تطرقت إليه في هذا المقال عن وسائل الحماية من حقن لغة الاستعلام. لقد رأينا أن حقن لغة الاستعلام تمثل تهديدا كبيرا على أمن قاعدة البيانات إذا لم يتم التعامل معها بشكل صحيح فمن خلالها يستطيع المهاجم الدخول على النظام لسرقة البيانات، تعديلها أو إتلاف هذه البيانات . لذلك يجب على المبرمجين ومطورين البرامج أن يتذكروا أن جميع المدخلات من المستخدمين لا يمكن الوثوق بها. وأن يتعاملوا مع جميع المدخلات بحذر حتى يوفروا أكثر أمن ممكن لقواعد البيانات.

ادارة سكيورتي العرب


المواضيع المحتمل أن تكون متشابهة .
أمن قواعد البيانات
خواريزم تشفير البيانات DES
03-28-2011 10:43 PM
إقتباس هذه الرسالة في الرد
إضافة رد 






سوق العرب | معهد سكيورتى العرب | وظائف خالية © 2018.
Google