
विविध स्रोतों से उपडोमेन गणना उपकरण जिसमें 50+ संग्रह मॉड्यूल, DNS ब्रूट-फ़ोर्स, निष्क्रिय DNS विश्लेषण, प्रमाणपत्र पारदर्शिता, सर्च इंजन स्क्रैपिंग, और रिकॉनिसेंस के लिए उपडोमेन अधिग्रहण पहचान शामिल है।
👊OneForAll एक शक्तिशाली उपडोमेन संग्रह उपकरण है 📝अंग्रेज़ी दस्तावेज़
📢 कृपया इस दस्तावेज़ को पढ़ने के लिए थोड़ा समय अवश्य लें, इससे आपको OneForAll से शीघ्रता से परिचित होने में मदद मिलेगी!
OneForAll Python 3.6.0 पर विकसित और परीक्षण किया गया है, OneForAll को चलाने के लिए Python 3.6.0 से उच्च संस्करण की आवश्यकता है। Python पर्यावरण स्थापित करने के लिए Python 3 स्थापना मार्गदर्शिका देखें। Python और pip3 संस्करण जांचने के लिए निम्न आदेश चलाएँ:
python -V
pip3 -V
यदि आपको निम्न जैसा आउटपुट दिखाई देता है तो Python पर्यावरण सही है:
Python 3.6.0
pip 19.2.2 from C:\Users\shmilylty\AppData\Roaming\Python\Python36\site-packages\pip (python 3.6)
चूँकि यह परियोजना विकासाधीन है और निरंतर अद्यतन होती रहेगी, कृपया git clone का उपयोग करके नवीनतम कोड रिपॉजिटरी को क्लोन करें, जिससे बाद में अद्यतन करना भी आसान होगा। Releases से डाउनलोड करने की अनुशंसा नहीं की जाती क्योंकि वहाँ संस्करण धीरे-धीरे अद्यतन होते हैं और अद्यतन करना सुविधाजनक नहीं है।
यह परियोजना गिटी (Gitee) पर भी प्रतिबिंबित है, भारतीय उपयोगकर्ताओं के लिए गिटी से क्लोन करने की सलाह दी जाती है क्योंकि यह तेज़ है:
git clone https://gitee.com/shmilylty/OneForAll.git
या:
git clone https://github.com/shmilylty/OneForAll.git
आप pip3 के माध्यम से OneForAll की निर्भरताएँ स्थापित कर सकते हैं। निम्नलिखित Windows सिस्टम में pip3 का उपयोग करके निर्भरताएँ स्थापित करने का उदाहरण है: ध्यान दें: यदि आपका Python3 सिस्टम के Program Files निर्देशिका में स्थापित है, जैसे C:\Program Files\Python36, तो कृपया व्यवस्थापक के रूप में कमांड प्रॉम्प्ट (cmd) चलाएँ और निम्न आदेश निष्पादित करें!
cd OneForAll/
python3 -m pip install -U pip setuptools wheel -i https://mirrors.aliyun.com/pypi/simple/
pip3 install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/
python3 oneforall.py --help
अन्य प्लेटफार्मों के लिए कृपया निर्भरता स्थापना देखें। यदि स्थापना के दौरान किसी निर्भरता पुस्तकालय के संकलन में विफलता होती है, तो में समाधान देखें। यदि समस्या हल नहीं होती है, तो कृपया समूह में शामिल होकर प्रतिक्रिया दें।
सबसे पहले कॉन्फ़िगरेशन फ़ाइल डाउनलोड करें और संपादित करें, अपने स्वयं के api और व्यक्तिगत सेटिंग्स जोड़ें, और मूल फ़ाइल संरचना बनाए रखें
config
├── api.py
├── default.py
├── __init__.py
├── log.py
└── setting.py
इमेज पुल करें और निष्पादित करें, जहाँ ~/.config को आपकी कॉन्फ़िगरेशन फ़ाइलों वाले फ़ोल्डर के पथ से बदलें
docker pull shmilylty/oneforall
docker run -it --rm -v ~/results:/OneForAll/results -v ~/.config:/OneForAll/config shmilylty/oneforall --target example.com run
पैरामीटर सीधे कमांड के अंत में जोड़ें, परिणाम स्थानीय निर्देशिका ~/results में आउटपुट होंगे। यदि दूसरे स्थान पर सहेजना चाहते हैं, तो स्वयं संशोधित कर सकते हैं
यदि आपने pip3 के माध्यम से निर्भरताएँ स्थापित की हैं, तो निम्न आदेश का उपयोग करके उदाहरण चलाएँ:
python3 oneforall.py --target example.com run
python3 oneforall.py --targets ./example.txt run
हम python3 oneforall.py --target example.com run कमांड को उदाहरण के रूप में लेते हैं। OneForAll डिफ़ॉल्ट पैरामीटर के साथ सामान्य रूप से निष्पादित होने पर results निर्देशिका में संबंधित परिणाम उत्पन्न करेगा:

