Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
उपकरण/GitHubGitHub/hawkeyesec/scanner-cli
स्थैतिक विश्लेषणभेद्यता स्कैनरकंटेनर सुरक्षाकोड विश्लेषणDevSecOpsसीक्रेट डिटेक्शनArchived
GitHubhawkeyesec/scanner-cli

scanner-cli

एक परियोजना सुरक्षा/भेद्यता/जोखिम स्कैनिंग उपकरण

रिपॉजिटरी देखें
361864 साल पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

परित्याग सूचना: Hawkeye ने अपने जीवन की अंतिम सीमा पार कर ली है।

आपके और आपके प्रोजेक्ट के लिए बाजार में बहुत से आधुनिक विकल्प उपलब्ध हैं। यदि आप प्रोजेक्ट के रखरखाव को अपने हाथ में लेना चाहते हैं, तो कृपया मुझसे संपर्क करने में संकोच न करें। आप मुझ तक पहुँचने के तरीके मेरे व्यक्तिगत होमपेज पर पा सकते हैं।

.

.

.

.

.

.

Hawkeye scanner-cli एक प्रोजेक्ट सुरक्षा, भेद्यता और सामान्य जोखिम को उजागर करने वाला उपकरण है। इसे आपके pre-commit हुक्स और आपके पाइपलाइनों में एकीकृत करने के लिए डिज़ाइन किया गया है।

स्कैनर को चलाना और कॉन्फ़िगर करना

Hawkeye scanner-cli यह मानता है कि आपकी निर्देशिका संरचना इस प्रकार है कि यह टूलचेन की फ़ाइलों को शीर्ष स्तर पर रखता है। मोटे तौर पर, यह इस प्रकार है:

  • Node.js प्रोजेक्ट्स में शीर्ष स्तर पर एक package.json होता है
  • Ruby प्रोजेक्ट्स में शीर्ष स्तर पर एक Gemfile होगा
  • Python प्रोजेक्ट्स में शीर्ष स्तर पर एक requirements.txt होगा
  • PHP प्रोजेक्ट्स में शीर्ष स्तर पर एक composer.lock होगा
  • Java प्रोजेक्ट्स में एक build (gradle) या target (maven) फ़ोल्डर होगा, और इसमें .java और .jar फ़ाइलें शामिल होंगी
  • Kotlin प्रोजेक्ट्स में एक build (gradle) या target (maven) फ़ोल्डर होगा, और इसमें .kt और .jar फ़ाइलें शामिल होंगी
  • Scala प्रोजेक्ट्स में एक target (sbt with sbt-native-packager or sbt-assembly plugins) फ़ोल्डर होगा, और इसमें .scala और .jar फ़ाइलें शामिल होंगी। चल रहे डेमो के लिए इस रेपो को देखें।
  • Rust प्रोजेक्ट्स में शीर्ष स्तर पर एक Cargo.toml होगा

यह पूरी तरह से व्यापक नहीं है क्योंकि कभी-कभी उपकरणों को और अधिक फ़ाइलों की आवश्यकता होती है। यह समझने के लिए कि मॉड्यूल कैसे तय करते हैं कि वे किसी प्रोजेक्ट को संभाल सकते हैं या नहीं, कृपया यह कैसे काम करता है अनुभाग और मॉड्यूल फ़ोल्डर देखें।

Docker (अनुशंसित)

Docker इमेज स्कैनर का उपयोग करने का सबसे आसान तरीका है। कृपया ध्यान दें कि आपके प्रोजेक्ट रूट (जैसे $PWD) को /target पर माउंट किया जाना चाहिए।

root@kitploit:~
docker run --rm -v $PWD:/target hawkeyesec/scanner-cli:latest

यदि आप स्कैनर का उपयोग JSON लिखने के लिए कर रहे हैं (-j और --json CLI फ़्लैग्स और .hawkeyerc में json सेटिंग के माध्यम से), तो सुनिश्चित करें कि यह सही UID और GID का उपयोग करता है docker run -u $(id -u):$(id -g) के माध्यम से। अन्यथा यह आपको अपरिवर्तनीय फ़ाइलें छोड़ सकता है, उदाहरण के लिए जब Jenkins में चलाया जाता है।

