Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
shai-scan — ماسح CLI بدون تبعيات لتسوية سلسلة التوريد في npm/PyPI. يكتشف الحزم المخترقة في ملفات lockfiles ومؤشرات الاختراق (IOCs) على مستوى النظام من هجمات مثل Mini Shai-Hulud (CVE-2026-45321). | Kitploit
أدوات/GitHubGitHub/digi4care/shai-scan
إدارة مؤشرات الاختراق (IOC)التحليل الثابتماسحات الثغرات الأمنيةتحليل الكودDevSecOpsكشف الأسراراستخبارات التهديداتأمن سلسلة التوريدالاستجابة للحوادث
GitHubdigi4care/shai-scan

shai-scan

ماسح CLI بدون تبعيات لتسوية سلسلة التوريد في npm/PyPI. يكتشف الحزم المخترقة في ملفات lockfiles ومؤشرات الاختراق (IOCs) على مستوى النظام من هجمات مثل Mini Shai-Hulud (CVE-2026-45321).

منذ 3 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة
عرض المستودع

shai-scan

ماسح CLI بدون تبعيات لاختراقات سلسلة التوريد لـ npm و PyPI.

npm version License: MIT Node.js

لماذا؟

في 11 مايو 2026، اخترقت دودة سلسلة توريد ذاتية الانتشار تُسمى Mini Shai-Hulud (CVE-2026-45321, GHSA-g7cv-rxg3-hmpx) نظام npm البيئي. نُسبت إلى TeamPCP (المعروف أيضًا باسم DeadCatx3, PCPcat, ShellForce, CipherForce)؛ اختطفت البرمجية الخبيثة رموز OIDC الخاصة بـ GitHub Actions لنشر حزم ضارة مع إثبات أصالة صالح من المستوى 3 لـ SLSA Build. سرقت بيانات الاعتماد من خطوط أنابيب CI/CD ومزودي الخدمات السحابية ومحافظ العملات المشفرة، وقامت بتثبيت خطافات استمرارية في Claude Code و VS Code. احتوى المفتاح المُعطَّل المدمج على تهديد بمسح دليل المستخدم المنزلي إذا تم إبطال رموز npm.

شملت الحزم المتأثرة حزم توجيه TanStack وحزم البداية، وSDKs لـ Mistral AI، وعميل OpenSearch، وأدوات UiPath، وعشرات غيرها. نظرًا لأن هجمات سلسلة التوريد تتحرك بسرعة، تحتاج المؤسسات إلى ماسح خفيف وموثوق يمكن تشغيله في أي مكان دون إضافة تبعيات جديدة إلى سطح الهجوم الخاص بها.

الميزات

  • مسح ملفات القفل — يكتشف الحزم المخترقة لـ npm و PyPI في package-lock.json, pnpm-lock.yaml, yarn.lock, bun.lock, bun.lockb, poetry.lock, Pipfile.lock, و requirements.txt
  • فحص مؤشرات الاختراق النظامية — يفحص العمليات الجارية، والقطع الأثرية في نظام الملفات، والاتصالات الشبكية، ومسارات الاستمرارية المعروفة بحثًا عن مؤشرات الاختراق
  • بدون تبعيات وقت التشغيل — يستخدم فقط وظائف Node.js/Bun المدمجة (fs, path, child_process, os). لا يزيد الماسح من مخاطر سلسلة التوريد الخاصة بك
  • تنسيقات إخراج متعددة — نص قابل للقراءة البشرية، JSON آلي، وSARIF لفحص كود GitHub
  • أصلي لـ CI/CD — رموز خروج مصممة للأتمتة (0 = نظيف، 1 = نتائج، 2 = خطأ)
  • مستقل عن المسار — يقبل أي دليل؛ الافتراضي هو دليل العمل الحالي
  • قاعدة بيانات قائمة على الحملات — تُضاف موجات هجوم جديدة كحملات منفصلة في src/db.ts؛ قم بتحديث الملف وأعد التشغيل

التثبيت

لا حاجة للتثبيت. قم بتشغيله مباشرة باستخدام أداة تشغيل الحزم التي تختارها:

root@kitploit:~
# npx
npx @digi4care/shai-scan

# bunx
bunx @digi4care/shai-scan

# pnpm dlx
pnpm dlx @digi4care/shai-scan

التثبيت العام (اختياري):

