تخطَّ إلى المحتوى

Socket - Cheatsheet اكتشاف سلسلة التوريد والحزم الخبيثة

Socket - Cheatsheet اكتشاف سلسلة التوريد والحزم الخبيثة

Socket هي أداة أمان سلسلة التوريد البرمجية تركز على اكتشاف الحزم الخبيثة من الناحية السلوكية بدلاً من مطابقة CVE المعروفة فقط. تفتش ما تفعله الحزمة بالفعل — البرامج النصية المثبتة وإمكانية الوصول إلى الشبكة والنظام الملفات والقدرات الخطرة الأخرى — لالتقاط المحاكيات والإصدارات المخترقة التي قد تفوتها الماسحات الضوئية المستندة إلى التوقيعات. وهي تغطي الأنظمة الإيكولوجية بما في ذلك npm و PyPI و Go و Maven والأخرى، وتتكامل مع سير عمل المطور عبر CLI و GitHub app و CI.

التثبيت

الطريقةالأمر
npm (CLI)npm install -g @socketsecurity/cli
npx (بدون تثبيت)npx @socketsecurity/cli --help
Homebrewbrew install socket
pip (Python CLI)pip install socketsecurity
GitHub Appثبت تطبيق Socket من GitHub Marketplace
المصادقةsocket login (إعداد رمز API)

أوامر CLI الأساسية

الأمرالوصف
socket scan create .إنشء فحص سلسلة توريد جديد للمشروع الحالي
socket scan listقائمة الفحوصات السابقة للمؤسسة
socket scan view <ID>عرض نتائج فحص معين
socket package score npm reactاحصل على درجة سلسلة التوريد للحزمة
socket npm install <pkg>غلاف حول npm يتحقق من الحزم قبل التثبيت
socket npx <pkg>npx آمن الذي يفحص الحزمة أولاً
socket ciتشغيل فحص معدل لـ CI (خروج غير صفري عند المشاكل)
socket --helpمرجع أوامر كامل

ما يشير إليه Socket

القدرة/الإشارةلماذا تنبه
البرامج النصية للتثبيتpostinstall hooks هو متجه برامج ضارة شائعة
إمكانية الوصول إلى الشبكةالاتصالات الخارجة غير المتوقعة عند التثبيت/الوقت التشغيلي
إمكانية الوصول إلى نظام الملفاتقراءة المسارات الحساسة (مفاتيح SSH وملفات env)
تنفيذ Shell/processتوليد Shells أو العمليات الفرعية
الرمز المشفرحمولات Minified/encoded الإخفاء السلوك
المحاكياتالأسماء التي تحاكي الحزم الشهيرة
الاستطلاع/المصادرةأنماط جمع البيانات والمصادرة

درجات الحزم

# افحص تبعية واحدة قبل إضافتها
socket package score npm left-pad
socket package score pypi requests

# قارن المخاطر بين مرشح وبديل
socket package score npm chalk

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

تكامل CI / GitHub

التكاملالسلوك
تطبيق GitHubتعليقات على PRs التي تقدم تغييرات تبعية محفوفة بالمخاطر
socket ciفشل خط الأنابيب عند تجاوز الفحص للعتبات
ملف الإعدادsocket.yml يضبط نوع المشاكل التي تحظر مقابل تحذير
الدراية بالفرقيركز على ما يضيفه PR لتقليل الضوضاء

التكوين (socket.yml)

version: 2
issueRules:
  installScripts: error
  networkAccess: warn
  telemetry: warn
  obfuscatedCode: error
الحقلالغرض
issueRulesاضبط كل قدرة/مشكلة على error أو warn أو ignore
projectIgnorePathsاستبعد المسارات من الفحص

سير العمل الشائع

# فحص التبعية قبل دخولها إلى package.json
socket npm install some-package

# بوابة طلب السحب في CI
socket ci

# تدقيق شجرة التبعية الكاملة للمستودع الموجود
socket scan create . && socket scan list

Socket مقابل SCA التقليدي

الجانبSocketSCA التقليدي (مثل CVE matchers)
الإشارة الأساسيةالسلوك/القدراتمطابقات قاعدة البيانات CVE المعروفة
يلتقط برامج ضارة يوم صفرنعم (سلوكي)لا (يتطلب CVE معروفًا)
اكتشاف المحاكياتنعممحدود
الأفضل في الاقتران معSyft/Grype و SigstoreSocket لتغطية البرامج الضارة

الموارد