
मॉड्यूलर सुरक्षा स्कैनिंग ऑर्केस्ट्रेटर जो नेटवर्क, वेब ऐप्स, मोबाइल ऐप्स और API में कमजोरी का पता लगाने, टोह लेने और फिंगरप्रिंटिंग के लिए विशेष एजेंटों को जोड़ता है।
[](https://badge.fury.io/py/ostorlab) [](https://pepy.tech/project/ostorlab) [](https://blog.ostorlab.co/) [](https://twitter.com/ostorlabsec) # OXO स्कैन ऑर्केस्ट्रेशन इंजन OXO एक सुरक्षा स्कैनिंग फ्रेमवर्क है जो मॉड्यूलरिटी, स्केलेबिलिटी और सरलता के लिए बनाया गया है। यह ओपन सोर्स है और [Ostorlab](https://ostorlab.co) द्वारा अनुरक्षित है। OXO इंजन विशेष उपकरणों को एक साथ मिलाकर काम करता है ताकि कमजोरियों को खोजा जा सके और recon, enumeration, और fingerprinting जैसी कार्रवाइयाँ की जा सकें। * [दस्तावेज़ीकरण](https://oxo.ostorlab.co/docs) * [एजेंट स्टोर](https://oxo.ostorlab.co/store) * [CLI मैनुअल](https://oxo.ostorlab.co/docs/manual) * [उदाहरण](https://oxo.ostorlab.co/tutorials/examples)  # मुख्य विशेषताएँ * **मॉड्यूलर और स्केलेबल**: व्यापक स्कैन करने के लिए कई विशेष एजेंटों को आसानी से संयोजित करें। * **व्यापक एसेट समर्थन**: IP पतों और डोमेन से लेकर मोबाइल एप्लिकेशन (Android, iOS, HarmonyOS) और API स्कीमा तक कुछ भी स्कैन करें। * **एजेंट स्टोर**: लोकप्रिय सुरक्षा उपकरणों के लिए समुदाय और आधिकारिक एजेंटों की बढ़ती लाइब्रेरी तक पहुँचें। * **विस्तारणीय**: एक सरल Python-आधारित फ्रेमवर्क का उपयोग करके अपने स्वयं के एजेंट बनाने और प्रकाशित करने के लिए अंतर्निहित समर्थन। * **API फर्स्ट**: CI/CD पाइपलाइनों और अन्य स्वचालित वर्कफ़्लो में आसान एकीकरण के लिए GraphQL API की सुविधा। # आवश्यकताएँ स्थानीय रूप से स्कैन चलाने के लिए Docker आवश्यक है। Docker स्थापित करने के लिए, कृपया इन [निर्देशों](https://docs.docker.com/get-docker/) का पालन करें। # स्थापना OXO PyPI पर एक Python पैकेज के रूप में उपलब्ध है। इसे स्थापित करने के लिए, यदि आपके पास पहले से `pip` स्थापित है तो बस निम्नलिखित कमांड चलाएँ। ```shell pip install -U ostorlab ``` # शुरुआत करना OXO एक स्टोर के साथ आता है जिसमें दर्जनों एजेंट हैं, जिनमें Nmap, Nuclei, या Tsunami जैसे नेटवर्क स्कैनिंग एजेंट, ZAP जैसे वेब स्कैनर, WhatWeb और Wappalyzer जैसे वेब फिंगरप्रिंटिंग टूल, Subfinder और Dnsx जैसे DNS ब्रूट-फोर्सिंग टूल, VirusTotal जैसे मैलवेयर फ़ाइल स्कैनिंग, और बहुत कुछ शामिल हैं। इन सभी टूल्स को संयोजित रूप से चलाने के लिए, बस निम्नलिखित कमांड चलाएँ: > OXO CLI को `oxo` या `ostorlab` कमांड्स का उपयोग करके एक्सेस किया जा सकता है। ```shell oxo scan run --install --agent agent/ostorlab/nmap --agent agent/ostorlab/tsunami --agent agent/ostorlab/nuclei ip 8.8.8.8 ``` यह कमांड निम्नलिखित स्कैनिंग एजेंटों को डाउनलोड और इंस्टॉल करेगा: * [agent/ostorlab/nmap](https://oxo.ostorlab.co/store/agent/ostorlab/nmap) * [agent/ostorlab/tsunami](https://oxo.ostorlab.co/store/agent/ostorlab/tsunami) * [agent/ostorlab/nuclei](https://oxo.ostorlab.co/store/agent/ostorlab/nuclei) यह लक्ष्य IP पते `8.8.8.8` को स्कैन करेगा। एजेंट मानक Docker इमेज के रूप में उपलब्ध कराए जाते हैं। # स्कैन प्रबंधन स्कैन स्थिति की जाँच करने के लिए, चलाएँ: ```shell oxo scan list ``` स्कैन पूरा होने के बाद, स्कैन परिणामों तक पहुँचने के लिए, चलाएँ: ```shell oxo vulnz list --scan-id <scan-id> oxo vulnz describe --vuln-id <vuln-id> ``` चल रहे स्कैन को रोकने के लिए, चलाएँ: ```shell oxo scan stop --scan-id <scan-id> ``` # Docker इमेज कंटेनर में `oxo` चलाने के लिए, आप सार्वजनिक रूप से उपलब्ध इमेज का उपयोग कर सकते हैं और निम्नलिखित कमांड चला सकते हैं: ```shell docker run -v /var/run/docker.sock:/var/run/docker.sock ostorlab/oxo:latest scan run --install --agent agent/ostorlab/nmap ip 8.8.8.8 ``` नोट्स: * कमांड सीधे इस प्रकार शुरू होता है: `scan run`, ऐसा इसलिए है क्योंकि `ostorlab/oxo` इमेज में `oxo` को `entrypoint` के रूप में सेट किया गया है। * Docker सॉकेट को माउंट करना महत्वपूर्ण है ताकि OXO होस्ट मशीन पर एजेंट बना सके। # ऑन-प्रेम स्कैनर लॉग्स OXO को ऑन-प्रेम स्कैनर के रूप में चलाते समय, स्कैनर लॉग्स को डिस्क पर लिखने के लिए `--persist-logs` का उपयोग करें: ```shell oxo scanner --scanner-id <scanner-uuid> --persist-logs ``` डिफ़ॉल्ट रूप से, लॉग्स `~/.ostorlab/scanner.log` में लिखे जाते हैं। दूसरी फ़ाइल चुनने के लिए: ```shell oxo scanner --scanner-id <scanner-uuid> --persist-logs --log-file /var/log/ostorlab/scanner.log ``` संग्रहीत लॉग वर्बोसिटी बदलने के लिए: ```shell oxo scanner --scanner-id <scanner-uuid> --persist-logs --log-level DEBUG ``` # एसेट्स OXO कई एसेट प्रकारों को स्कैन करने का समर्थन करता है, जिससे विभिन्न प्लेटफ़ॉर्म और प्रोटोकॉल पर व्यापक सुरक्षा कवरेज संभव होती है। | श्रेणी | एसेट | विवरण | |----------|-------|-------------| | **नेटवर्क** | `ip` | IP पता या IP रेंज (v4 और v6)। | | | `domain-name` | डोमेन नाम। | | **वेब** | `link` | वेब लिंक, जिसमें URL, मेथड, हेडर्स, और रिक्वेस्ट बॉडी स्वीकार की जाती है। | | | `api-schema` | API स्कीमा (OpenAPI, GraphQL, आदि)। | | **मोबाइल** | `android-apk` / `android-aab` | Android पैकेज फ़ाइलें (.APK, .AAB)। | | | `android-store` | Google Play Store में Android ऐप। | | | `ios-ipa` | iOS पैकेज फ़ाइल (.IPA)। | | | `ios-store` | Apple App Store में iOS ऐप। | | | `ios-testflight` | TestFlight में iOS ऐप। | | | `harmonyos-apk` / `harmonyos-hap` | HarmonyOS पैकेज फ़ाइलें। | | **अन्य** | `file` | सामान्य फ़ाइल। | | | `phone-number` | फ़ोन नंबर। | | | `agent` | एक एजेंट की मेटा-स्कैनिंग। | # स्टोर OXO सभी एजेंटों को एक सार्वजनिक स्टोर पर सूचीबद्ध करता है जहाँ आप खोज सकते हैं और अपने स्वयं के एजेंट भी प्रकाशित कर सकते हैं।  # अपना पहला एजेंट प्रकाशित करें अपना पहला एजेंट लिखने के लिए, आप यहाँ एक पूर्ण ट्यूटोरियल देख सकते हैं [यहाँ](https://oxo.ostorlab.co/tutorials/write_an_agent)। चरण मूल रूप से इस प्रकार हैं: * एक टेम्पलेट एजेंट क्लोन करें जिसमें सभी फ़ाइलें पहले से सेटअप हों। * अपना लॉजिक जोड़ने के लिए `template_agent.py` फ़ाइल बदलें। * कोई भी अतिरिक्त बिल्डिंग चरण जोड़कर `Dockerfile` बदलें। * सेलेक्टर्स, दस्तावेज़ीकरण, इमेज, और लाइसेंस जोड़कर `ostorlab.yaml` बदलें। * इसे स्टोर पर प्रकाशित करें। एक बार जब आप अपना एजेंट लिख लेते हैं, तो आप इसे स्टोर पर प्रकाशित कर सकते हैं ताकि दूसरे इसे उपयोग और खोज सकें। स्टोर एजेंट बिल्डिंग को संभालेगा और आपके Git रेपो से नए रिलीज़ स्वचालित रूप से उठाएगा।  ## बनाने के लिए एजेंट के लिए विचार लोकप्रिय टूल्स के कार्यान्वयन जैसे: * ~~[semgrep](https://github.com/returntocorp/semgrep) सोर्स कोड स्कैनिंग के लिए।~~ * [nbtscan](http://www.unixwiz.net/tools/nbtscan.html): आपके लक्ष्य के नेटवर्क पर खुले NetBIOS नेम सर्वर के लिए स्कैन करता है। * [onesixtyone](https://github.com/trailofbits/onesixtyone): सार्वजनिक रूप से उजागर SNMP सेवाओं को खोजने के लिए तेज़ स्कैनर। * [Retire.js](http://retirejs.github.io/retire.js/): ज्ञात कमजोरियों वाली JavaScript लाइब्रेरीज़ के उपयोग का पता लगाने वाला स्कैनर। * ~~[snallygaster](https://github.com/hannob/snallygaster): HTTP सर्वर पर फ़ाइल लीक और अन्य सुरक्षा समस्याओं को खोजता है।~~ * ~~[testssl.sh](https://testssl.sh/): Heartbleed, CRIME, और ROBOT सहित विभिन्न TLS/SSL कमजोरियों की पहचान करता है।~~ * ~~[TruffleHog](https://github.com/trufflesecurity/truffleHog): उच्च-एंट्रॉपी स्ट्रिंग्स और सीक्रेट्स के लिए Git रेपोज़िटरीज़ में खोजता है, कमिट इतिहास में गहराई तक जाता है।~~ * [cve-bin-tool](https://github.com/intel/cve-bin-tool): कमजोर घटकों के लिए बाइनरीज़ को स्कैन करता है। * [XSStrike](https://github.com/s0md3v/XSStrike): जनरेटिव पेलोड के साथ XSS वेब कमजोरी स्कैनर। * ~~[Subjack](https://github.com/haccer/subjack): सबडोमेन टेकओवर स्कैनिंग टूल।~~ * [DnsReaper](https://github.com/punk-security/dnsReaper): सबडोमेन टेकओवर स्कैनिंग टूल। * [Gitleaks](https://github.com/gitleaks/gitleaks): हार्डकोडेड सीक्रेट्स का पता लगाने और रोकने के लिए SAST टूल। * [ffuf](https://github.com/ffuf/ffuf): Go में लिखा गया तेज़ वेब फ़ज़र। * [Gobuster](https://github.com/OJ/gobuster): URIs, DNS सबडोमेन, और अधिक को ब्रूट-फोर्स करने के लिए उपयोग किया जाने वाला टूल। ## श्रेय तेज़ी से विकसित हो रहे क्षेत्र में एक ओपन-सोर्स प्रोजेक्ट के रूप में, हम हमेशा योगदान के लिए खुले हैं, चाहे वह नई सुविधा, बेहतर इंफ्रास्ट्रक्चर, या बेहतर दस्तावेज़ीकरण के रूप में हो। शुरू करने के लिए [CONTRIBUTING.md](https://github.com/ostorlab/oxo/blob/main/CONTRIBUTING.md) देखें। हम OXO को एक बेहतर टूल बनाने में मदद करने के लिए निम्नलिखित योगदानकर्ताओं को धन्यवाद देना चाहते हैं: * [@jamu85](https://github.com/jamu85) * [@ju-c](https://github.com/ju-c) * [@distortedsignal](https://github.com/distortedsignal)