لماذا تصبح الغيوم سحابة رعدية: فشل نشر السحابة

صورة

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

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

بالنسبة للمستخدمين ذوي الخبرة ، هذه ليست مشكلة - بل على العكس ، سيستخدمون الأداة الأكثر ملاءمة للمهمة. ومع ذلك ، بالنسبة للآخرين ، قد لا تفي النتيجة بتوقعاتهم.

تخزين أمازون S3


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

أكثر ناقلات هجوم أمازون S3 شيوعًا التي يستخدمها مجرمو الإنترنت هي:

  • مرافق التخزين العامة للتسجيل ؛
  • اعتراض الحسابات ؛
  • إساءة استخدام الامتيازات.

مشاركة التسجيل


في فبراير 2018 ، تم اكتشاف منجم Monero cryptocurrency على موقع إحدى أكبر الصحف الأمريكية. قام كل قارئ زار الموقع باستخراج عملات معدنية للمجرمين الذين أضافوا شفرة ضارة إلى ملفات جافا سكريبت للمنشور.

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

يمكن استخدام مستودعات Amazon S3 عبر http / https ، وفي هذا الجزء ، قام مسؤولو الموقع بكل شيء بشكل صحيح ، مما أدى إلى تقييد الوصول إلى القراءة فقط. ومع ذلك ، يمكن أيضًا الوصول إلى S3 من خلال بروتوكول AWS الأصلي عبر سطر الأوامر ، ويجب تعيين حقوق الوصول لهذه المكالمات بشكل منفصل ، وبشكل افتراضي ، يُسمح بالوصول إلى التخزين عبر AWS CLI لجميع مستخدمي AWS المعتمدين.

صورة
نتيجة تشغيل أمر وحدة التحكم aws s3api get-bucket-acl --bucket <BUCKET_NAME> للمخزن الافتراضي

لمستخدمي Amazon S3 الجدد ، فإن الحاجة إلى تقييد أذونات القبو المزدوجة ليست واضحة ، مما أدى إلى العديد من الحوادث.

في نهاية عام 2018 ، أعادت AWS تعريف سياسة الأمان من خلال حظر الوصول العام من وحدة التحكم لمستودعات S3 الجديدة ، ولكن لم يتم تطبيق هذه السياسة عند استخدام سطر الأوامر. لا يزال يتعين أن يقتصر الوصول إلى فريق منفصل.

في 2018-2019 ، أصبحت تسوية تخزين S3 واسعة الانتشار. بحث بعض المتخصصين في مجال الأمن والمتسللين الودودين على وجه التحديد عن موارد AWS التي كانت مفتوحة للكتابة وترك ملفات التحذير هناك.

صورة
تحذير مجهول حول تكوين غير آمن لـ AWS S3

حتى أن شخصًا ما عرض خدماته لإعداد معلمات تخزين آمنة:

صورة
تحذير وتقديم خدمات من Pentester Random Robbie

Random Robbie هو الاسم المستعار لـ Robbie Wiggins pentester ، الذي ترك تحذيره في عام 2018 على الآلاف من تخزين S3 مفتوحًا للتسجيل.

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

صورة
مثال على البيانات التي مرت بها مقشدة للمجرمين من

بين ضحايا أعمال Magecart مئات المتاجر عبر الإنترنت ، بما في ذلك العلامات التجارية المعروفة.

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

S3 افتح أدوات بحث التخزين


تساعدك أدوات Slurp و Bucket Stream و s3scanner في العثور على مساحة تخزين قابلة للقراءة والكتابة.

يساعدك Slurp في العثور على أسماء تخزين محتملة لمجال معين والتحقق من أذونات الكتابة فيها:

صورة
مثال على مخرجات Slurp تم إغلاق الوصول عن طريق http.

للتحقق من توفر وحدة التخزين التي تم العثور عليها من خلال AWS CLI ، يمكنك استخدام الأمر get-bucket-acl:

صورة
تم أيضًا إغلاق الوصول إلى المورد من خلال AWS API.

تستخدم الأداة المساعدة s3scanner المكتوبة في Python استدلالًا بسيطًا للعثور على أسماء التخزين الممكنة وتتحقق من الوصول إليها.

صورة
ابحث عن توفر مساحة تخزين S3 وتحقق منها باستخدام s3scanner

تبحث الأداة المساعدة Bucket Stream عن متاجر S3 الضعيفة المحتملة في المصادر العامة ، على سبيل المثال ، في شهادة الشفافية وغيرها.