Docker बिल्ड आपके CI पाइपलाइनों में स्कैनर चलाने का अनुशंसित तरीका भी है। यह GoCD में आपके एक प्रोजेक्ट के विरुद्ध Hawkeye चलाने का एक उदाहरण है:

root@kitploit:~
<pipeline name="security-scan">
  <stage name="Hawkeye" cleanWorkingDir="true">
    <jobs>
      <job name="scan">
        <tasks>
          <exec command="docker">
            <arg>pull</arg>
            <arg>hawkeyesec/scanner-cli</arg>
            <runif status="passed" />
          </exec>
          <exec command="bash">
            <arg>-c</arg>
            <arg>docker run --rm -v $PWD:/target hawkeyesec/scanner-cli:latest</arg>
            <runif status="passed" />
          </exec>
        </tasks>
      </job>
    </jobs>
  </stage>
</pipeline>

npm

आप Node.js प्रोजेक्ट में hawkeye को स्थापित और चला सकते हैं:

root@kitploit:~
npm install --save-dev @hawkeyesec/scanner-cli
npx hawkeye scan

यह विधि Node.js प्रोजेक्ट में अनुशंसित है, जहां अन्य टूलचेन (जैसे python, ruby) की आवश्यकता नहीं है।

इस विधि के साथ, git pre-commit हुक (जैसे pre-commit पैकेज के माध्यम से) में स्कैनर को लागू करने की भी सिफारिश की जाती है ताकि यदि समस्याएं पाई जाती हैं तो कमिट विफल हो जाए।

कॉन्फ़िगरेशन फ़ाइलें (अनुशंसित)

आप अपने प्रोजेक्ट रूट में .hawkeyerc और .hawkeyeignore फ़ाइलों के माध्यम से स्कैनर को कॉन्फ़िगर कर सकते हैं।

.hawkeyerc फ़ाइल एक JSON फ़ाइल है जो आपको कॉन्फ़िगर करने देती है ...

  • चलाने के लिए मॉड्यूल,
  • उपयोग करने के लिए राइटर, और
  • विफलता सीमा
root@kitploit:~
{
    "all": true|false,
    "staged": true|false,
    "modules": ["files-ccnumber", "java-owasp", "java-find-secbugs"],
    "sumo": "http://your.sumologic.foobar/collector",
    "http": "http://your.logger.foobar/collector",
    "json": "log/results.json",
    "failOn": "low"|"medium"|"high"|"critical",
    "showCode": true|false
}

.hawkeyeignore फ़ाइल रेगुलर एक्सप्रेशन का एक संग्रह है जो पथ और मॉड्यूल त्रुटि कोड को स्कैन से बाहर करने के लिए मेल खाता है, और --exclude फ़्लैग के उपयोग के बराबर है। # से शुरू होने वाली पंक्तियों को टिप्पणी माना जाता है।

