أخبار تقنية

أسرار مخبأة في PyPI: كنز من المكتبات البايثونية

يستضيف PyPI، وهو اختصار لـ Python Package Index، أكثر من 20 تيرابايت من الملفات المتاحة مجانًا للاستخدام في مشاريع Python. إذا سبق لك أن كتبت pip install (اسم الحزمة)، فمن المحتمل أن يكون قد سحب تلك الحزمة من PyPI. الكثير من الناس يستخدمونه أيضًا. سواء أكان ذلك GitHub أو PyPI أو غيرها، يشير التقرير إلى أن "الحزم مفتوحة المصدر تشكل ما يقدر بنحو 90٪ من التعليمات البرمجية التي يتم تشغيلها في الإنتاج اليوم." من السهل معرفة سبب ذلك عندما تساعد هذه الحزم المطورين على تجنب إعادة اختراع ملايين العجلات كل يوم.

متابعه مكسي نيوز 

PyPI…..تشتهر GitGuardian بمواقعها السنوية حالة الأسرار الامتداد تقرير. في تقريرهم لعام 2023، وجدوا أكثر من 10 ملايين كلمة مرور مكشوفة ومفاتيح API وبيانات اعتماد أخرى مكشوفة في التزامات GitHub العامة.

ولم تسلط الوجبات السريعة في تقريرهم لعام 2024 الضوء على 12.8 مليون فقط جديد أسرار مكشوفة في GitHub، ولكن رقمًا في مستودع حزم Python الشهير بايبي.

يستضيف PyPI، وهو اختصار لـ Python Package Index، أكثر من 20 تيرابايت من الملفات المتاحة مجانًا للاستخدام في مشاريع Python.

إذا سبق لك أن كتبت pip install (اسم الحزمة)، فمن المحتمل أن يكون قد سحب تلك الحزمة من PyPI. الكثير من الناس يستخدمونه أيضًا.

سواء أكان ذلك GitHub أو PyPI أو غيرها، يشير التقرير إلى أن “الحزم مفتوحة المصدر تشكل ما يقدر بنحو 90٪ من التعليمات البرمجية التي يتم تشغيلها في الإنتاج اليوم.

من السهل معرفة سبب ذلك عندما تساعد هذه الحزم المطورين على تجنب إعادة اختراع ملايين العجلات كل يوم.

وفي تقرير عام 2024، أبلغت GitGuardian عن العثور على أكثر من 11000 برنامج مكشوف فريد الأسرار، مع إضافة 1000 منها إلى PyPI في عام 2023. هذا ليس كثيرًا مقارنة بـ 12.8 مليون سر جديد تمت إضافته إلى GitHub في عام 2023، لكن GitHub أكبر من حيث الحجم.

والحقيقة الأكثر إثارة للقلق هي أنه من بين الأسرار التي تم تقديمها في عام 2017، ما يقرب من 100 منها لا تزال صالحة بعد 6 إلى 7 سنوات.

لم يكن لديهم القدرة على التحقق من جميع الأسرار للتأكد من صحتها.

ومع ذلك، تم اكتشاف أكثر من 300 سر فريد وصحيح.

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

على الرغم من أن GitGuardian لديه المئات من أدوات كشف الأسرار، فقد قام بتطويرها وتحسينها على مر السنين، وكانت بعض الأسرار الأكثر شيوعًا التي اكتشفتها في دراستها الشاملة لعام 2023 هي مفاتيح OpenAI API، ومفاتيح Google API، ومفاتيح Google Cloud.

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

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

من المنطقي الآن أنه إذا تم نشر مفتاح في مستودع عام مثل GitHub أو PyPI، فيجب اعتباره مخترقًا. في الاختبارات، com.honeytokens (نوع من مفتاح واجهة برمجة التطبيقات “المُعدَّل” مع عدم إمكانية الوصول إلى أي موارد) تم اختبار صحته بواسطة الروبوتات في غضون دقيقة من نشره على GitHub.

في الواقع، تعمل رموز العسل بمثابة “الكناري” لعدد متزايد من المطورين.

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

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

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

سواء كنت تلتزم بأسرار إلى GitHub، أو PyPI، أو NPM، أو أي مجموعة عامة من التعليمات البرمجية المصدر، فإن أفضل خطوة أولى عندما تكتشف تسرب سر ما هي إبطاله.

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

حتى لو لم تكتشف أي استخدام غير مصرح به، يمكنك يجب افترض أن شخصًا غير مصرح به وخبيثًا يمتلكه الآن.

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

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

باختصار، أينما تقوم بتخزين أو نشر كود المصدر الخاص بك، سواء كان مستودعًا خاصًا أو سجلًا عامًا، يجب عليك اتباع بعض القواعد البسيطة:

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

إذا اتبعت هذه الخطوات، فقد لا تضطر إلى تعلم الدروس التي ربما تعلمها 11000 من أصحاب الأسرار بالطريقة الصعبة من خلال نشرها على PyPI.

إدارة ميكسي نيوز

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

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

زر الذهاب إلى الأعلى