دليل لأمن API

دليل لأمن API

المُقدّمة

واجهات برمجة التطبيقات ضرورية لزيادة الابتكار في اقتصادنا الرقمي.
 
تتوقع شركة Garner، Inc أنه بحلول عام 2020 ، سيكون أكثر من 25 مليار ستتصل الأشياء بالإنترنت.
 
يمثل ذلك فرصة إيرادات متزايدة بـ300 مليار دولار تغذيها API. 
 
ومع ذلك ، تكشف واجهات برمجة التطبيقات عن سطح هجوم أوسع لـ مجرمو الإنترنت.
 
ذلك لأن واجهات برمجة التطبيقات تكشف منطق التطبيق والبيانات الحساسة.
 
تستكشف هذه المقالة كيفية تأمين واجهات برمجة التطبيقات.
 
سنناقش REST APIs مقابل SOAP APIs.
 
سنراجع OWASP API Top 10.
 
بالإضافة إلى أننا سنتحدث عن أفضل الممارسات لتأمين واجهات برمجة التطبيقات الخاصة بك.

ما هو اقتصاد API؟

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

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

تقوم واجهات برمجة تطبيقات الويب بتوصيل جانب العميل من التطبيق بجانب الخادم.
 
يتضمن أمان واجهة برمجة تطبيقات الويب ، على سبيل المثال لا الحصر ، التحكم في الوصول والخصوصية. 
 
قد يتجاوز الهجوم على أحد التطبيقات التطبيق من جانب العميل ويركز على واجهات برمجة التطبيقات.
 
غالبًا ما تستخدم الخدمات المصغرة واجهات برمجة التطبيقات لأنها متاحة من خلال الشبكات العامة.
 
يمكن أن تكون واجهات برمجة التطبيقات حساسة لرفض حوادث من نوع DDOS. 
 
REST API Security مقابل SOAP API Security 
 
هناك نوعان رئيسيان من تطبيقات API:
 
  1. REST (نقل تمثيلي للدولة). 
 
      2. SOAP (بروتوكول الوصول إلى كائن بسيط).

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

يدعم تشفير بروتوكول أمان طبقة النقل (TLS) عبر واجهات برمجة تطبيقات REST ، والتي تتواصل عبر HTTP.
 
يقوم TLS بتشفير والتحقق للتأكد من عدم تمكن أي طرف ثالث من قراءة البيانات المرسلة.
 
قراصنة يحاولون سرقة بطاقتك الائتمانية معلومات لن يكون لديه حق الوصول إلى البيانات الخاصة بك. 
 
تستخدم واجهات برمجة تطبيقات REST ترميز كائن JavaScript (JSON). من الأسرع استخدام واجهات برمجة تطبيقات REST من واجهات برمجة تطبيقات SOAP. لا يحتاجون إلى الاحتفاظ بالبيانات ، مما يجعلها أكثر كفاءة.

SOAP API ، الأمان

توفر واجهات برمجة تطبيقات SOAP آلية أمان مضمنة تسمى أمان خدمات الويب (أمان WS). يتحققون من المصادقة والترخيص. يستخدمون تشفير XML وتوقيعات XML ورموز SAML.

SOAP هو الأسلوب الصحيح لتوحيد معايير خدمات الويب وتشفيرها. SOAP هو بديل أفضل من REST. 

حدود SOAP لـ XML ولكن REST يمكنها إدارة أي تنسيق بيانات. JSON أسهل في الفهم من XML. يوفر استخدام REST لنقل البيانات المال على تكاليف البنية التحتية للكمبيوتر.

إدارة API

تساعد إدارة API الشركات على صنع مواردها الرقمية. 

فيما يلي بعض الطرق لإدارة أمان واجهة برمجة التطبيقات:

1. المصادقة

مصادقة HTTP الأساسية هي طريقة للعميل للمصادقة مع عبّارة API.

2. مصادقة OAuth2.0

الآلية القياسية للتفويض هي OAuth 2.0.
 
يسمح إطار عمل تفويض OAuth 2.0 لطرف ثالث بالوصول المحدود إلى خدمة HTTP.
 
يعمل هذا عن طريق تمكين تطبيق الجهة الخارجية من الوصول نيابةً عنه. 
 
 في سياق تدفقات مصادقة OAuth ، هناك عدد قليل من الخيارات المختلفة.
 
تتضمن تدفقات OAuth المعتمدة ما يلي:
 
  • تدفق كلمة مرور اسم المستخدم: حيث يكون للبرنامج وصول مباشر إلى بيانات اعتماد المستخدم.
 
  • تدفق خادم الويب: حيث يمكن للخادم حماية سر المستهلك.
 
  • تدفق وكيل المستخدم: تستخدمه التطبيقات التي لا يمكنها تخزين سر العميل.
 
في مصادقة OAuth2.0 ، سيرسل المستخدم بيانات الاعتماد في نص الطلب. مثل المصادقة الأساسية ولكن أيضًا تقديم الرموز المميزة. يتم تخزين الرموز على جانب الخادم. يستدعي نفس الرمز الخدمة أي عدد من المرات حتى تنتهي صلاحيتها. يمكن للمستخدمين التحديث للحصول على الجديد.
 
المشكلة هي أن هذه الطريقة تنتج المزيد من الرموز المميزة. ستؤدي الرموز المميزة منتهية الصلاحية على الخادم إلى زيادة تحميل الخادم.

3. مصادقة JSON Web Token

