تم اكتشاف ثغرة أمنية مؤخراً في منصة كورسيرا الشهيرة للدورات التدريبية عبر الإنترنت. وتعود المشكلة إلى واجهة برمجة التطبيقات (API)، مما يُرجّح أن يكون المخترقون قد استغلوا ثغرة "BOLA" لفهم تفضيلات المستخدمين للدورات التدريبية والتأثير على اختياراتهم.
علاوة على ذلك، يُعتقد أيضاً أن الثغرات الأمنية التي تم الكشف عنها مؤخراً ربما تكون قد كشفت بيانات المستخدمين قبل إصلاحها. وقد اكتشف هذه الثغرات باحثون في شركة Checkmarx المتخصصة في اختبار أمان التطبيقات ، وتم نشرها الأسبوع الماضي.
تتعلق نقاط الضعف بمجموعة متنوعة من واجهات برمجة التطبيقات الخاصة بـ Coursera ، وقد قرر الباحثون التعمق أكثر في أمن Coursera نظرًا لشعبيتها المتزايدة من خلال التحول إلى العمل والتعلم عبر الإنترنت بسبب جائحة COVID-19.
بالنسبة لأولئك الذين ليسوا على دراية بـ Coursera ، يجب أن تعلم أن هذه شركة لديها 82 مليون مستخدم وتعمل مع أكثر من 200 شركة وجامعة. تشمل الشراكات البارزة جامعة إلينوي ، وجامعة ديوك ، وجوجل ، وجامعة ميشيغان ، وآلات الأعمال الدولية ، وإمبريال كوليدج لندن ، وجامعة ستانفورد ، وجامعة بنسلفانيا.
تم اكتشاف العديد من المشكلات في واجهة برمجة التطبيقات (API)، بما في ذلك تعداد المستخدمين/الحسابات عبر وظيفة إعادة تعيين كلمة المرور، وعدم كفاية الموارد مما يحد من استخدام كلٍ من واجهات برمجة تطبيقات GraphQL وREST، بالإضافة إلى إعدادات GraphQL غير الصحيحة. وعلى وجه الخصوص، تتصدر قائمة هذه المشكلات مشكلة خلل في نظام المصادقة على مستوى الكائنات.
عند التفاعل مع تطبيق الويب Coursera كمستخدمين عاديين (طلاب) ، لاحظنا أنه تم عرض الدورات التي تم عرضها مؤخرًا في واجهة المستخدم. لتمثيل هذه المعلومات ، نكتشف طلبات GET متعددة لواجهة برمجة التطبيقات لنفس نقطة النهاية: /api/userPreferences.v1/[USER_ID-lex.europa.eu~ [PREFERENCE_TYPE}.
تُوصَف ثغرة BOLA API بأنها تؤثر على تفضيلات المستخدم. وباستغلال هذه الثغرة، يُمكن حتى للمستخدمين المجهولين الوصول إلى تفضيلاتهم وتغييرها. كما تُسرّب بعض التفضيلات، مثل الدورات التدريبية والشهادات التي تمّت مشاهدتها مؤخرًا، بيانات وصفية. يُمكن أن تُعرّض عيوب BOLA API نقاط النهاية التي تتعامل مع مُعرّفات الكائنات، مما قد يفتح الباب أمام هجمات أوسع نطاقًا.
"كان من الممكن إساءة استخدام هذه الثغرة الأمنية لفهم تفضيلات الدورة التدريبية للمستخدمين عمومًا على نطاق واسع ، ولكن أيضًا لتحريف خيارات المستخدمين بطريقة ما ، حيث أثر التلاعب في نشاطهم الأخير على المحتوى المعروض على الصفحة الرئيسية Coursera المستخدم ، "شرح الباحثون.
يقول الباحثون: "لسوء الحظ ، فإن مشاكل التفويض شائعة جدًا مع واجهات برمجة التطبيقات". "من المهم جدًا جعل عمليات التحقق من صحة التحكم في الوصول مركزية في مكون واحد ، واختباره جيدًا ، واختباره باستمرار ، وصيانته بشكل فعال. يجب مراجعة نقاط نهاية API الجديدة ، أو التغييرات التي تطرأ على النقاط الحالية ، بعناية في مقابل متطلبات الأمان الخاصة بها. "
لاحظ الباحثون أن مشاكل الترخيص شائعة جدًا مع واجهات برمجة التطبيقات ، ومن ثم فمن المهم تركيز عمليات التحقق من صحة التحكم في الوصول. يجب أن يتم القيام بذلك من خلال مكون صيانة واحد تم اختباره جيدًا ومستمر.
تم إبلاغ فريق أمن كورسيرا بالثغرات المكتشفة في 5 أكتوبر. وفي 26 أكتوبر، تلقت الشركة تأكيدًا باستلام التقرير والعمل على حل المشكلة. ثم راسلت كورسيرا شركة Cherkmarx موضحةً أنها حلت المشكلات التي ظهرت بين 18 ديسمبر و2 يناير، ثم أرسلت تقرير إعادة اختبار يتضمن مشكلة جديدة. وأخيرًا، في 24 مايو، أكدت كورسيرا إصلاح جميع المشكلات.
على الرغم من الوقت الطويل نسبيًا من الكشف إلى التصحيح ، قال الباحثون إن فريق كورسيرا الأمني كان من دواعي سروري العمل معه.
وخلصوا إلى أن "مهنيتهم وتعاونهم ، فضلاً عن الملكية السريعة التي تحملوها ، هي ما نتطلع إليه عند التعامل مع شركات البرمجيات".
المصدر: https://www.checkmarx.com