root@kitploit:~
npm install -g @digi4care/shai-scan
# or
pnpm add -g @digi4care/shai-scan

من المصدر:

root@kitploit:~
git clone https://github.com/digi4care/shai-scan.git
cd shai-scan
pnpm install
bun run src/cli.ts --help   # Bun (موصى به للتطوير)
# أو أنشئ وشغل باستخدام Node.js:
pnpm run build && node dist/cli.js --help

الاستخدام

مسح المشروع الحالي

root@kitploit:~
npx @digi4care/shai-scan

مسح مسار محدد

root@kitploit:~
npx @digi4care/shai-scan ~/projects/my-app

إخراج JSON للأتمتة

root@kitploit:~
npx @digi4care/shai-scan --json .

إخراج SARIF لفحص كود GitHub

root@kitploit:~
npx @digi4care/shai-scan --sarif --sarif-file results.sarif .

رموز الخروج لـ CI/CD

root@kitploit:~
#!/bin/bash
npx @digi4care/shai-scan --severity high . || {
  code=$?
  if [ "$code" -eq 1 ]; then
    echo "تم اكتشاف نتائج سلسلة توريد"
    exit 1
  elif [ "$code" -eq 2 ]; then
    echo "خطأ في الماسح"
    exit 2
  fi
}

التكامل مع CI/CD

GitHub Actions (إخراج نصي)

root@kitploit:~
name: Supply Chain Scan
on:
  push:
    branches: [main]
  pull_request:
    branches: [main]

jobs:
  scan:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: pnpm/action-setup@v4
      - uses: actions/setup-node@v4
        with:
          node-version: 22
      - run: pnpm install --frozen-lockfile
      - run: npx @digi4care/shai-scan --severity high .

GitHub Actions (رفع SARIF)

root@kitploit:~
name: Supply Chain Scan SARIF
on:
  push:
    branches: [main]
  pull_request:
    branches: [main]
  schedule:
    - cron: '0 6 * * 1'

jobs:
  scan:
    runs-on: ubuntu-latest
    permissions:
      security-events: write
    steps:
      - uses: actions/checkout@v4
      - uses: pnpm/action-setup@v4
      - uses: actions/setup-node@v4
        with:
          node-version: 22
      - run: pnpm install --frozen-lockfile
      - run: npx @digi4care/shai-scan --sarif --sarif-file results.sarif .
      - uses: github/codeql-action/upload-sarif@v3
        with:
          sarif_file: results.sarif

تنسيقات الإخراج

التنسيقالعلمالوصف
نصي(افتراضي)جدول قابل للقراءة للنتائج مع مستوى الخطورة واسم الحزمة والإصدار وتفاصيل الحملة

مثال على مقتطف JSON:

root@kitploit:~
[
  {
    "package": "@tanstack/react-router",
    "version": "1.169.5",
    "ecosystem": "npm",
    "severity": "critical",
    "campaign": "mini-shai-hulud-wave4",
    "cve": "CVE-2026-45321",
    "reference": "https://github.com/TanStack/router/security/advisories/GHSA-g7cv-rxg3-hmpx"
  }
]

رموز الخروج

الكودالمعنى
0لم يتم اكتشاف حزم مخترقة أو مؤشرات اختراق
1تم اكتشاف نتيجة واحدة أو أكثر
2خطأ في وقت التشغيل (مسار غير صالح، ملف قفل غير قابل للقراءة، إلخ)

إضافة حملات جديدة

عند اكتشاف هجوم جديد على سلسلة التوريد، قم بتحديث src/db.ts:

  1. أضف مصفوفة جديدة CompromisedVersion[] تحتوي على الحزم والإصدارات المتأثرة
  2. أضف كائن Campaign جديد إلى مصفوفة CAMPAIGNS، بما في ذلك معرفات CVE/GHSA، مستوى الخطورة، الوصف، روابط مرجعية، ومؤشرات IOC
  3. تقوم الدالة buildLookup() تلقائيًا بإعادة بناء خريطة البحث في التشغيل التالي

لا حاجة لخطوة إعادة بناء عند استخدام Bun. التغييرات في src/db.ts تصبح سارية فورًا مع bun run src/cli.ts. بالنسبة لحزمة npm، قم بتشغيل pnpm run build بعد التحرير.

