
स्टैटिक विश्लेषण CLI जो AI-जनित कोड को SQL इंजेक्शन, असुरक्षित रिफ्लेक्शन, और हार्डकोडेड सीक्रेट्स जैसी कमजोरियों के लिए स्कैन करता है, SARIF एक्सपोर्ट और CI/CD गेटिंग के साथ।
AI-जनित कोड में सुरक्षा जोखिमों को खोजने के लिए एक तेज़, स्टैंडअलोन स्टैटिक विश्लेषण टूल। CanoP स्थानीय रूप से चलता है और उपचार मार्गदर्शन के साथ कार्रवाई योग्य निष्कर्ष उत्पन्न करता है।
fixes.json प्रॉम्प्ट उत्पन्न करता है।pip install canop
macOS और Linux पर, यदि वैश्विक pip इंस्टॉलेशन प्रतिबंधित है, तो pipx का उपयोग करें:
pipx install canop
इंस्टॉलेशन सत्यापित करें:
canop --version
.canop.yml और .canopignore को प्रारंभ करें:
canop init
वर्तमान निर्देशिका, या केवल Git में परिवर्तित फ़ाइलों को स्कैन करें:
canop scan .
canop scan . --changed
निष्कर्ष डिफ़ॉल्ट रूप से 50 तक सीमित होते हैं। बिना सीमा के लिए --all या कस्टम सीमा के लिए --limit N का उपयोग करें:
canop scan . --all
canop scan . --limit 10
ये विकल्प थ्रेशोल्ड पूरा न होने पर गैर-शून्य एग्ज़िट कोड लौटाते हैं:
canop scan . --fail-on HIGH
canop scan . --min-score 85
canop scan . --json-out results.json
canop scan . --sarif results.sarif
canop scan . --prescriptions fixes.json
SARIF आउटपुट को इनलाइन निष्कर्षों के लिए GitHub पर अपलोड किया जा सकता है। fixes.json में LLM-सहायता प्राप्त उपचार के लिए प्रॉम्प्ट होते हैं।
नीति थ्रेशोल्ड और अनदेखा किए गए पथों को परिभाषित करने के लिए प्रोजेक्ट रूट में .canop.yml जोड़ें:
min_grade: B
fail_on:
- CRITICAL
- HIGH
ignore:
- "tests/**"
- "docs/**"
max_findings: 0
.canopignore फ़ाइलों और निर्देशिकाओं को बाहर करने के लिए .gitignore-शैली के पैटर्न का उपयोग करता है।
CanoP canop/rules/*.yml से नियम लोड करता है और अपने अंतर्निहित पैटर्न इंजन के साथ स्थानीय रूप से स्कैन करता है। सीक्रेट नियम टिप्पणियों का निरीक्षण करते हैं ताकि AI कोडिंग एजेंट्स द्वारा फ्रंटएंड सोर्स में गलती से छोड़े गए क्रेडेंशियल्स को पकड़ा जा सके; अन्य नियम शोर कम करने के लिए केवल-टिप्पणी वाली पंक्तियों को अनदेखा करते हैं। यदि इंस्टॉल हो, तो Semgrep AST-आधारित विश्लेषण जोड़ता है। यह वैकल्पिक है और CanoP के साथ इंस्टॉल नहीं होता।
git clone https://github.com/openbreach/CanoP.git canop
cd canop
pip install -e .
python -m unittest discover -s tests -v
वितरण आर्टिफ़ैक्ट्स बनाएँ:
pip install -r requirements-dev.txt
python -m build
नियम Semgrep YAML प्रारूप का उपयोग करते हैं और canop/rules/*.yml में स्थित हैं। दिशानिर्देशों के लिए CONTRIBUTING.md देखें।
बग और फ़ीचर अनुरोधों के लिए, GitHub issue खोलें या [email protected] पर ईमेल करें।
यह प्रोजेक्ट MIT License के अंतर्गत लाइसेंस प्राप्त है।