example.com.csv प्रत्येक मुख्य डोमेन के अंतर्गत उपडोमेन संग्रह परिणाम है।
all_subdomain_result_1583034493.csv OneForAll द्वारा प्रत्येक रन में एकत्रित उपडोमेन का सारांश परिणाम है, जिसमें example.com.csv शामिल है, जो बैच संग्रह परिदृश्यों में सभी परिणाम प्राप्त करने के लिए सुविधाजनक है।
result.sqlite3 SQLite3 परिणाम डेटाबेस है जो OneForAll द्वारा प्रत्येक रन में एकत्रित उपडोमेन को संग्रहीत करता है, इसकी डेटाबेस संरचना नीचे चित्र में दिखाई गई है:

इसमें example_com_origin_result जैसी तालिकाएँ प्रत्येक मॉड्यूल के प्रारंभिक उपडोमेन संग्रह परिणामों को संग्रहीत करती हैं।
इसमें example_com_resolve_result जैसी तालिकाएँ उपडोमेन के समाधान के बाद के परिणामों को संग्रहीत करती हैं।
इसमें example_com_last_result जैसी तालिकाएँ पिछले उपडोमेन संग्रह परिणामों को संग्रहीत करती हैं (दो बार से अधिक संग्रह करने पर उत्पन्न होती हैं)।
कमांड लाइन पैरामीटर केवल कुछ सामान्य पैरामीटर प्रदान करते हैं। अधिक विस्तृत पैरामीटर कॉन्फ़िगरेशन के लिए कृपया setting.py देखें। यदि आपको लगता है कि कुछ पैरामीटर कमांड इंटरफेस में अक्सर उपयोग किए जाते हैं या कुछ कमी है, तो कृपया प्रतिक्रिया दें। सर्वविदित कारणों से, यदि कुछ अवरुद्ध संग्रह इंटरफेस का उपयोग करना है, तो कृपया पहले setting.py में प्रॉक्सी कॉन्फ़िगर करें। कुछ संग्रह मॉड्यूल को API प्रदान करने की आवश्यकता होती है (अधिकांश मुफ्त में पंजीकरण करके प्राप्त किए जा सकते हैं), यदि उपयोग करना है तो api.py में API जानकारी कॉन्फ़िगर करें, यदि उपयोग नहीं करना है तो संबंधित त्रुटि संदेशों को अनदेखा करें। (विस्तृत मॉड्यूल के लिए संग्रह मॉड्यूल स्पष्टीकरण पढ़ें।)
OneForAll कमांड लाइन इंटरफ़ेस Fire पर आधारित है। Fire के अधिक उन्नत उपयोग के लिए कृपया Fire CLI का उपयोग देखें।
oneforall.py मुख्य प्रोग्राम प्रवेश बिंदु है। oneforall.py brute.py, takerover.py और dbexport.py जैसे मॉड्यूल को कॉल कर सकता है। उपडोमेन ब्रूट-फ़ोर्सिंग की सुविधा के लिए brute.py को अलग किया गया है, उपडोमेन अधिग्रहण जोखिम जाँच की सुविधा के लिए takerover.py को अलग किया गया है, और डेटाबेस निर्यात की सुविधा के लिए dbexport.py को अलग किया गया है। ये मॉड्यूल स्वतंत्र रूप से चलाए जा सकते हैं, और इनमें अधिक पैरामीटर होते हैं। यदि आप इन मॉड्यूल का अलग से उपयोग करना चाहते हैं, तो कृपया उपयोग सहायता देखें।
❗ध्यान दें: जब आप उपयोग के दौरान किसी समस्या या संदेह का सामना करते हैं, तो कृपया पहले Issues में खोजें, और सामान्य प्रश्न और उत्तर भी देखें।
oneforall.py उपयोग सहायता
परियोजना पता: https://github.com/shmilylty/OneForAll
पेनिट्रेशन टेस्टिंग में जानकारी एकत्र करने का महत्व स्पष्ट है। उपडोमेन संग्रह जानकारी एकत्र करने का एक आवश्यक और बहुत महत्वपूर्ण हिस्सा है। वर्तमान में इंटरनेट पर कई ओपन-सोर्स उपडोमेन संग्रह उपकरण उपलब्ध हैं, लेकिन उनमें कुछ समस्याएँ हैं:
इन समस्याओं को हल करने के लिए, यह परियोजना अस्तित्व में आई है। जैसा कि इसके नाम से संकेत मिलता है, मुझे उम्मीद है कि OneForAll एक व्यापक, तेज़ और शक्तिशाली उपडोमेन संग्रह का अंतिम समाधान होगा 🔨।
वर्तमान में OneForAll विकासाधीन है, निश्चित रूप से कई समस्याएँ और सुधार के क्षेत्र हैं। यदि आप Issues और PR जमा करना चाहते हैं तो आपका स्वागत है। यदि यह उपकरण काम आता है, तो कृपया एक ⭐ दें। वर्तमान में OneForAll के लिए एक विशेष QQ समूह है: 824414244 (समूह में शामिल होने के लिए सत्यापन: जानकारी संग्रह)।
censys_api, certspotter, crtsh, entrust, google, spyse_api)axfr, क्रॉस-ओरिजिन पॉलिसी फ़ाइल cdx, HTTPS प्रमाणपत्र cert, सामग्री सुरक्षा नीति csp, robots फ़ाइल robots, sitemap फ़ाइल sitemap, NSEC रिकॉर्ड का उपयोग करके DNS डोमेन ट्रैवर्सल dnssec, भविष्य में NSEC3 रिकॉर्ड जैसे मॉड्यूल जोड़े जाएँगे)यदि आपके पास कोई अन्य बढ़िया विचार है, तो कृपया मुझे बताएं! 😎
अधिक जानकारी के लिए कृपया निर्देशिका संरचना स्पष्टीकरण देखें।
इस परियोजना के docs निर्देशिका में कुछ सहायता और स्पष्टीकरण भी उपलब्ध हैं, जैसे उपडोमेन शब्दकोश स्रोत स्पष्टीकरण, वाइल्डकार्ड पार्सिंग निर्णय प्रक्रिया।
इन महान Python लाइब्रेरीज़ का धन्यवाद!
यह परियोजना SemVer भाषाई संस्करण प्रारूप का उपयोग करके संस्करण प्रबंधन करती है। आप परिवर्तन स्पष्टीकरण में ऐतिहासिक परिवर्तन देख सकते हैं।
अधिक जानकारी के लिए आगामी विकास योजनाएँ देखें।
इस परियोजना को बेहतर बनाने में सभी देवताओं का हार्दिक स्वागत है!
आप योगदानकर्ता दस्तावेज़ में सभी योगदानकर्ताओं और उनके योगदानों को देख सकते हैं। उन्हें धन्यवाद जिन्होंने OneForAll को और अधिक शक्तिशाली और उपयोगी बनाया।
यदि आपको लगता है कि इस परियोजना ने आपकी मदद की है, तो आप प्रोत्साहन के रूप में एक कप कॉफी खरीद सकते हैं :)

