
احمِ نفسك من حزم المصادر المفتوحة الخبيثة 🤖
<p align="center">
<a href="https://safedep.io">
<picture>
<source srcset="docs/assets/vet-banner-dark.svg" media="(prefers-color-scheme: dark)">
<source srcset="docs/assets/vet-banner-light.svg" media="(prefers-color-scheme: light)">
<img src="https://raw.githubusercontent.com/safedep/vet/HEAD/docs/assets/vet-banner-light.svg" alt="SafeDep VET - كشف الحزم الضارة في الوقت الفعلي وأمان سلسلة التوريد البرمجية" width="100%">
</picture>
</a>
</p>
<div align="center">
<p>
<a href="#quick-start"><strong>بداية سريعة</strong></a> •
<a href="https://docs.safedep.io/"><strong>توثيق</strong></a> •
<a href="#community--support"><strong>المجتمع</strong></a>
</p>
</div>
<div align="center">
[](https://goreportcard.com/report/github.com/safedep/vet)
[](https://github.com/safedep/vet/blob/main/LICENSE)
[](https://github.com/safedep/vet/releases)
[](https://api.securityscorecards.dev/projects/github.com/safedep/vet)
[](https://slsa.dev)
[](https://github.com/safedep/vet/actions/workflows/codeql.yml)
[](https://deepwiki.com/safedep/vet)
</div>
---
> [!NOTE]
> `vet` يدعم وضعًا خاصًا لمهارات الوكيل.
> قم بتشغيل `vet scan --agent-skill <owner/repo>` لفحص مهارة وكيل مستضافة في مستودع GitHub.
## لماذا vet؟
> **70-90% من البرمجيات الحديثة هي كود مفتوح المصدر** — كيف تعرف أنها آمنة؟
أدوات SCA التقليدية تغرقك في ضوضاء CVEs. **vet** يتبع نهجًا مختلفًا:
- **اكتشاف الذكاء الاصطناعي الخفي** — اكتشف إشارات استخدام أدوات الذكاء الاصطناعي عبر مختلف الأدوات والتكوينات
- **اعتراض البرمجيات الخبيثة قبل وصولها** — اكتشاف اليوم الصفري من خلال التحليل السلوكي الثابت والديناميكي (يتطلب الوصول إلى SafeDep Cloud)
- **تجاوز ضوضاء الثغرات** — يحلل استخدام الكود الفعلي لإظهار المخاطر المهمة فقط
- **فرض السياسات ككود** — عبر عن متطلبات الأمان والتراخيص والجودة بتعبيرات [CEL](https://cel.dev/)
- **دمج CI/CD** — حواجز أمان بدون تكوين في CI/CD
مجاني للمشاريع مفتوحة المصدر. الخدمات المستضافة متوفرة في [SafeDep](https://safedep.io).
## بداية سريعة
**التثبيت في ثوانٍ:**
```bash
# macOS & Linux
brew install safedep/tap/vet
# باستخدام npm
npm install -g @safedep/vet
```
أو حمل [ثنائي مُجمّع مسبقًا](https://github.com/safedep/vet/releases)
**ابدأ فورًا:**
```bash
# فحص التبعيات بحثًا عن برمجيات خبيثة
vet scan -D . --malware-query
# إخفاق CI عند وجود ثغرات حرجة
vet scan -D . --filter 'vulns.critical.exists(p, true)' --filter-fail
```
## بنية النظام
`vet` يتبع بنية خط أنابيب: **قارئات** تستوعب بيانات الحزم من مصادر متنوعة (دلائل، مستودعات، صور حاويات، SBOMs)، **مُثريات** تُضيف لكل حزمة بيانات ثغرات وبرمجيات خبيثة وسكوركارد من SafeDep Cloud، **مُحرك سياسات CEL** يُقيّم سياسات الأمان ضد البيانات المثريّة، و**مُبلغون** ينتجون مخرجات قابلة للتنفيذ بتنسيقات مثل SARIF وJSON وMarkdown.
<details>
<summary>عرض رسم تخطيطي للبنية</summary>
```mermaid
graph TB
subgraph "OSS Ecosystem"
R1[npm Registry]
R2[PyPI Registry]
R3[Maven Central]
R4[Other Registries]
end
subgraph "SafeDep Cloud"
M[Continuous Monitoring]
A[Real-time Code Analysis<br/>Malware Detection]
T[Threat Intelligence DB<br/>Vulnerabilities • Malware • Scorecard]
end
subgraph "vet CLI"
S[Source Repository<br/>Scanner]
P[CEL Policy Engine]
O[Reports & Actions<br/>SARIF/JSON/CSV]
end
R1 -->|New Packages| M
R2 -->|New Packages| M
R3 -->|New Packages| M
R4 -->|New Packages| M
M -->|Behavioral Analysis| A
A -->|Malware Signals| T
S -->|Query Package Info| T
T -->|Security Intelligence| S
S -->|Analysis Results| P
P -->|Policy Decisions| O
style M fill:#7CB9E8,stroke:#5A8DB8,color:#1a1a1a
style A fill:#E8A87C,stroke:#B88A5A,color:#1a1a1a
style T fill:#7CB9E8,stroke:#5A8DB8,color:#1a1a1a
style S fill:#90C695,stroke:#6B9870,color:#1a1a1a
style P fill:#E8C47C,stroke:#B89B5A,color:#1a1a1a
style O fill:#B8A3D4,stroke:#9478AA,color:#1a1a1a
```
</details>
## الميزات الرئيسية
### **كشف الحزم الضارة**
حماية في الوقت الفعلي ضد الحزم الضارة مدعومة من [SafeDep Cloud](https://docs.safedep.io/cloud/malware-analysis).
مجاني للمشاريع مفتوحة المصدر. يكتشف برمجيات اليوم الصفري من خلال تحليل الكود النشط.
### **تحليل الثغرات**
بخلاف ماسحات التبعيات التي تغمرك بالضوضاء، يقوم `vet` بتحليل **استخدامك الفعلي للكود** لتحديد أولويات المخاطر الحقيقية.
راجع [دليل إثبات استخدام التبعيات](https://docs.safedep.io/vet/guides/dependency-usage-identification) للتفاصيل.
### **السياسات ككود**
حدد سياسات الأمان باستخدام تعبيرات CEL لفرض متطلبات حسب السياق:
```bash
# حظر الحزم التي تحتوي على ثغرات حرجة
vet scan --filter 'vulns.critical.exists(p, true)' --filter-fail
# فرض الامتثال للتراخيص
vet scan --filter 'licenses.contains_license("GPL-3.0")' --filter-fail
# طلب حد أدنى من نتائج OpenSSF Scorecard
vet scan --filter 'scorecard.scores.Maintained < 5' --filter-fail
```
### **دعم متعدد الأنظمة البيئية**
مديري الحزم: **npm**، **PyPI**، **Maven**، **Go**، **Ruby**، **Rust**، **PHP**
صور الحاويات: **Docker**، **OCI**
تنسيقات SBOM: **CycloneDX**، **SPDX**
مستودعات المصدر: **GitHub**، **GitLab**
## كشف الحزم الضارة
**حماية في الوقت الفعلي ضد الحزم الضارة** من خلال الاستعلام عن قاعدة بيانات استخبارات التهديدات من SafeDep،
التي تُغذى باستمرار عبر التحليل السلوكي الثابت والديناميكي.
### إعداد سريع
```bash
# الاستعلام عن الحزم الضارة المعروفة (لا حاجة لمفتاح API)
vet scan -D . --malware-query
```
> [!NOTE]
> العلامة `--malware` مهملة. تم إيقاف المسح النشط (عند الطلب) لصالح الاستعلام عن قاعدة بيانات استخبارات التهديدات من SafeDep. الآن تتصرف `--malware` بنفس طريقة `--malware-query` وتم الاحتفاظ بها للتوافق مع الإصدارات السابقة.
**أمثلة على الاكتشافات:**
- [MAL-2025-3541: express-cookie-parser](https://safedep.io/malicious-npm-package-express-cookie-parser/)
- [MAL-2025-4339: eslint-config-airbnb-compat](https://safedep.io/digging-into-dynamic-malware-analysis-signals/)
- [MAL-2025-4029: ts-runtime-compat-check](https://safedep.io/digging-into-dynamic-malware-analysis-signals/)
**ميزات الأمان الرئيسية:**
- استعلامات في الوقت الفعلي ضد قاعدة بيانات الحزم الضارة المعروفة من SafeDep
- تحليل سلوكي باستخدام تحليل ثابت وديناميكي (يتم باستمرار في SafeDep Cloud)
- فرز بتدخل بشري للنتائج عالية التأثير
- [سجل تحليل](https://vetpkg.dev/mal) عام للشفافية
### استخدام متقدم
```bash
# فحوصات متخصصة
vet scan --vsx --malware-query # إضافات VS Code
vet scan -D .github/workflows --malware-query # إجراءات GitHub
vet scan --image nats:2.10 --malware-query # صور حاويات
```
> [!NOTE]
> الأمر `vet inspect malware` (تحليل عند الطلب لحزمة واحدة) مهمل وسيتم إزالته في إصدار مستقبلي. استخدم `vet scan --malware-query` للتحقق من الحزم ضد قاعدة بيانات الحزم الضارة المعروفة من SafeDep.
## تكاملات جاهزة للإنتاج
### إجراءات GitHub
حواجز أمان بدون تكوين في CI/CD:
```yaml
- uses: safedep/vet-action@v1
with:
policy: ".github/vet/policy.yml"
```
راجع توثيق [vet-action](https://github.com/safedep/vet-action).
### GitLab CI
مسح على مستوى المؤسسات باستخدام [مكون CI الخاص بـ vet](https://docs.safedep.io/vet/guides/gitlab-dependency-scanning):
```yaml
include:
- component: gitlab.com/safedep/ci-components/vet/scan@main
```
### تكامل الحاويات
شغّل `vet` في أي مكان باستخدام صورة الحاوية الخاصة بنا:
```bash
docker run --rm -v $(pwd):/app ghcr.io/safedep/vet:latest scan -D /app --malware-query
```
## التثبيت
### Homebrew (موصى به)
```bash
brew install safedep/tap/vet
```
### npm
```bash
npm install @safedep/vet
```
### تحميل مباشر
راجع [الإصدارات](https://github.com/safedep/vet/releases) للحصول على الثنائيات المُجمّعة مسبقًا.
### تثبيت Go
```bash
go install github.com/safedep/vet@latest
```
### صورة الحاوية
```bash
# اختبار سريع
docker run --rm ghcr.io/safedep/vet:latest version
# مسح دليل محلي
docker run --rm -v $(pwd):/workspace ghcr.io/safedep/vet:latest scan -D /workspace
```
### تحقق من التثبيت
```bash
vet version
# يجب أن يعرض معلومات الإصدار والبناء
```
## ميزات متقدمة
**تعلم المزيد في توثيقنا الشامل:**
- **[اكتشاف استخدام الذكاء الاصطناعي](https://github.com/safedep/vet/blob/main/docs/ai-discovery.md)** - اكتشف إشارات استخدام أدوات الذكاء الاصطناعي عبر مختلف الأدوات والتكوينات
- **[وضع وكيل الذكاء الاصطناعي](https://github.com/safedep/vet/blob/main/docs/agent.md)** - شغّل vet كعامل ذكاء اصطناعي
- **[خادم MCP](https://github.com/safedep/vet/blob/main/docs/mcp.md)** - شغّل vet كخادم MCP لتحليل الكود بمساعدة الذكاء الاصطناعي
- **[التقارير](https://github.com/safedep/vet/blob/main/docs/reporting.md)** - تنسيقات SARIF، JSON، CSV، HTML، Markdown
- **[دعم SBOM](https://docs.safedep.io/vet/guides/cyclonedx-sbom)** - استيراد/تصدير CycloneDX، SPDX
- **[وضع الاستعلام](https://docs.safedep.io/cloud/quickstart#query-your-data)** - امسح مرة واحدة، حلّل مرات عدة
- **[تكامل GitHub](https://docs.safedep.io/)** - مسح المستودعات والمؤسسات
- **[تثبيت إجراءات GitHub](https://github.com/safedep/vet/blob/main/docs/github-actions-pinning.md)** - ثبت إجراءات GitHub باستخدام SHA للالتزام لمنع هجمات سلسلة التوريد
## الخصوصية
`vet` يجمع بيانات تيلومتري مجهولة لتحسين المنتج. **لا يتم إرسال كودك أو معلومات الحزم أبدًا.**
```bash
# تعطيل التيلومتري (اختياري)
export VET_DISABLE_TELEMETRY=true
```
## المجتمع والدعم
<div align="center">
### انضم إلى المجتمع
[](https://rebrand.ly/safedep-community)
[](https://github.com/safedep/vet/discussions)
[](https://twitter.com/safedepio)
</div>
### احصل على المساعدة وشارك الأفكار
- **[درس تفاعلي](https://killercoda.com/safedep/scenario/101-intro)** - تعلم vet عمليًا
- **[توثيق كامل](https://docs.safedep.io/)** - أدلة شاملة
- **[مجتمع Discord](https://rebrand.ly/safedep-community)** - دعم فوري
- **[متعقب المشكلات](https://github.com/safedep/vet/issues)** - تقارير الأخطاء وطلبات الميزات
- **[دليل المساهمة](https://github.com/safedep/vet/blob/main/CONTRIBUTING.md)** - انضم إلى التطوير
---
<div align="center">
### تاريخ النجوم
[](https://star-history.com/#safedep/vet&Date)
### مبني باستخدام مفتوح المصدر
يقف vet على أكتاف العمالقة:
[OSV](https://osv.dev) • [OpenSSF Scorecard](https://securityscorecards.dev/) • [SLSA](https://slsa.dev/) • [OSV-SCALIBR](https://github.com/google/osv-scalibr) • [Syft](https://github.com/anchore/syft)
### المساهمون
شكرًا لجميع المساهمين ❤️
<a href="https://github.com/safedep/vet/graphs/contributors">
<img src="https://contrib.rocks/image?repo=safedep/vet" alt="المساهمون في vet" />
</a>
---
<p><strong>آمّن سلسلة التوريد الخاصة بك اليوم. قم بتمييز المستودع وابدأ!</strong></p>
تم إنشاؤه بحب من قبل [SafeDep](https://safedep.io) ومجتمع المصادر المفتوحة
</div>
<img referrerpolicy="no-referrer-when-downgrade" src="https://assets.kitploit.com/production/public/readmes/9305/93ae7d494fad0fb30cbf3ae746a39c4bc7a0f8bbf87fbb587a3f3c01f3c5ce20.png" />