تسرد الأداة المساعدة AWSBucketDump ملفات المستودعات التي تحتوي أسماؤها على كلمات رئيسية محددة:

صورة
نتيجة الأداة المساعدة AWSBucketDump

باستخدام هذه الأدوات المساعدة ، من ديسمبر 2018 إلى يناير 2019 وجدنا أكثر من 5200 مخزن S3 فريد. حوالي 4400 من هذه كانت متاحة للمرافق سطر الأوامر AWS القياسية. كان 79 منهم فقط متاحين للقراءة و 40 للكتابة. للوصول إلى جزء منهم ، كان من الضروري ببساطة تعيين الحقوق اللازمة.

كيف تتسرب الحسابات


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

صورة
جزء من الكود المنشور على Pastebin بمعرف API AWS ومفتاح صالح

باستخدام هذه البيانات ، يمكن للمهاجم الحصول على جميع الحقوق التي يوفرها حساب هذا التطبيق.

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

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

إذا كان نشر الشهادات بنص واضح في أي مكان فكرة سيئة ، فإن نشرها على GitHub أمر مثير للاشمئزاز فقط ، لأن:

  • لحذف شهادة ، عليك حذفها من جميع النسخ المحفوظة في المستودع ؛
  • - , , ;
  • , , , .

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

صورة
لقطة شاشة من لوحة الفوترة لشركة روسية ، تم استخدام مفتاح واجهة برمجة التطبيقات المسروق لإنشاء العديد من الأجهزة الافتراضية وتعدين العملات المشفرة. المصدر: habr.com/en/post/357764

يمكن أن يصبح تسرب بيانات العملاء أقل إيلامًا ، كما هو الحال في Imperva في عام 2019 . سرق Imperva أيضًا مفتاح واجهة برمجة التطبيقات ودمج جميع بيانات العميل.

يمكن لمجرمي الإنترنت استخدام الحسابات المسروقة للتداول بشكل غير قانوني في خوادم AWS المخصصة ، والتي يجب أن يدفعها المالكون الحقيقيون. في منتدى lolzteam ، وجدنا أكثر من 250 إعلانًا تقدم "Pure Dedicos".

صورة
اعلان على منتدى lolzteam. من سيدفع الأمازون في النهاية؟

المصدر الثالث للتسريبات الرئيسية لـ API هو مجموعة متنوعة من الدورات التدريبية للمبرمجين.

في محاولة لشرح عملية الاتصال بخدمات AWS للمبتدئين بأبسط ما يمكن ، يكرر المؤلفون الممارسة السيئة ، والتي تؤدي في المستقبل إلى حالات جديدة وجديدة من التنازل.

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

يوضح مؤلفو الدورة حول لغة جافا التقدمية والآمنة مثل هذا الموقف اللامبالي تجاه أمان مفاتيح API:

صورة
اللغة مختلفة ، لكن النصيحة هي نفسها - المفاتيح صحيحة في نص البرنامج.

توصياتنا


يشكل التكوين غير الصحيح للخدمات السحابية العديد من المخاطر من الاستخدام غير القانوني لموارد الحوسبة المستأجرة لتعدين العملات المشفرة إلى سرقة البيانات وإدخال الكاشطات عبر الإنترنت. في هذا الصدد ، نوصي بأن يقوم مسؤولو الأمن بتحليل سيناريوهات النشر السحابي لتحديد نقاط الضعف المحتملة قبل اكتمال العملية. توفر نصوص التحقق من السحابة مثل AWS CloudFormation نظرة ثاقبة حول كيفية عمل البنية التحتية الناتجة ، أين تبحث عن إعدادات أو سجلات الأمان غير الصحيحة أو المفقودة. من بين أدوات الأمان التي طورتها Trend Micro ، يوجد منتج يهدف إلى حماية البيئات السحابية - Deep Security لمثيلات Amazon EC2.وأداة المطابقة السحابية تتيح بيئة السحابة الخاصة بالشركة لإعدادات غير آمنة.

بالنسبة للمبرمجين الذين يستخدمون مفاتيح AWS API للتفاعل مع مستودعات S3 ، نقترح التبديل إلى العمل من خلال AWS Secrets Manager و Docker Secrets و Blackbox و git-secrets وغيرها من الأدوات المماثلة التي ستسمح بتجنب الاختراق والاستخدام الضار لبيانات الاعتماد المخزنة جنبًا إلى جنب مع النسخة الأصلية نصوص التطبيق.

All Articles