رمز JWT هو كائن JSON و base64 مشفر وموقع بمفتاح مشترك. يضمن JWT أن مستخدمًا محددًا فقط يمكنه إنشاء رمز مميز فريد. JWTs غير مشفرة. أي شخص لديه حق الوصول إلى الرمز المميز سيحصل على البيانات.

فوائد JWT

  • يحتوي الرمز المميز على جميع المعلومات اللازمة لمصادقة المستخدم.
  • من السهل تجنب الاعتماد على خوادم المصادقة المركزية وقواعد البيانات.
  • يستلزم التحقق فحص التوقيع وعدة عوامل أخرى.
  •  JWT هو رمز متوسط ​​العمر مع تاريخ انتهاء محدد بين بضعة أسابيع إلى أطول
  • قابلية التوسع على أجهزة خادم الويب المعاصرة سهلة ...

4. تواقيع HTTP

في JWT ، يحتوي رأس التفويض على تشفير base64 وتوقيعه. إذا حصل أي شخص على رمز JWT وطلب ، فيمكنه تحديث نص طلب HTTP. تسمح تواقيع HTTP للعميل بتوقيع رسالة HTTP. لذلك ، يمكن لهؤلاء الآخرين لمس الطلب على الشبكة.

تستخدم Amazon و Facebook و Google تواقيع HTTP. في عام 2016 ، دخل توقيع رسائل HTTP حيز التنفيذ. إنه عمل جديد قيد التقدم المواصفات. وفقًا لهذه المواصفات ، فائدة توقيع رسالة HTTP ، لغرض تكامل الرسالة من طرف إلى طرف. يمكن للعميل المصادقة بنفس الآلية دون الحاجة إلى العديد من الحلقات.

فهم الثغرات الأمنية لواجهة برمجة التطبيقات

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

إذا كان هناك أي خط أساس يجب أن تسعى المنظمات من أجله ، فإنه يقهر هذا OWASP API Security Top 10 مدرج أدناه.

OWASP API الأمن TOP 1O

واجهة برمجة التطبيقات 1: تفويض مستوى الكائن المكسور

واجهة برمجة التطبيقات 2: مصادقة مكسورة

واجهة برمجة التطبيقات 3: التعرض المفرط للبيانات

واجهة برمجة التطبيقات 4: نقص الموارد ومعدل السعر

واجهة برمجة التطبيقات 5: مصادقة مستوى الوظيفة المعطلة

API6: تعيين جماعي

واجهة برمجة التطبيقات 7: خطأ في التكوين الأمني

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

واجهة برمجة التطبيقات 9: إدارة الأصول غير الصحيحة

واجهة برمجة التطبيقات 10: التسجيل والمراقبة غير كافيين

أفضل الممارسات الأمنية API

فيما يلي بعض الطرق الأكثر شيوعًا لتحسين أمان واجهة برمجة التطبيقات:

 

  1. حدد نقاط الضعف الخاصة بك. 

 

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

 

  1. ضع الحصة والاختناق.

 

ضع حصة على عدد المرات التي تتصل فيها واجهات برمجة التطبيقات الخاصة بك وتحقق من الاستخدام في السجل. يظهر سوء استخدام واجهة برمجة التطبيقات (API) عادةً من خلال ارتفاع في عدد المكالمات. 

 

  1. استخدم بوابة API للاتصال بواجهة برمجة التطبيقات الخاصة بك. 

 

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

 

  1. استخدم الرموز المميزة.

 

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

 

  1. استخدم التشفير والتوقيعات الرقمية.

 

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

 

  1. ركز على الأمن.

 

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

 

  1. التحقق من صحة الإدخال.

 

لا تقم مطلقًا بنقل البيانات إلى نقطة نهاية عبر واجهة برمجة التطبيقات دون التحقق منها أولاً.

 

  1. استفد من تحديد المعدل. 

 

يمكن أن يساعد تقييد الطلبات في منع هجمات رفض الخدمة.

 

  1. استخدم نظام مصادقة وترخيص قوي. 

 

عندما لا تفرض واجهات برمجة التطبيقات المصادقة ، تحدث المصادقة المقطوعة.

استخدم تقنيات تسجيل الدخول والتفويض الراسخة ، مثل OAuth2.0 و OpenID Connect.

وفي الختام

لقد قمنا بمراجعة OWASP API Security أهم 10 ثغرات أمنية لحماية API بشكل أفضل.
 
يمكننا إدارة إدارة المخاطر باستخدام تقنيات المصادقة والترخيص الراسخة.
 
على سبيل المثال ، توقيعات HTTP ، التي تستخدمها كل من Amazon و Facebook و Google.
 
لقد راجعنا أفضل ممارسات API الأخرى بما في ذلك استخدام الرموز والتشفير.
 
لقد تطرقنا أيضًا إلى التوقيعات الرقمية ، فضلاً عن أهمية التحقق من صحة المدخلات.
 
اقرأ مقالتنا حول أفضل ممارسات أمان API في 2022 لمزيد من المعلومات حول OWASP API Security Top 10.
أخبار الأمن السيبراني حول تهديدات برامج الفدية والبرامج الضارة.

مخدرات لندن تتعرض لهجوم LockBit Ransomware، برنامج التسجيل في قاعة المحكمة يقدم برامج ضارة: موجز أخبار الأمن السيبراني الخاص بك

مخدرات لندن تتعرض لهجوم LockBit Ransomware، برنامج التسجيل في قاعة المحكمة يقدم برامج ضارة: تقرير إخباري لأخبار الأمن السيبراني الخاص بك مخدرات لندن التي تتعرض لهجوم LockBit Ransomware، ترفض دفع 25 دولارًا

اقرأ المزيد »