استكشاف جرد API
¶
بمجرد أن يقوم وحدة اكتشاف API ببناء فهرس نقاط النهاية لديك (جرد API الخاص بك)، يمكنك استكشافه في قسم اكتشاف API في لوحة تحكم Wallarm. تعلم من هذه المقالة كيف تتنقل خلال البيانات المكتشفة.
نقاط النهاية¶
استكشف جرد API المكتشف الخاص بك باستخدام قسم اكتشاف API في سحابة US أو EU.
في كل مرة تفتح قسم اكتشاف API، ترى جميع نقاط النهاية المكتشفة والتغييرات التي حدثت خلال الأسبوع الماضي. بواسطة فلتر التغييرات منذ، يمكنك تغيير الأسبوع الأخير
إلى أي فترة أخرى.
بشكل افتراضي، يتم فرز نقاط النهاية حسب أسماء المضيف/نقطة النهاية (وتجميعها حسب المضيفين). إذا قمت بالفرز حسب الضربات أو المخاطر، يختفي التجميع - للرجوع إلى الافتراضي، انقر مرة أخرى على عمود المضيفين/نقطة النهاية.
خارجية مقابل داخلية¶
نقاط النهاية القابلة للوصول من الشبكة الخارجية هي الاتجاهات الرئيسية للهجوم. وبالتالي، من المهم رؤية ما هو متاح من الخارج والانتباه إلى نقاط النهاية هذه في المقام الأول.
تقسم Wallarm تلقائيًا واجهات API المكتشفة إلى خارجية وداخلية. يُعتبر المضيف مع جميع نقاط النهاية الخاصة به داخليًا إذا كان موجودًا على:
-
عنوان IP خاص أو عنوان IP محلي
-
نطاق علوي عام (على سبيل المثال: localhost، dashboard، إلخ.)
في الحالات الأخرى، يُعتبر المضيفون خارجيين.
بشكل افتراضي، يتم عرض قائمة بجميع مضيفي API (الخارجيين والداخليين). في جرد API المكتشف، يمكنك عرض واجهات API الداخلية والخارجية الخاصة بك بشكل منفصل. للقيام بذلك، انقر فوق خارجي أو داخلي.
التصفية¶
من بين مجموعة واسعة من فلاتر نقاط النهاية لـAPI، يمكنك اختيار تلك التي تتوافق مع غرض التحليل الخاص بك، على سبيل المثال:
-
نقاط النهاية التي تعرضت للهجوم فقط والتي يمكنك فرزها بحسب عدد الضربات.
-
البحث عن نقاط النهاية الأكثر عرضة للخطر والتي تتميز بمعالجة بيانات حساسة والثغرات النشطة ذات مستوى الخطر العالي. استغلال الثغرات ذات مستوى الخطر العالي يسمح للمهاجمين بأداء العديد من الإجراءات الخبيثة مع النظام بما في ذلك سرقة البيانات الحساسة التي تقوم نقطة النهاية بمعالجتها/تخزينها.
-
البحث عن نقاط النهاية الشاردة: الظل، اليتيمة والزومبي.
-
البحث عن نقاط النهاية التي تم تغييرها أو اكتشافها حديثًا في الأسبوع الماضي والتي تعالج بيانات الهوية الشخصية. يمكن أن يساعد هذا النوع من الطلبات في البقاء على اطلاع بالتغييرات الحرجة في واجهات الـAPI الخاصة بك.
-
البحث عن نقاط النهاية التي يتم استخدامها لتحميل البيانات إلى الخادم الخاص بك بواسطة مكالمات PUT أو POST. نظرًا لأن مثل هذه نقاط النهاية هدف متكرر للهجوم، يجب تأمينها بشكل جيد. باستخدام هذا النوع من الطلبات يمكنك التحقق من أن نقاط النهاية معروفة للفريق ومؤمنة بشكل جيد ضد الهجمات.
-
البحث عن نقاط النهاية التي تعالج بيانات بطاقة بنك العملاء. بهذا الطلب، يمكنك التحقق من أن البيانات الحساسة يتم معالجتها فقط بواسطة نقاط النهاية المؤمنة.
-
البحث عن نقاط النهاية لنسخة API مهجورة (على سبيل المثال بالبحث عن
/v1
) والتأكد من أن العملاء لا يستخدمونها.
يمكن تصدير جميع البيانات المفلترة في OpenAPI v3 لتحليل إضافي.
تفاصيل نقطة النهاية¶
بالنقر على نقطة النهاية، يمكنك أيضًا العثور على تفاصيل نقطة النهاية، بما في ذلك إحصائيات الطلبات، الرؤوس، البرامترات المطلوبة والاختيارية مع أنواع البيانات ذات الصلة:
تشمل معلومات كل بارامتر:
-
اسم البارامتر والجزء من الطلب الذي ينتمي إليه هذا البارامتر
-
معلومات حول تغييرات البارامتر (جديد، غير مستخدم)
-
وجود ونوع البيانات الحساسة التي يتم نقلها بواسطة هذا البارامتر، بما في ذلك:
- بيانات فنية مثل عناوين IP وعناوين MAC
- بيانات الاعتماد مثل المفاتيح السرية وكلمات المرور
- بيانات مالية مثل أرقام بطاقات البنك
- بيانات طبية مثل رقم الترخيص الطبي
- معلومات يمكن تحديد الهوية الشخصية (PII) مثل الاسم الكامل، رقم الجواز أو SSN
-
النوع/التنسيق للبيانات المرسلة في هذا البارامتر
-
التاريخ والوقت اللذين تم تحديث معلومات البارامتر فيهما آخر مرة
التنسيق ونوع البيانات¶
في عمود النوع، تشير Wallarm إلى تنسيق البيانات المحدد من خلال تحليل حركة المرور أو، إذا لم يكن محددًا، نوع بيانات عام.
تحاول Wallarm اكتشاف تنسيقات بيانات متنوعة مثل Int32
، Int64
، Float
، Double
، Datetime
، IPv4
/IPv6
، من بين أمور أخرى. إذا لم يتوافق قيمة مع أي تنسيق بيانات معترف به، تصنف Wallarm تحت نوع بيانات عام، مثل Integer
، Number
، String
، أو Boolean
.
تسمح هذه البيانات بالتحقق من أن القيم ذات التنسيق المتوقع يتم تمريرها في كل بارامتر. يمكن أن تكون عدم التوافق نتيجة لهجوم أو فحص لواجهة API الخاصة بك، على سبيل المثال:
-
يتم تمرير قيم
String
إلى الحقل معIP
-
يتم تمرير قيم
Double
إلى الحقل حيث يجب أن تكون القيمة لا تزيد عنInt32
التباين¶
يمكن أن تتضمن عناوين URL عناصر متنوعة، مثل معرف المستخدم، مثل:
-
/api/articles/author/author-a-0001
-
/api/articles/author/author-a-1401
-
/api/articles/author/author-b-1401
توحد وحدة اكتشاف API هذه العناصر إلى تنسيق {parameter_X}
في مسارات نقاط النهاية، لذلك بالنسبة للمثال أعلاه لن يكون لديك 3 نقاط نهاية، ولكن بدلاً من ذلك سيكون هناك واحدة:
/api/articles/author/{parameter_1}
انقر على نقطة النهاية لتوسيع البرامترات الخاصة بها وعرض النوع الذي تم اكتشافه تلقائيًا للبرامتر المتنوع.
لاحظ أن الخوارزمية تحلل حركة المرور الجديدة. إذا رأيت في لحظة ما عناوين، ينبغي أن تكون موحدة ولكن هذا لم يحدث بعد، امنحها بعض الوقت. بمجرد وصول المزيد من البيانات، ستوحد النظام نقاط النهاية التي تتطابق مع النمط المكتشف حديثًا مع الكمية المناسبة من العناوين المتطابقة.
مراقبة الهجمات على نقاط نهاية API¶
يتم عرض عدد الهجمات على نقاط نهاية API خلال آخر 7 أيام في عمود الضربات. يمكنك طلب عرض نقاط النهاية التي تعرضت للهجوم فقط بتحديد في الفلاتر: الآخرين → نقاط النهاية التي تعرضت للهجوم.
لرؤية الهجمات على نقطة نهاية ما، انقر على الرقم في عمود الضربات:
سيتم عرض قسم الهجمات مع الفيلتر المطبق:
يمكنك أيضًا نسخ عنوان URL لبعض نقاط النهاية إلى الحافظة واستخدامه للبحث عن الأحداث. للقيام بذلك، في قائمة نقطة النهاية هذه حدد نسخ URL.
إنشاء قواعد لنقاط نهاية API¶
يمكنك بسرعة إنشاء قاعدة مخصصة جديدة من أي نقطة نهاية من جرد API:
-
في قائمة نقطة النهاية هذه حدد إنشاء قاعدة. سيتم عرض نافذة إنشاء القاعدة. يتم تحليل عنوان نقطة النهاية إلى النافذة تلقائيًا.
-
في نافذة إنشاء القاعدة، حدد معلومات القاعدة ثم ان