यह परियोजना GPL-3.0 लाइसेंस के तहत लाइसेंस प्राप्त है। विवरण के लिए कृपया LICENSE देखें।
इंटरनेट पर सभी ओपन-सोर्स उपडोमेन संग्रह परियोजनाओं का धन्यवाद!
A-Team के बड़े भाइयों का उनके उत्साहपूर्ण और निःस्वार्थ प्रश्न समाधान के लिए धन्यवाद!
यह उपकरण केवल पर्याप्त वैध प्राधिकरण वाले उद्यम सुरक्षा निर्माण में उपयोग के लिए है। इस उपकरण का उपयोग करते समय, आपको यह सुनिश्चित करना होगा कि आपके सभी कार्य स्थानीय कानूनों और विनियमों का अनुपालन करते हैं। यदि आप इस उपकरण का उपयोग करते समय कोई अवैध गतिविधि करते हैं, तो आप सभी परिणाम स्वयं वहन करेंगे। इस उपकरण के सभी डेवलपर्स और सभी योगदानकर्ता कोई कानूनी या संबद्ध जिम्मेदारी नहीं लेंगे। जब तक आपने इस समझौते की सभी शर्तों को पूरी तरह से नहीं पढ़ा, समझा और स्वीकार नहीं किया है, कृपया इस उपकरण को स्थापित या उपयोग न करें। आपका उपयोग या इस समझौते को स्वीकार करने का कोई अन्य स्पष्ट या अंतर्निहित तरीका यह माना जाएगा कि आपने इस समझौते को पढ़ लिया है और इसके प्रतिबंधों से सहमत हैं।
परियोजना को अद्यतन करने के लिए निम्न आदेश चलाएँ (/config/setting.py और /config/api.py में किए गए संशोधन संरक्षित रहेंगे):
git stash # स्थानीय संशोधनों को संचित करें
git fetch --all # परियोजना अद्यतन प्राप्त करें
git pull # डाउनलोड और ओवरराइट करें
git stash pop # स्थानीय संशोधन जारी करें
इसमें example_com_now_result जैसी तालिकाएँ वर्तमान उपडोमेन संग्रह परिणामों को संग्रहीत करती हैं, सामान्यतः इसी तालिका पर ध्यान देना पर्याप्त है।
अधिक जानकारी के लिए कृपया फ़ील्ड स्पष्टीकरण देखें।
निम्नलिखित सहायता जानकारी नवीनतम नहीं हो सकती है, कृपया नवीनतम सहायता जानकारी के लिए python oneforall.py --help का उपयोग करें।
python oneforall.py --help
NAME
oneforall.py - OneForAll帮助信息
SYNOPSIS
oneforall.py COMMAND | --target=TARGET <flags>
DESCRIPTION
OneForAll是一款功能强大的子域收集工具
Example:
python3 oneforall.py version
python3 oneforall.py --target example.com run
python3 oneforall.py --targets ./domains.txt run
python3 oneforall.py --target example.com --valid None run
python3 oneforall.py --target example.com --brute True run
python3 oneforall.py --target example.com --port small run
python3 oneforall.py --target example.com --fmt csv run
python3 oneforall.py --target example.com --dns False run
python3 oneforall.py --target example.com --req False run
python3 oneforall.py --target example.com --takeover False run
python3 oneforall.py --target example.com --show True run
Note:
参数alive可选值True,False分别表示导出存活,全部子域结果
参数port可选值有'default', 'small', 'large', 详见config.py配置
参数fmt可选格式有 'csv','json'
参数path默认None使用OneForAll结果目录生成路径
ARGUMENTS
TARGET
单个域名(二选一必需参数)
TARGETS
每行一个域名的文件路径(二选一必需参数)
FLAGS
--brute=BRUTE
s
--dns=DNS
DNS解析子域(默认True)
--req=REQ
HTTP请求子域(默认True)
--port=PORT
请求验证子域的端口范围(默认只探测80端口)
--valid=VALID
只导出存活的子域结果(默认False)
--fmt=FMT
结果保存格式(默认csv)
--path=PATH
结果保存路径(默认None)
--takeover=TAKEOVER
检查子域接管(默认False)
archivecrawl, commoncrawl, यह मॉड्यूल अभी भी डिबगिंग में है, और इसमें और जोड़ने और सुधारने की आवश्यकता है)bevigil_api, binaryedge_api, bufferover, cebaidu, chinaz, chinaz_api, circl_api, cloudflare, dnsdb_api, dnsdumpster, hackertarget, ip138, ipv4info_api, netcraft, passivedns_api, ptrarchive, qianxun, rapiddns, riddler, robtex, securitytrails_api, sitedossier, threatcrowd, wzpc, ximcx)srv, और डोमेन के DNS रिकॉर्ड में MX, NS, SOA, TXT रिकॉर्ड की क्वेरी करके उपडोमेन संग्रह)alienvault, riskiq_api, threatbook_api, threatminer, virustotal, virustotal_api, इस मॉड्यूल में और जोड़ने और सुधारने की आवश्यकता है)ask, baidu, bing, bing_api, duckduckgo, exalead, fofa_api, gitee, github, github_api, google, google_api, shodan_api, so, sogou, yahoo, yandex, zoomeye_api), सर्च मॉड्यूल में विशेष सर्च इंजन को छोड़कर, सामान्य सर्च इंजन स्वचालित बहिष्करण, पूर्ण स्कैन और पुनरावर्ती स्कैन का समर्थन करते हैं।txt, csv, json प्रारूपों में निर्यात का समर्थन करता है।