مخاطر أمان واجهة برمجة التطبيقات والتوصيات

1 سبتمبر 2020 | المدونة مخاطر أمان واجهة برمجة التطبيقات والتوصيات


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

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

أهم عشرة مخاطر لـ API OWASP

مع تركيز المخترقين على اختراق واجهات برمجة التطبيقات (APIs)، فإنهم يُشكلون خطرًا على الشركات التي تستخدمها في مواقعها الإلكترونية. وقد وثّق زملاؤنا الموثوقون في OWASP أهم المخاطر الأمنية المرتبطة بواجهات برمجة التطبيقات (APIs):

  1. تفويض مستوى الكائن مكسور. الغرض الوحيد من واجهات برمجة التطبيقات هو توفير الوصول عن بُعد إلى البيانات. في بعض واجهات برمجة التطبيقات، يجب ضبط أذونات الوصول لمنع مستخدم واحد من الوصول إلى بيانات مستخدم آخر. يتم ذلك من خلال تفويض مستوى الكائن. تأكد من أن واجهات برمجة التطبيقات لديك تقيّد الوصول إلى المستخدمين المناسبين للحد من هذه المخاطر. على سبيل المثال، قد تعرض واجهة برمجة تطبيقات بسيطة للتجارة الإلكترونية مبيعات متجرك. عند تطبيق تفويض مستوى الكائن بشكل صحيح، يمنع أصحاب المتاجر الآخرين من الاستعلام عن مبيعات متجرك. 
  2. مصادقة المستخدم مكسورة. غالبًا ما يتم تنفيذ آليات المصادقة بشكل غير صحيح ، مما يسمح للمهاجمين باختراق الرموز المميزة للمصادقة أو استغلال عيوب التنفيذ لافتراض هويات المستخدمين الآخرين بشكل مؤقت أو دائم. إن اختراق قدرة النظام على تحديد العميل / المستخدم يعرض أمن API للخطر بشكل عام.
  3. التعرض المفرط للبيانات. غالبًا ما يكشف المطورون عن مجموعات بيانات واجهة برمجة التطبيقات (API) دون قصد. استخدم مبدأ الحد الأدنى من الامتيازات لتقليل احتمال كشف البيانات السرية. في مثال التجارة الإلكترونية، اسمح للمتجر "أ" فقط بالوصول إلى بيانات المتجر "أ"، وللمتجر "ب" بالوصول إلى بيانات المتجر "ب" فقط. 
  4. عدم وجود قيود الاستعلام وحدود المعدل. لا تفرض واجهات برمجة التطبيقات (APIs) أي قيود على حجم أو عدد الموارد التي يمكن للعميل/المستخدم طلبها. لا يؤثر هذا فقط على أداء خادم واجهة برمجة التطبيقات، بل يؤدي أيضًا إلى: الحرمان من الخدمة (دوس)، ولكنها أيضًا تمكن هجمات المصادقة مثل هجوم القوة الغاشمة على أوراق الاعتماد. 
  5. تفويض مستوى الوظيفة مكسور. سياسات تحكم وصول معقدة مع مجموعات وأدوار مختلفة، وعدم فصل الوظائف الإدارية عن الوظائف العادية بشكل صحيح. أخطاء واجهة برمجة التطبيقات هذه هي عيوب في التفويض. باستغلال هذه المشاكل، يتمكن المهاجمون من الوصول إلى موارد مستخدمين آخرين و/أو وظائفهم الإدارية.
  6. التكليف الجماعي. تُعرّف واجهات برمجة التطبيقات (APIs) المستخدمين، من حيث تصميمها، بوظائف الوصول إلى البيانات الأساسية. يجب أن تقتصر جميع طلبات البيانات على مجموعة محددة من استدعاءات الوظائف. هذا يُقلل من خطر تعديل الكائن أو الوصول إليه بشكل غير مناسب بمجرد تخمين خصائص الكائن، أو استكشاف نقاط نهاية أخرى لواجهة برمجة التطبيقات، أو قراءة الوثائق، أو توفير خصائص إضافية للكائن في حمولات الطلب.
  7. خطأ في تكوين الأمان. عادةً ما ينتج سوء تكوين الأمان عن إعدادات افتراضية غير آمنة، أو تكوينات غير مكتملة أو مؤقتة، أو تخزين سحابي مفتوح، أو رؤوس HTTP مُهيأة بشكل خاطئ، أو أساليب HTTP غير ضرورية، أو مشاركة الموارد عبر المصادر (CORS) المتساهلة، أو رسائل خطأ مطولة تحتوي على معلومات حساسة. على سبيل المثال، يجب ألا يكشف فشل تسجيل الدخول إلى الموقع الإلكتروني عن وجود اسم المستخدم فيه.
  8. حقنة. تحدث عيوب الحقن ، مثل SQL و NoSQL وحقن الأوامر وما إلى ذلك ، عند إرسال بيانات غير موثوق بها إلى مترجم كجزء من أمر أو استعلام. يمكن أن تخدع البيانات الضارة للمهاجم المترجم لتنفيذ أوامر غير مقصودة أو الوصول إلى البيانات دون إذن مناسب.
  9. إدارة الأصول بشكل غير سليم. عادةً ما تكشف واجهات برمجة التطبيقات (APIs) عن نقاط نهاية أكثر من تطبيقات الويب التقليدية، مما يجعل التوثيق السليم والمُحدّث أمرًا بالغ الأهمية. يُؤدي التوثيق الدقيق لجميع عمليات نشر وإصدارات واجهة برمجة التطبيقات (APIs) إلى جرد سليم. عند اكتشاف أخطاء أو ثغرات أمنية في واجهة برمجة التطبيقات (APIs) وإصلاحها، يُساعد جردك على ضمان تحديث كل شيء باستمرار. 
  10. عدم كفاية التسجيل والمراقبة. يؤدي نقص التسجيل والمراقبة، إلى جانب غياب التكامل أو عدم فعاليته مع الاستجابة للحوادث، إلى العديد من المشاكل. يتيح هذا للمهاجمين استغلال الأنظمة، وإعداد الثبات والحفاظ عليه، والتحول لمهاجمة المزيد من الأنظمة، واستخراج البيانات أو إتلافها. تُظهر معظم دراسات الاختراق أن مدة اكتشاف الاختراق تتجاوز 200 يوم، وعادةً ما يتم اكتشافه من قِبل جهات خارجية بدلاً من العمليات الداخلية أو المراقبة.

