القراء مثلك يساعدون في دعم MUO. عند إجراء عملية شراء باستخدام الروابط الموجودة على موقعنا ، فقد نربح عمولة تابعة. اقرأ أكثر.

تعد هجمات الحقن واحدة من أكثر الطرق شيوعًا التي يهاجم بها المتسللون الأنظمة لأنها تتيح لهم تشغيل العديد من الأوامر والرموز بسهولة. يعد حقن أوامر نظام التشغيل أحد هجمات الحقن التي يجب أن تكون على دراية بها. يستغل هذا الثغرة الأمنية التي يجب على مسؤولي النظام وقاعدة البيانات وتطبيقات الويب التعامل معها بجدية بالغة.

إذن ما هو هجوم حقن أوامر نظام التشغيل؟

تعريف حقن أوامر نظام التشغيل

يتيح إدخال أوامر نظام التشغيل للمهاجم الضار تشغيل أي أمر يريده عن طريق استغلال نظام تشغيل أو برنامج أو تطبيق أو قاعدة بيانات أو مكون إضافي عرضة للخطر. يحدث ذلك عندما تفشل التطبيقات في التحقق من صحة المعلمات التي تستخدمها وتعقيمها بشكل صحيح عند استدعاء وظائف shell مثل نظام() أو إكسيك () لتنفيذ أوامر النظام.

لفهم اكتشاف واستغلال حقن أوامر نظام التشغيل بشكل أفضل ، من المفيد فحص هذه المشكلة في ثلاث فئات رئيسية.

1. حقن القيادة المباشرة

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

instagram viewer

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

2. الحقن بأمر غير مباشر

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

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

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

3. حقن القيادة العمياء

نوع آخر من حقن أوامر نظام التشغيل هو حقن الأوامر الأعمى. هذا يعني أن التطبيق لا يُرجع أي إخراج من الأمر في استجابة HTTP. يستخدم المهاجم تقنيات مختلفة مثل التأخير الزمني وتوجيه الإخراج لاستغلال هذه الثغرة الأمنية.

تخيل أنك تبحث عن موقع ويب ، وتتغير القيمة "/؟ search = id" في عنوان URL مع كل عملية بحث. يمكن أن تكون قيمة المعرف هنا صفحة مستخدم أو عنوان صورة منتج أو أي صفحة على الموقع. يمكن للمهاجم الحصول على نتائج مختلفة عن طريق تغيير قيمة الهوية. من الصعب القيام بذلك يدويًا ، لكن هناك أدوات مثل Burp Suite لهذا. لاحقًا ، اكتشف المهاجم شذوذًا على الصفحة: قد يتم إرجاع قيمة معرّف ، على الرغم من أنها لم تظهر أي نتائج ، كانت استجابة الموقع 200مما يدل على أن كل شيء على ما يرام. في مثل هذه الحالة ، يمكن للمهاجم استخدام حقنة الأمر الأعمى.

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

مثال على سيناريو الهجوم

دعنا نراجع كل ما سبق من خلال مثال. تخيل أن لديك تطبيق تسوق يتيح للمستخدم معرفة ما إذا كانت المنتجات متوفرة. دعنا نستخدم عنوان URL مثل العنوان أدناه للوصول إلى كل هذه المعلومات:

example_unsafe_store.com/stockStatus؟ معرّف المنتج = 245 ومعرّف المتجر =

تخيل تمرير معرفات المنتج والمخزن كوسائط لأمر shell ، مثل "stockstat.pl 245 38" ، حيث سيتعين على التطبيق الاستعلام عن السجلات القديمة. إذا لم يتخذ المطور أي إجراء ضد حقن الأوامر ، يمكن للمهاجم إرسال إدخال لتنفيذ الأمر المطلوب:

& صدى صوت this_a_harmful_command &

إذا تم إدخال هذا الإدخال في معلمة productID ، فسيكون الأمر الذي ينفذه التطبيق:

stockstat.pl & صدى صوت this_a_harmful_command & 38

يعد الأمر echo طريقة مفيدة لاكتشاف عمليات حقن الأوامر بالإضافة إلى التأكد من ظهور السلسلة المحددة في الإخراج. الحرف "&" هو فاصل أوامر shell، إذن ما يتم تنفيذه هو ثلاثة أوامر منفصلة ، واحدة تلو الأخرى. نتيجة لذلك ، سيكون الناتج الذي يتم إرجاعه إلى المستخدم:

خطأ -productID غير موجود
this_a_harmful_command
38: يأمر غير معثور عليه

هنا ، قام ملف "stockstat.pl" بتنفيذ الأمر بدون الوسائط التي توقعها وبالتالي قام بإرجاع رسالة خطأ. بعد ذلك ، ركض أمر الصدى الذي أدخله المهاجم ورأى المهاجم التعبير الذي أدخله على الشاشة. تم تشغيل الوسيطة الأصلية "38" كأمر يسبب الخطأ.

كيفية الحماية من حقن أوامر نظام التشغيل

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

  1. يجب منع أي شخص لديه حق الوصول إلى التطبيق من القدرة على تشغيل التعليمات البرمجية.
  2. يجب منع أي شخص لديه حق الوصول إلى التطبيق من تقديم طلبات إلى الخادم باستخدام التعبيرات النحوية.
  3. يجب عليك تشفير العبارات التي يطلبها أي شخص لديه وصول.

لنستعرض كل عنصر واحدًا تلو الآخر. الحل الجيد للمشكلة الأولى هو استخدم طريقة القائمة البيضاء لمنع أي شخص من الوصول إلى طبقة التطبيق من تشغيل أكواد أو طلبات معينة. لن يتمكن أي شخص لا تحدد هويته من تشغيل التعليمات البرمجية.

الحل الثاني هو عدم قبول بعض التعبيرات النصية المستخدمة في الأوامر. يمكن للمستخدم إدخال القيم الرقمية فقط. قم بتطبيق هذا مع طريقة القائمة البيضاء ، وسيكون لديك نظام أكثر أمانًا.

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

هجمات الحقن تتطور كل يوم

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