अपडेट पर वापस जाएँ
New releaseSep 1, 2026

vet v1.19.0

दुर्भावनापूर्ण ओपन सोर्स पैकेजों से सुरक्षा करें 🤖

साझा करें

SafeDep vet

प्रोडक्शन तक पहुँचने से पहले दुर्भावनापूर्ण पैकेज, कमज़ोरियाँ और जोखिम भरे CI वर्कफ़्लो खोजें।

Release Build OpenSSF Scorecard License Discord

Install • Docs • Commands • Policy • Discord

[!NOTE] यह ब्रांच vet v2 है, जो अल्फा में है। vet v1 main पर है और नवीनतम रिलीज़ बना हुआ है। v2.0.0 रिलीज़ नोट्स में प्रत्येक v1 कमांड और फ़्लैग को v2 से मैप किया गया है।

vet क्यों

आपकी डिपेंडेंसियाँ, आपके GitHub Actions वर्कफ़्लो और आपके AI एजेंट कॉन्फ़िग ऐसा कोड चलाते हैं जो आपने नहीं लिखा। vet उनमें जोखिम खोजता है।

  • दुर्भावनापूर्ण पैकेज। vet प्रत्येक पैकेज को SafeDep Threat Intel के विरुद्ध जाँचता है। Threat Intel नए पैकेज संस्करणों का विश्लेषण तब करता है जब रजिस्ट्रियाँ उन्हें प्रकाशित करती हैं।
  • ज्ञात कमज़ोरियाँ, साथ में अपग्रेड करने के लिए फ़िक्स्ड संस्करण।
  • जोखिम भरे वर्कफ़्लो। खतरनाक ट्रिगर, टेम्पलेट इंजेक्शन, उजागर सीक्रेट्स और बिना पिन किए गए कमिट SHA वाले एक्शन।
  • लॉकफ़ाइल छेड़छाड़ और नए संस्करण। अविश्वसनीय रजिस्ट्री से प्रविष्टियाँ, और कूलडाउन विंडो के भीतर के संस्करण।
  • पॉलिसी एज़ कोड। CEL में नियम तय करते हैं कि स्कैन कब विफल हो। आप सहेजे गए स्कैन पर नियम का परीक्षण कर सकते हैं।
  • AI और क्रिप्टो इन्वेंटरी। vet उन AI लाइब्रेरीज़ और क्रिप्टो एल्गोरिदम की सूची बनाता है जिन्हें आपका कोड कॉल करता है, और एक CycloneDX xBOM और CBOM लिखता है।

vet को किसी खाते की आवश्यकता नहीं है और यह कोई सोर्स कोड नहीं भेजता।

त्वरित शुरुआत

brew install --cask safedep/tap/vet@edge
vet scan

vet scan एक दुर्भावनापूर्ण पैकेज, कमज़ोरियाँ और workflow injection ढूँढता है

vet scan --fail-on high                         # exit 1 on a high or critical finding
vet scan --base-ref origin/main --fail-on high  # report only what a pull request changes
vet report show --report sarif=vet.sarif        # write SARIF from the saved scan, with no new scan

इंस्टॉल

चैनलकमांड
Homebrewbrew install --cask safedep/tap/vet@edge
misemise use -g 'github:safedep/vet[prerelease=true]@2'
Gogo install github.com/safedep/vet/v2/cmd/vet@latest
कंटेनरdocker run --rm -v "$PWD:/src" -w /src ghcr.io/safedep/vet:v2-latest scan

mise किसी रिलीज़ को उसके प्रकाशन के एक दिन बाद इंस्टॉल करता है। नवीनतम बिल्ड के लिए कमांड, रिलीज़ बाइनरीज़ और बिल्ड अटेस्टेशन install.md में दिए गए हैं।

vet क्या स्कैन करता है

लक्ष्यउदाहरण
एक डायरेक्टरी (डिफ़ॉल्ट)vet scan, vet scan ./service
एक git रिपॉज़िटरीvet scan https://github.com/safedep/vet
एक कंटेनर इमेजvet scan oci://alpine:3.20, vet scan image.tar
एक SBOM (CycloneDX या SPDX)vet scan sbom.cdx.json
एक पैकेजvet scan pkg:npm/[email protected]
इस मशीन पर मौजूद टूल्सvet endpoint audit

vet npm, PyPI, Go, Maven, Gradle, Cargo, RubyGems, NuGet, Packagist, Pub और अन्य के लॉकफ़ाइल्स और मैनिफ़ेस्ट पढ़ता है। यह लक्ष्य के GitHub Actions वर्कफ़्लो और AI एजेंट कॉन्फ़िग्स भी पढ़ता है। यह उनमें से किसी को इंस्टॉल या रन नहीं करता। कंट्रोल्स इस डेटा को फ़ाइंडिंग्स में बदलते हैं। देखें controls.md।

पॉलिसी

एक पॉलिसी तय करती है कि स्कैन कब विफल होगा। इस फ़ाइल को vet-policy.yml के रूप में सहेजें:

version: 2
rules:
  - id: no-malware
    description: A malicious or suspicious package fails the build.
    when: finding.family == "malware"
    action: fail
  - id: no-workflow-injection
    when: finding.control_id in ["dangerous-trigger", "template-injection"]
    action: fail
  - id: no-critical-vulnerability
    when: finding.control_id == "vulnerability" && finding.severity == "critical"
    action: fail
  - id: new-dependency-age
    description: A pull request cannot add a version that is less than 14 days old.
    when: package.change == "ADDED" && has(package.days_since_publish) && package.days_since_publish < 14
    action: fail
suppressions:
  - purl: pkg:npm/[email protected]
    reason: The upgrade to 4.18.1 is in pull request 42.
    expires: 2026-12-31

पिछले स्कैन पर इसका परीक्षण करें, बिना किसी नए स्कैन के। फिर इसे एक pull request पर लागू करें:

vet report show last --policy vet-policy.yml
vet scan --base-ref origin/main --policy vet-policy.yml

इसकी समाप्ति तिथि के बाद, suppression अब finding को नहीं छिपाता है। नियम फ़ील्ड, अधिक नियमों और आपके लिए policy लिखने वाले Agent Skill के बारे में policy.md पढ़ें।

उपयोग के मामले

  • Pull request जाँच। vet GitHub Action उस pull request पर टिप्पणी करता है जो कोई package, workflow या finding जोड़ता है, और किसी attack पर जाँच को विफल कर देता है। vet ci init इसे किसी repository में जोड़ता है।
  • CI gate। Exit codes, GitHub code scanning के लिए SARIF, GitLab और Bitbucket रिपोर्ट। देखें ci.md।
  • Pull request समीक्षा। --base-ref केवल उन packages और workflows की रिपोर्ट करता है जो कोई परिवर्तन जोड़ता है।
  • xBOM और CBOM। आपका code जिन AI libraries और crypto का उपयोग करता है, उनकी CycloneDX 1.7 inventory। देखें inventory.md।
  • AI agents। vet Claude Code और अन्य agents को खोजता है, और फिर JSON लिखता है और कभी prompt नहीं करता।
  • Endpoint audit। vet endpoint audit किसी developer मशीन पर AI tools, MCP servers, editor extensions और global npm packages की सूची बनाता है, और उन्हें malware के लिए जाँचता है।

दस्तावेज़ीकरण

श्रेणियाँ