اعتبارات الأمان

  • بدون تبعيات وقت التشغيل: يستخدم الماسح فقط وحدات Node.js/Bun المدمجة. لا يقوم بتنزيل أو تنفيذ كود من طرف ثالث في وقت التشغيل، مما يلغي خطر أن يصبح الماسح نفسه ناقل اختراق.

  • pnpm كمدير حزم: يستخدم pnpm ملفات قفل صارمة، ولا ينفذ نصوص دورة الحياة افتراضيًا، ويدعم التخزين القابل للعنونة بالمحتوى. هذه الخصائص تقلل من سطح الهجوم مقارنة بمديري الحزم الآخرين.

  • إعدادات .npmrc الموصى بها: للحصول على أقصى حماية عند تثبيت الحزم، أضف ما يلي إلى ملف .npmrc الخاص بمشروعك أو العالمي:

    root@kitploit:~
    ignore-scripts=true
    engine-strict=true
    
  • لا اتصالات شبكية: لا يقوم shai-scan بإجراء اتصال بالإنترنت، أو تنزيل تواقيع، أو يتطلب مفتاح API. جميع بيانات الحملة مشحونة مع الحزمة.

الحزم المتأثرة (الحملة الحالية)

الحزم والإصدارات التالية معروفة بأنها مخترقة في CVE-2026-45321 (Mini Shai-Hulud Wave 4). هذه مجموعة فرعية تمثيلية؛ القائمة الكاملة محفوظة في src/db.ts.

الترخيص

MIT. انظر LICENSE للتفاصيل.

إخلاء المسؤولية

shai-scan هو أداة مساعدة للكشف، وليس بديلاً عن عمليات التدقيق الأمني الشاملة، أو مراجعة التبعيات، أو منصات استخبارات التهديدات. يحدد الإصدارات المخترقة المعروفة بناءً على قاعدة البيانات المشحونة؛ قد لا يتم اكتشاف هجمات سلسلة التوريد الجديدة أو غير المعروفة حتى تتم إضافة حملة. دائماً مارس الدفاع في العمق: دقق في التبعيات، ثبّت الإصدارات، تحقق من الأصالة، وراقب خطوط أنابيب CI/CD.

تنزيل الأداة
JSON--jsonمصفوفة JSON منظمة من النتائج، مناسبة للإدخال في أنظمة SIEM أو لوحات المعلومات المخصصة
SARIF--sarifتنسيق SARIF 2.1.0 من OASIS للرفع إلى GitHub Code Scanning أو GitLab Secure أو مستهلكي SARIF آخرين
الحزمةالنظام البيئيالإصدارات المخترقة
@tanstack/react-routernpm1.169.5, 1.169.8
@tanstack/vue-routernpm1.169.5, 1.169.8
@tanstack/solid-routernpm1.169.5, 1.169.8
@tanstack/router-corenpm1.169.5, 1.169.8
@tanstack/react-startnpm1.167.68, 1.167.71
@mistralai/mistralainpm2.2.2, 2.2.3, 2.2.4
@mistralai/mistralai-azurenpm1.7.2, 1.7.3
mistralaipypi2.4.6
@opensearch-project/opensearchnpm3.5.3, 3.6.2, 3.7.0, 3.8.0
@uipath/robotnpm1.3.4
@squawk/airwaysnpm0.4.2, 0.4.3, 0.4.5
@draftauth/corenpm0.13.1, 0.13.2
@tallyui/corenpm0.2.1, 0.2.2, 0.2.3
safe-actionnpm0.8.3, 0.8.4
cmux-agent-mcpnpm0.1.3 - 0.1.8
nextmove-mcpnpm0.1.3, 0.1.4, 0.1.5, 0.1.7
ts-dnanpm3.0.1, 3.0.2, 3.0.4
cross-stitchnpm1.1.3, 1.1.4, 1.1.6
git-git-gitnpm1.0.8 - 1.0.12
git-branch-selectornpm1.3.3 - 1.3.7
agentwork-clinpm0.1.4, 0.1.5
wot-apinpm0.8.1, 0.8.2, 0.8.4
ml-toolkit-tsnpm1.0.4, 1.0.5
@beproduct/nestjs-authnpm0.1.2 - 0.1.19
@dirigible-ai/sdknpm0.6.2, 0.6.3
@taskflow-corp/clinpm0.1.24 - 0.1.29
@tolka/clinpm1.0.2, 1.0.3, 1.0.4, 1.0.6
@supersurkhet/clinpm0.0.2 - 0.0.7
guardrails-aipypi0.10.1