कृपया ध्यान दें कि रेगुलर एक्सप्रेशन में आरक्षित कोई भी विशेष वर्ण (-[]{}()*+?.,^$|#\s) को शाब्दिक रूप में उपयोग करने पर एस्केप करने की आवश्यकता है!

कृपया यह भी ध्यान दें कि मॉड्यूल त्रुटि कोड आमतौर पर नहीं दिखाए जाते हैं, क्योंकि वे मुख्य रूप से उपयोगकर्ता के लिए प्रासंगिक नहीं होते हैं। यदि आप किसी विशेष गलत सकारात्मक को बाहर करना चाहते हैं, तो आप --show-code फ़्लैग या .hawkeyerc में showCode प्रॉपर्टी के साथ मॉड्यूल त्रुटि कोड प्रदर्शित कर सकते हैं।

root@kitploit:~
^test/

# यह एक टिप्पणी है

^README.md

CLI

उपलब्ध मॉड्यूल और उनकी स्थिति को सूचीबद्ध करने के लिए hawkeye modules का उपयोग करें।

root@kitploit:~
> npx hawkeye modules
[info] संस्करण: v1.4.0
[info] मॉड्यूल स्थिति
[info] सक्षम:   files-ccnumber
[info]            उन संदिग्ध फ़ाइल सामग्री की जाँच करता है जिनमें क्रेडिट कार्ड नंबर होने की संभावना है
[info] सक्षम:   files-contents
[info]            उन संदिग्ध फ़ाइल सामग्री की जाँच करता है जिनमें रहस्य होने की संभावना है
[info] अक्षम:  files-entropy
[info]            उच्च एंट्रॉपी वाले स्ट्रिंग्स के लिए फ़ाइलों की जाँच करता है जिनमें पासवर्ड होने की संभावना है
[info] सक्षम:   files-secrets
[info]            उन संदिग्ध फ़ाइल नामों की जाँच करता है जिनमें रहस्य होने की संभावना है
[info] सक्षम:   java-find-secbugs
[info]            findsecbugs के साथ जावा कोड में सामान्य सुरक्षा मुद्दों की पहचान करता है
[info] सक्षम:   java-owasp
[info]            OWASP निर्भरता जाँचकर्ता के साथ ज्ञात कमजोरियों वाले gradle/maven निर्भरता के लिए जावा प्रोजेक्ट्स की जाँच करता है
[info] सक्षम:   node-npmaudit
[info]            ज्ञात कमजोरियों वाले निर्भरता के लिए नोड प्रोजेक्ट्स की जाँच करता है
[info] सक्षम:   node-npmoutdated
[info]            पुराने npm मॉड्यूल के लिए नोड प्रोजेक्ट्स की जाँच करता है
[info] सक्षम:   node-yarnaudit
[info]            ज्ञात कमजोरियों वाले निर्भरता के लिए यार्न प्रोजेक्ट्स की जाँच करता है
[info] सक्षम:   node-yarnoutdated
[info]            पुराने यार्न मॉड्यूल के लिए नोड प्रोजेक्ट्स की जाँच करता है
[info] सक्षम:   php-security-checker
[info]            security-checker का उपयोग करके composer.lock में ज्ञात कमजोरियों वाले निर्भरता की जाँच करता है
[info] सक्षम:   python-bandit
[info]            बैंडिट के साथ पायथन कोड में सामान्य सुरक्षा मुद्दों की जाँच करता है।
[info] सक्षम:   python-piprot
[info]            पुराने पैकेजों के लिए पायथन निर्भरता की जाँच करता है
[info] सक्षम:   python-safety
[info]            सुरक्षा उपकरण के साथ पायथन निर्भरता में ज्ञात सुरक्षा कमजोरियों की जाँच करता है।
[info] सक्षम:   ruby-brakeman
[info]            Brakeman के साथ Rails कोड का स्थिर विश्लेषण करता है।
[info] सक्षम:   ruby-bundler-scan
[info]            बंडलर का उपयोग करके ज्ञात कमजोरियों वाले रूबी रत्नों की जाँच करता है

स्कैन शुरू करने के लिए hawkeye scan का उपयोग करें:

root@kitploit:~
> npx hawkeye scan --help
[info] संस्करण: v1.3.0
उपयोग: hawkeye-scan [विकल्प]

विकल्प:
  -a, --all                                       सभी फ़ाइलों को स्कैन करें, भले ही git रेपो मिले या नहीं। डिफ़ॉल्ट रूप से git रिपॉजिटरी में ट्रैक की गई फ़ाइलें।
  -t, --target [/path/to/project]                 स्कैन करने का स्थान। डिफ़ॉल्ट $PWD है।
  -f, --fail-on [low|medium|high|critical]        उस स्तर को सेट करें जिस पर hawkeye गैर-शून्य स्थिति कोड लौटाता है। डिफ़ॉल्ट low है।
  -m, --module [module name]                      विशिष्ट मॉड्यूल चलाएं। डिफ़ॉल्ट रूप से सभी लागू मॉड्यूल।
  -e, --exclude [pattern]                         एक या अधिक बहिष्करण पैटर्न निर्दिष्ट करें (जैसे test/*)। कई बार निर्दिष्ट किया जा सकता है।
  -j, --json [/path/to/file.json]                 निष्कर्षों को फ़ाइल में लिखें।
  -s, --sumo [https://sumologic-http-connector]   निष्कर्षों को SumoLogic में लिखें।
  -H, --http [https://your-site.com/api/results]  निष्कर्षों को दिए गए URL पर लिखें।
  --show-code                                     मॉड्यूल द्वारा रिपोर्टिंग के लिए उपयोग किए जाने वाले कोड को दिखाता है, कुछ गलत सकारात्मक को अनदेखा करने के लिए उपयोगी
  -g, --staged                                    केवल git-staged फ़ाइलों को स्कैन करें।
  -h, --help                                      उपयोग जानकारी आउटपुट करें

परिणाम

एग्जिट कोड

scanner-cli निम्नलिखित एग्जिट कोड के साथ प्रतिक्रिया करता है:

  • एग्जिट कोड 0 इंगित करता है कि न्यूनतम सीमा के बराबर या उससे ऊपर कोई निष्कर्ष नहीं मिला।
  • एग्जिट कोड 1 इंगित करता है कि न्यूनतम सीमा के बराबर या उससे ऊपर समस्याएं पाई गईं।
  • एग्जिट कोड 42 इंगित करता है कि प्रोग्राम में कहीं एक अप्रत्याशित त्रुटि हुई। यह संभवतः एक बग है और ऐसा नहीं होना चाहिए। कृपया लॉग आउटपुट की जाँच करें और एक बग रिपोर्ट करें।

कंसोल आउटपुट को रीडायरेक्ट करना

यदि आप कंसोल लॉगर आउटपुट को रीडायरेक्ट करना चाहते हैं, तो अनुशंसित विधि stdout पर लैच करना है। इस उदाहरण में, हम JSON और stdout दोनों परिणामों का उपयोग कर रहे हैं:

root@kitploit:~
docker run --rm -v $PWD:/target hawkeyesec/scanner-cli:latest -j hawkeye-results.json -f critical 2>&1 | tee hawkeye-results.txt

कंसोल आउटपुट

डिफ़ॉल्ट रूप से, स्कैनर अपने परिणामों को तालिका के रूप में कंसोल पर आउटपुट करता है।

Sumologic

परिणाम आपकी पसंद के SumoLogic कलेक्टर को भेजे जा सकते हैं। इस उदाहरण में, हमारे पास एक एकल HTTP स्रोत वाला एक कलेक्टर है।

root@kitploit:~
hawkeye scan --sumo https://collectors.us2.sumologic.com/receiver/v1/http/your-http-collector-url

SumoLogic में, _collector="hawkeye" | json auto खोजें:

SumoLogic

कोई भी HTTP एंडपॉइंट

SumoLogic उदाहरण के समान, स्कैनर POST संदेश स्वीकार करने वाले किसी भी HTTP एंडपॉइंट पर परिणाम भेज सकता है।

root@kitploit:~
hawkeye scan --http http://your.logging.foobar/endpoint

परिणाम User-Agent: hawkeye के साथ भेजे जाएंगे। कंसोल आउटपुट के समान, प्रत्येक निष्कर्ष के लिए निम्नलिखित JSON POST किया जाएगा:

root@kitploit:~
{
  "module": "files-contents",
  "level": "critical",
  "offender": "testfile3.yml",
  "description": "फ़ाइल में निजी कुंजी",
  "mitigation": "लाइन नंबर जाँचें: 3"
}

यह कैसे काम करता है

Hawkeye को मॉड्यूल और राइटर जोड़कर विस्तार योग्य बनाया गया है।

  • मॉड्यूल फ़ोल्डर में मॉड्यूल जोड़ें।
  • राइटर फ़ोल्डर में राइटर जोड़ें।

मॉड्यूल

मॉड्यूल मूल रूप से कोड के छोटे-छोटे टुकड़े होते हैं जो या तो अपना तर्क लागू करते हैं, या तीसरे पक्ष के उपकरण को लपेटते हैं और आउटपुट को मानकीकृत करते हैं। वे तभी चलते हैं जब आवश्यक मानदंड पूरे होते हैं। उदाहरण के लिए: npm outdated मॉड्यूल तभी चलेगा जब स्कैन लक्ष्य में package.json का पता चले - परिणामस्वरूप, आपको Hawkeye को यह बताने की आवश्यकता नहीं है कि आप किस प्रकार के प्रोजेक्ट को स्कैन कर रहे हैं।

सामान्य मॉड्यूल

  • files-ccnumber: संदिग्ध फ़ाइल सामग्री की जाँच करता है जिसमें क्रेडिट कार्ड नंबर होने की संभावना है
  • files-contents: संदिग्ध फ़ाइल सामग्री की जाँच करता है जिसमें रहस्य होने की संभावना है
  • files-entropy: उच्च एंट्रॉपी वाले स्ट्रिंग्स के लिए फ़ाइलों की जाँच करता है जिनमें पासवर्ड होने की संभावना है। एंट्रॉपी स्कैनिंग डिफ़ॉल्ट रूप से अक्षम है क्योंकि बड़ी संख्या में गलत सकारात्मक होते हैं। कुंजियों के लिए समय-समय पर कोडबेस को स्कैन करना उपयोगी होता है, ऐसी स्थिति में कृपया इसे -m files-entropy स्विच का उपयोग करके चलाएं।
  • files-secrets: संदिग्ध फ़ाइल नामों की जाँच करता है जिनमें रहस्य होने की संभावना है

Java / Kotlin / Scala

  • java-find-secbugs: findsecbugs के साथ जावा कोड में सामान्य सुरक्षा मुद्दों की पहचान करता है
  • java-owasp: OWASP निर्भरता जाँचकर्ता के साथ ज्ञात कमजोरियों वाले gradle/maven निर्भरता के लिए जावा प्रोजेक्ट्स की जाँच करता है

Node.js

  • node-npmaudit: npm audit के साथ ज्ञात कमजोरियों वाले निर्भरता के लिए नोड प्रोजेक्ट्स की जाँच करता है
  • node-npmoutdated: npm outdated के साथ पुराने npm मॉड्यूल के लिए नोड प्रोजेक्ट्स की जाँच करता है
  • node-yarnaudit: yarn audit के साथ ज्ञात कमजोरियों वाले निर्भरता के लिए यार्न प्रोजेक्ट्स की जाँच करता है
  • node-yarnoutdated: yarn outdated के साथ पुराने यार्न मॉड्यूल के लिए नोड प्रोजेक्ट्स की जाँच करता है

PHP

  • php-security-checker: security-checker का उपयोग करके composer.lock में ज्ञात कमजोरियों वाले निर्भरता की जाँच करता है

Python

  • python-bandit: बैंडिट के साथ पायथन कोड में सामान्य सुरक्षा मुद्दों की जाँच करता है।
  • python-piprot: piprot के साथ पुराने पैकेजों के लिए पायथन निर्भरता की जाँच करता है
  • python-safety: सुरक्षा उपकरण के साथ पायथन निर्भरता में ज्ञात सुरक्षा कमजोरियों की जाँच करता है।

Ruby

  • ruby-brakeman: Brakeman के साथ Rails कोड का स्थिर विश्लेषण करता है।
  • ruby-bundler-scan: बंडलर का उपयोग करके ज्ञात कमजोरियों वाले रूबी रत्नों की जाँच करता है

Rust

  • rust-cargoaudit: cargo audit का उपयोग करके Cargo.lock में ज्ञात कमजोरियों वाले निर्भरता की जाँच करता है

मॉड्यूल जोड़ना

यदि आपके पास किसी मॉड्यूल के लिए कोई विचार है, तो कृपया समस्या अनुभाग में एक सुविधा अनुरोध खोलने में संकोच न करें। यदि आपके पास कुछ समय बचा है, तो कृपया हमें एक पुल अनुरोध भेजने पर विचार करें। मॉड्यूल को काम करते देखने के लिए, कृपया मॉड्यूल फ़ोल्डर में जाएँ ताकि पता चल सके कि चीजें कैसे काम कर रही हैं।

टूल डाउनलोड करें