ماهي هجمات الحقن (Injection attacks)؟
يسمح هذا النوع من الهجوم للمهاجم بحقن كود (inject code) في برنامج (program)، أو استعلام (query)، أو حقن برامج ضارة (inject malware) على جهاز كمبيوتر من أجل تنفيذ أوامر عن بُعد (execute remote commands) وليمكنه من قراءة أو تعديل قاعدة بيانات، أو تغيير البيانات على موقع الويب.
أنواع هجمات الحقن (Injection attacks):
1.حقن SQL العمياء (Blind SQL Injection):
هذا الهجوم يسمح للمهاجم باستخدام صفحة خطأ (an error page) يعيدها خادم قاعدة البيانات (database server) لطرح سلسلة من الأسئلة الصح (True) والخطأ (False) باستخدام SQL statements من أجل التحكم الكامل في قاعدة البيانات أو تنفيذ الأوامر على النظام.
2.حقن XPath الأعمى (Blind XPath Injection):
هذا الهجوم يسمح للمهاجم الذي لا يعرف بنية (structure) مستند XML بأن يستخدم الطرق(methods) التي تحاول تحديد هيكل المستند.
3.هجمات تجاوز سعة المخزن المؤقت (Buffer overflow attacks):
يفيض هذا النوع من الهجوم ببيانات مفرطة (overflows a buffer with excessive data)، مما يسمح للمهاجم بتشغيل remote shell على الكمبيوتر والحصول على نفس امتيازات النظام (system privileges) الممنوحة للتطبيق الذي يتعرض للهجوم.
ملاحظة: الـ Remote shell عبارة عن أداة لتنفيذ الأوامر (executing commands) على جهاز من خلال command-line shell على جهاز آخر.
يمكن للمهاجم استخدام هجمات تجاوز سعة المخزن المؤقت (buffer overflow) لإفساد حزمة تنفيذ(execution stack) لتطبيق ويب؛ حيث يرسل المهاجم مدخلات معدة بعناية (carefully crafted input) إلى تطبيق الويب، لإجبار تطبيق الويب على تنفيذ كود برمجي عشوائي (arbitrary code) كي يسمح للمهاجم بالسيطرة على النظام الذي يتم مهاجمته.
فإن خوادم الويب (Web servers) أو تطبيقات الويب (web applications) التي تدير الجوانب الثابتة (static) والديناميكية (dynamic) للموقع، أو تستخدم المكتبات الرسومية (graphic libraries) لتوليد الصور، معرضة لهجمات buffer overflow. حيث تتسبب هجمات الـ buffer overflow في تعطل النظام(system crashes)، أو قد تضع نظامًا في حلقة لا نهائية(an infinite loop)، أو تنفذ رمزًا(execute code) على النظام من أجل تجاوز خدمة الأمن ( a security service).
4.حقن LDAP
هذا الهجوم يستغل مواقع الويب التي تنشئ LDAP Statement المقدمة من المستخدمين. ففي هذا النوع من الهجوم قد يقوم المهاجم بتعديل LDAP statements باستخدام local proxy من أجل تنفيذ أوامر عشوائية (منح أذونات لاستعلامات غير مصرح لها (unauthorized queries)) أو تعديل محتوى LDAP tree.
5.آمر نظام التشغيل (OS Commanding):
هذا الهجوم يستغل مواقع الويب (Exploits web sites)عن طريق إدخال أمر نظام تشغيل (operating system command) من خلال طلب الـ HTTP لتطبيق الويب ( web application)، فهذا النوع من الهجوم قد يقوم المهاجم بتحميل برامج ضارة (upload malicious)أو الحصول على كلمات مرور(obtain passwords).
6.حقن SQL:
هذا الهجوم يستفيد من بناء SQL syntax لحقن أوامر ليمكنه من قراءة قاعدة بيانات أو تعديلها، أو المساومة على استعلام الـ SQL الأصلي( original SQL query)، في هذا النوع من الهجوم يمكن للمهاجم انتحال الهوية (spoof identity)، كشف البيانات الموجودة أو العبث بها أو إتلافها أو جعلها غير متاحة، و يصبح الهاكر مدير خادم قاعدة البيانات.
7.SSI Injection:
هذا الهجوم يسمح للمهاجم بإرسال كود برمجي إلى تطبيق ويب، والذي سيتم تنفيذه لاحقًا ومحليًا (locally) بواسطة خادم الويب، في هذا النوع من الهجوم يستغل المهاجم فشل تطبيق الويب في تصفية البيانات (filter data) المقدمة من قبل المستخدمين قبل إدراج تلك البيانات في ملف a server-side interpreted HTML.
8.حقن XPath
الـ XPath : هي لغة استعلام تصف كيفية تحديد موقع عناصر معينة، مثل الـ attributes أو تعليمات المعالجة (processing instructions) في مستند XML.
في هذا الهجوم يتم استغلال مواقع الويب التي تسمح للمهاجمين بحقن البيانات في تطبيق ما، من أجل تنفيذ XPath queries؛ و قد يتمكن المهاجم من تجاوز المصادقة (authentication) أو الوصول إلى المعلومات دون الحاجة إلى التفويض الصحيح.
9.هجوم سلسلة التنسيق (Format String Attack):
هذا الهجوم يغير تدفق التطبيقات باستخدام ميزات مكتبة تنسيق السلسلة (string formatting library) للوصول إلى مساحة الذاكرة الأخرى؛ في هذا النوع من الهجوم يمكن استخدام البيانات المقدمة من قبل المستخدمين كمدخلات سلسلة تنسيق لبعض وظائف C++ / Cعلى سبيل المثال: fprintf ، printf ، sprintf ، setproctitle ، sysl، syslog.
م.أمـــــــل عبــــــدالكريـــــــم الأصبـــــحي،،،
مصدر المعلومات موقع: https://www.ibm.com