Bumblebee: ماسح ضوئي مفتوح المصدر لأجهزة المطورين المبعثرة
BBetter Stack
Computing/SoftwareManagementInternet Technology
Transcript
00:00:00هل تعرف ما هو المزعج في هجمات سلاسل التوريد؟ بحلول الوقت الذي يذعر فيه الجميع،
00:00:04لا يكون السؤال: هل الإنتاج آمن؟ بل يكون: هل قام أي شخص بتثبيت هذا الشيء محلياً؟
00:00:09هذا هو Bumblebee. إنها أداة جديدة مفتوحة المصدر من Perplexity تقوم بمسح جهاز التطوير الخاص بك
00:00:15بحثاً عن الحزم، والإضافات، وتهيئة بروتوكول سياق النموذج (MCP) دون تشغيل مديري الحزم لديك أو تنفيذ
00:00:21كود المشروع. لذا بدلاً من البحث يدوياً، تحصل على جرد محلي في ثوانٍ.
00:00:26سأقوم بتشغيلها مباشرةً. ثم سنتحدث عن الأماكن التي تعمل فيها فعلياً والأماكن التي لا تعمل فيها.
00:00:36حسناً، النموذج القديم كان بسيطاً. افحص المستودع، افحص الحاوية، افحص الإنتاج.
00:00:41لكن هذه ليست الطريقة التي يعمل بها الكثير منا الآن. اليوم، يمكن لجهاز كمبيوتر محمول واحد أن يحتوي على مديري حزم،
00:00:46وإضافات المتصفح، وإضافات المحرر، وأدوات البرمجة بالذكاء الاصطناعي، وعملاء محليين، كل هذا يعيش معاً.
00:00:53هذا قدر كبير من الثقة في جهاز واحد. قامت Perplexity ببناء Bumblebee داخلياً لهذا
00:00:58السبب تحديداً، ثم جعلتها مفتوحة المصدر قبل بضعة أيام فقط. Bumblebee عبارة عن ماسح ضوئي ثنائي للقراءة فقط
00:01:05يقوم بجرد الحزم، وإضافات المحرر، وإضافات المتصفح، وتكوينات أدوات الذكاء الاصطناعي من البيانات الوصفية
00:01:11المحلية. لا توجد أوامر مثل MPMLS، أو pip show، ولا تشغيل كود مشروع عشوائي، فقط بيانات وصفية. لنحاول تشغيلها.
00:01:19إذا كنت تستمتع بأدوات البرمجة التي تسرع سير عملك، فتأكد من الاشتراك. لدينا فيديوهات تصدر طوال
00:01:24الوقت. حسناً. أولاً، علينا تثبيت هذا الشيء باستخدام go install من GitHub.
00:01:29هذا يمنحنا ملفاً ثنائياً واحداً بلغة Go، لا يوجد خادم (daemon)، ولا خدمة. الآن لنقم بتشغيل الاختبار الذاتي. كل ما علي
00:01:37فعله هو تشغيل Bumblebee self test. ونأمل أن نحصل على نتيجة الاختبار الذاتي. حسناً. جيد. يمكن للماسح الضوئي
00:01:46اكتشاف بيانات الاختبار المعروفة لديه بشكل صحيح. هذا ما فعله هذا الاختبار. الآن لنقم بتشغيل فحص أساسي.
00:01:52كل ما سنفعله هو تشغيل Bumblebee scan profile. سنختار baseline وسنضع
00:01:57ملف nd.json الخاص بنا. هذا هو الفحص الذي نستخدمه لجرد نقاط نهاية المطورين العادية. إنه يتحقق من المسارات الشائعة،
00:02:05وحزم المستوى العام والمستوى المستخدم، وإضافات المحرر، وإضافات المتصفح، وتكوينات MCP المدعومة.
00:02:10الآن لنلقِ نظرة على المخرجات. سأقوم بتشغيل أمر head هنا. وهذا هو الشيء الكبير الذي تقوم به Bumblebee
00:02:17الآن. كل سطر هو سجل منظم. نحصل على النتيجة. لذا تحصل على النظام البيئي، اسم الحزمة،
00:02:25الإصدار، ملف المصدر، مستوى الثقة، البيانات الوصفية، وتعرف المكان الذي عثرت فيه Bumblebee على الملف. والآن،
00:02:31بدلاً من أن نسأل، هل ربما قمت بتثبيت هذا في مكان ما في النظام؟ يمكننا الآن رؤيته
00:02:36هنا مباشرة. ولأن هذا تحليل بيانات وصفية للقراءة فقط، فإن Bumblebee لا تستدعي NPM. وهي لا
00:02:43تستورد أي حزم Python ولا تقوم ببناء مشروع Go الخاص بك. كل ما تفعله هو قراءة
00:02:50الملفات. وهذا هو سبب كونها مفيدة أثناء وقوع حادث. إذا كان لديك Go مثبتاً، فهذه هي
00:02:55النقطة التي قد أوقف فيها الفيديو، وربما تجربها على جهازك الخاص. من السهل جداً تشغيلها.
00:03:00حسناً، رائع. لكن لماذا لا تعتبر مجرد ماسح أمني آخر؟ لأننا نمتلك هذه الأدوات بالفعل. الآن،
00:03:06للوهلة الأولى، قد تظن بعض الأشياء. إنها أداة أخرى لـ SCA، لكن هذا ليس ما تفعله
00:03:12هذه الأداة في الواقع. أدوات SCA تتعلق بمعظمها بتبعيات تطبيقك. وأدوات SBOM تتعلق بما قمت بشحنه.
00:03:19أدوات EDR تتعلق بما قمت بتنفيذه. أما Bumblebee فتتعلق بحالة المطور المحلية. لذا تخيل أن استشارة
00:03:26أمنية حول حزمة مخترقة قد صدرت. أنت بحاجة لمعرفة أجهزة الكمبيوتر المحمولة التي قد تكون معرضة للخطر. الخطوة البديهية
00:03:32هي أن تطلب من الجميع تشغيل أوامر مدير الحزم، لكن هذا هو الشيء الخطأ تماماً هنا. إذا كنا
00:03:38نبحث عن شيء ضار، فأنت لا تريد لأمرك أن يقوم عن غير قصد بتنفيذ السلوك
00:03:42الضار. لذا Bumblebee واضحة ومباشرة. اقرأ البيانات الوصفية، أصدر المخزون، طابق الانكشافات المعروفة،
00:03:49ثم اخرج. لقد انتهى الأمر. لديها ثلاثة ملفات تعريف للفحص. الأول هو baseline (الأساسي). هذا هو الفحص
00:03:55الدوري خفيف الوزن. إنه ينظر إلى الحزم العالمية، وسلاسل أدوات مستوى المستخدم، والإضافات،
00:04:02وتهيئة MCP. أساساً ما هو موجود عادةً على جهاز المطور هذا. هذا هو السؤال الذي
00:04:09تمنحنا إجابته. ثم ننتقل إلى المشروع. هذا مخصص لمجلدات مساحة العمل المعروفة
00:04:14مثل code، أو source، أو work. استخدم هذا عندما تهتم بالملفات المقفلة عبر
00:04:20مجلدات التطوير الفعلية. ويمكننا حتى جعلها تتعمق أكثر. هذا هو وضع الاستجابة للحوادث.
00:04:26أنت تشير بها إلى مسارات صريحة، أو حتى شيء واسع النطاق مثل home، عادةً مع كتالوج انكشاف وحد
00:04:32زمني. لذا قد يكون سير عملك الطبيعي هو Bumblebee scan profile baseline. حسناً. عندما يحدث شيء سيء،
00:04:38تنتقل إلى فحص أعمق، Bumblebee scan profile، يمكنك التعمق أكثر باستخدام هذا الأمر هنا.
00:04:44هذه هي حقاً العملية لكل هذا، الفحص الأساسي عندما تكون الأمور هادئة، وفحص عميق عندما يكون هناك دخان.
00:04:51والتغطية هي ما يجعل هذا الأمر مثيراً للاهتمام حقاً. يمكن لـ Bumblebee البحث عبر npm، pnpm، yarn، bun،
00:04:58وحدات Go، سمها ما شئت. بالإضافة إلى ذلك، يمكنها النظر في تهيئة MCP JSON المدعومة. تلك ميزة كبيرة لأنها
00:05:06في الوقت الحاضر، أصبحت تهيئة MCP هي ملفات ENV الجديدة. لدينا منها في كل مكان في نظامنا. Bumblebee أيضاً
00:05:13تخرج نتائج NDJSON. الآن، سيكره بعض الناس ذلك. لكن طريقة أخرى للنظر إليها هي
00:05:18أنها تعني أنه يمكنك توجيهها إلى JQ، وشحنها إلى ملف، وجمعها من خلال MDM، أو استيعابها في SIEM،
00:05:25أو تسليمها إلى سير عمل وكيلي آخر. إنها تحاول فقط أن تكون بنية تحتية مملة وقابلة للبرمجة. وبالنسبة لهذا
00:05:32النوع من المشاكل، ربما يكون الملل هو الأفضل على أي حال. الآن، إنها سريعة. إنها سريعة حقاً. إنها ملف ثنائي Go واحد
00:05:38بدون أي تبعيات مكتبة غير قياسية. هذه نقطة انطلاق صديقة جداً للمطورين. هذا
00:05:45يعني أنها آمنة بالتصميم. نهج القراءة فقط ليس تفصيلاً صغيراً. أثناء حادث في سلسلة التوريد،
00:05:51مجرد تشغيل مدير الحزم ورؤية ما سيحدث. هذه ليست دائماً أفضل خطة. إذا كانت الحزمة التي
00:05:58تنظر إليها تحتوي على نصوص تثبيت ضارة أو سلوك إضافي غريب، فأنت لا تريد أن يكون ماسحك الضوئي
00:06:03هو الشيء الذي يطلق ذلك عن غير قصد. الآن، هذا يملأ أيضاً فجوة حقيقية. معظم الفرق لديها بعض الرؤية
00:06:10على CI، وبعض الرؤية في حاوية الإنتاج، وبعض الرؤية على نقطة النهاية. لكن جهاز المطور يمكن
00:06:17أن يصبح فوضوياً. فهو يحتوي على مشاريع غير منتهية، استنساخات قديمة، حزم عالمية، بيئات افتراضية للاختبار،
00:06:23أدوات الذكاء الاصطناعي، كل الأشياء التي لا تظهر أبداً في مخزونك الرسمي النظيف. تمنحك Bumblebee
00:06:30طريقة عملية لرؤية تلك الحالة المحلية. وأخيراً، تغطية تهيئة الذكاء الاصطناعي تأتي في الوقت المناسب. الوكلاء المحليون،
00:06:36خوادم MPC، وسير عمل استدعاء الأدوات تتحرك بسرعة. ولكن ضع هذا في اعتبارك الآن أيضاً، بينما
00:06:43أنت ستستخدم Bumblebee. هذه الأداة جديدة تماماً. أعني أنها جديدة جداً جداً حيث أنها صدرت للتو. لذا
00:06:49توقع تغييرات. إنها تركز على نظامي Mac OS و Linux في الوقت الحالي. تدفق كتالوج الانكشاف لطيف، لكنه
00:06:54يعني أيضاً أن Bumblebee تصبح أكثر فائدة عندما يكون لديك بيانات استشارية جيدة. وهي ليست EDR، أليس كذلك؟
00:07:02إنها تجيب على سؤال أضيق. ما هي الحزم، والإضافات، وتهيئة أدوات التطوير الموجودة على هذا
00:07:09الجهاز. وهل يطابق أي منها شيئاً نعرف بالفعل أنه سيء. هذه هي النقطة. هذه لا تحل محل
00:07:14مجموعة أدواتك الأمنية. إنها تملأ الجزء الذي ربما لا تراه مجموعة أدواتك الأمنية بوضوح. لذا
00:07:19هل يجب أن تستخدم Bumblebee حقاً؟ إجابتي هي نعم، خاصةً إذا كان عملك اليومي
00:07:24يتضمن NPM، Go، VS Code، Cursor، Claude، الخوادم، وهذا النوع من الأشياء. قم بتشغيل فحص أساسي مرة واحدة في الأسبوع،
00:07:32أليس كذلك؟ إنه أمر واحد فقط. Bumblebee scan your profile، وستقوم بما أريتك إياه هنا.
00:07:37الآن لديك لقطة لما هو موجود على جهازك. ألقِ ملف NDJSON في مكان مركزي.
00:07:43ثم عندما يقع حادث، يمكنك البحث عبر كل شيء بدلاً من سؤال الجميع في Slack،
00:07:49مرحباً، هل لدى أي شخص هذا؟ تخبرك Bumblebee بما تعرضه أجهزة المطورين حالياً من خلال
00:07:55بيانات وصفية للحزمة المحلية، وبيانات إضافات المحرر، وتهيئة أدوات الذكاء الاصطناعي المدعومة. هذا مفيد للغاية في الساعة
00:08:02الأولى عندما يسوء أي شيء لأن لا أحد يريد النقاش. إنهم يريدون معرفة من المعرض للخطر، وأين
00:08:08هو، ومدى سرعة إثبات ذلك؟ ولهذا، Bumblebee مقنعة جداً. إنها أداة مفتوحة المصدر قوية جداً
00:08:14حصلنا عليها للتو. إذا كنت تستمتع بأدوات ونصائح البرمجة مثل هذه، فتأكد من الاشتراك في
00:08:18قناة BetterStack.
00:08:20سنراك في فيديو آخر.
Community Posts
No posts yet. Be the first to write about this video!
Write about this video