متطلبات الأمان

مع تزايد اعتماد واجهات برمجة التطبيقات (APIs)، تزداد هجمات القراصنة التي تستهدفها. يوصي الخبراء المصممين والمطورين بتبني متطلبات الأمان التالية عند التعامل مع التطبيقات التي تتضمن واجهات برمجة تطبيقات: 

وضوح

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

التحكم بالوصول

غالبًا ما يكون الوصول إلى واجهة برمجة التطبيقات (API) خاضعًا لرقابة ضعيفة، مما يؤدي إلى تعرض غير مرغوب فيه. يُعدّ ضمان حصول المجموعة الصحيحة من المستخدمين على أذونات الوصول المناسبة لكل واجهة برمجة تطبيقات متطلبًا أمنيًا بالغ الأهمية، ويجب تنسيقه مع أنظمة إدارة الهوية والوصول (IAM).

تخفيف البوت

في بعض البيئات، تُولّد برامج روبوتية آلية ما يصل إلى 90% من حركة مرور التطبيقات (تسجيل الدخول/التسجيل في الحساب، إتمام عملية الشراء) من خلال هذه البرامج. يُعدّ فهم وإدارة أنماط حركة المرور، بما في ذلك التمييز بين البرامج الروبوتية الجيدة والسيئة، ضروريًا لمنع الهجمات الآلية دون حظر حركة المرور المشروعة. تشمل التدابير التكميلية الفعّالة تطبيق سياسات القائمة البيضاء والسوداء، وتحديد المعدلات، واختبار CAPTCHA، بالإضافة إلى تحديد المواقع الجغرافية (geofence) الخاصة بحالات الاستخدام ونقاط نهاية واجهة برمجة التطبيقات (API) المقابلة.

منع استغلال الثغرات الأمنية

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

منع فقدان البيانات

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

التحرك إلى الأمام

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

CyberHoot شركة رائعة للشراكة، حيث نقدم مئات البرامج التدريبية التي تشمل أساسيات الأمن السيبراني. تُدرّب CyberHoot المستخدمين على مختلف المجالات، من أساسيات الأمن السيبراني إلى مخاطر تطبيقات OWASP، وصولاً إلى التدريب المتقدم على Microsoft Excel. تواصل معنا عبر الاتصال بنا. sales@cyberhoot.comأو تحديد موعد لاجتماع في https://Calendly.com/CyberHoot.

لمعرفة المزيد عن أمان واجهة برمجة التطبيقات، شاهد هذا الفيديو القصير الذي تبلغ مدته دقيقتين:

مصادر: 

ThreatPost

HelpNetSecurity

قراءة إضافية: 

أهم عشرة مخاطر أمنية وفقًا لـ OWASP

تشجع Apple المطورين على استخدام واجهة برمجة التطبيقات الجديدة App Attest في نظام التشغيل iOS 14 للحماية من التهديدات الأمنية

أحدث المدونات

ابق على اطلاع بأحدث المستجدات رؤى أمنية

اكتشف وشارك أحدث اتجاهات الأمن السيبراني والنصائح وأفضل الممارسات - إلى جانب التهديدات الجديدة التي يجب الحذر منها.

إضافات محافظ العملات الرقمية المزيفة تصيب متصفح فايرفوكس. إليك كيفية الحفاظ على متصفحك نظيفًا.

إضافات محافظ العملات الرقمية المزيفة تصيب متصفح فايرفوكس. إليك كيفية الحفاظ على متصفحك نظيفًا.

المؤلفة: كاتي بوكيتي | الافتتاحية: كريغ تايلور افتتاحية بقلم كريغ تايلور: حتى قبل أن يصنع كلود كود...

اقراء المزيد
تطبيق إدارة بيانات الشركات: تطبيق العمل الوهمي الذي أراد قراءة رسائلك النصية

تطبيق إدارة بيانات الشركات: تطبيق العمل الوهمي الذي أراد قراءة رسائلك النصية

المؤلفة: كاتي بوكيتي | الافتتاحية: كريج تايلور افتتاحية بقلم كريج تايلور: لقد عرفنا ذلك منذ فترة...

اقراء المزيد
يقوم منتحلو شخصية مساعدي ChatGPT بنشر برامج ضارة. إليك كيفية كشفهم.

يقوم منتحلو شخصية مساعدي ChatGPT بنشر برامج ضارة. إليك كيفية كشفهم.

المؤلفة: كاتي بوكيتي | افتتاحية: كريغ تايلور افتتاحية بقلم كريغ تايلور: يجب أن يختبر اختبار CAPTCHA ما إذا...

اقراء المزيد