
उच्च गति वाला API और वेब सामग्री खोज उपकरण जो संकलित Swagger डेटासेट का उपयोग करके रूट्स को ब्रूटफोर्स करता है, जो डेप्थ स्कैनिंग, कस्टम वर्डलिस्ट और समवर्ती होस्ट स्कैनिंग का समर्थन करता है।

लंबे समय से, सामग्री खोज (content discovery) फ़ाइलों और फ़ोल्डरों को खोजने पर केंद्रित रही है। हालाँकि यह दृष्टिकोण पुराने वेब सर्वरों के लिए प्रभावी है जो स्थिर फ़ाइलें होस्ट करते हैं या आंशिक पथ पर 3xx का उत्तर देते हैं, लेकिन यह आधुनिक वेब अनुप्रयोगों, विशेष रूप से API के लिए प्रभावी नहीं है।
समय के साथ, हमने सामग्री खोज उपकरणों को तेज़ बनाने में बहुत समय निवेश किया है ताकि बड़ी वर्डलिस्ट का उपयोग किया जा सके, हालाँकि सामग्री खोज की कला में कोई नवाचार नहीं हुआ है।
Kiterunner एक ऐसा उपकरण है जो न केवल बिजली की तेज़ गति से पारंपरिक सामग्री खोज करने में सक्षम है, बल्कि आधुनिक अनुप्रयोगों में रूट्स/एंडपॉइंट्स की ब्रूटफोर्सिंग भी कर सकता है।
आधुनिक एप्लिकेशन फ्रेमवर्क जैसे Flask, Rails, Express, Django और अन्य स्पष्ट रूप से रूट्स को परिभाषित करने के प्रतिमान का पालन करते हैं, जो विशिष्ट HTTP विधियों, हेडर, पैरामीटर और मानों की अपेक्षा करते हैं।
पारंपरिक सामग्री खोज उपकरणों का उपयोग करने पर, ऐसे रूट्स अक्सर छूट जाते हैं और आसानी से खोजे नहीं जा सकते।
स्वैगर विनिर्देशों के एक डेटासेट को एकत्रित करके और इसे हमारे अपने स्कीमा में संक्षिप्त करके, Kiterunner इस डेटासेट का उपयोग API एंडपॉइंट्स की ब्रूटफोर्सिंग करने के लिए कर सकता है, प्रत्येक अनुरोध के लिए सही HTTP विधि, हेडर, पथ, पैरामीटर और मान भेजता है।
स्वैगर फ़ाइलें कई डेटा स्रोतों से एकत्रित की गईं, जिनमें 40 से अधिक सबसे सामान्य स्वैगर पथों के लिए एक इंटरनेट-व्यापी स्कैन शामिल था। अन्य डेटा स्रोतों में BigQuery के माध्यम से GitHub और APIs.guru शामिल हैं।
आप https://github.com/assetnote/kiterunner/releases से पूर्व-निर्मित प्रति डाउनलोड कर सकते हैं।
make build
ln -s $(pwd)/dist/kr /usr/local/bin/kr
kr kb compile routes.json routes.kite
kr scan hosts.txt -w routes.kite -x 20 -j 100 --ignore-length=1053
JSON डेटासेट नीचे दिए गए लिंक पर उपलब्ध हैं:
- [routes-large.json](https://wordlists-cdn.assetnote.io/rawdata/kiterunner/routes-large.json.tar.gz) (118MB संपीड़ित, 2.6GB डीकंप्रेस्ड)
- [routes-small.json](https://wordlists-cdn.assetnote.io/rawdata/kiterunner/routes-small.json.tar.gz) (14MB संपीड़ित, 228MB डीकंप्रेस्ड)
वैकल्पिक रूप से, नीचे दिए गए लिंक से संकलित `.kite` फ़ाइलें डाउनलोड करना संभव है:
- [routes-large.kite](https://wordlists-cdn.assetnote.io/data/kiterunner/routes-large.kite.tar.gz) (40MB संपीड़ित, 183M डीकंप्रेस्ड)
- [routes-small.kite](https://wordlists-cdn.assetnote.io/data/kiterunner/routes-small.kite.tar.gz) (2MB संपीड़ित, 35MB डीकंप्रेस्ड)
## AUR
आर्क-आधारित वितरण का उपयोग करने वाले उपयोगकर्ता [AUR](https://aur.archlinux.org/packages/kiterunner-bin/) से पूर्व-निर्मित बाइनरी डाउनलोड कर सकते हैं।
kiterunner को स्थापित करने के लिए आप `yay` जैसे "Aur Helper" का उपयोग कर सकते हैं।```
yay -S kiterunner-bin
kr [scan|brute] [flags]
- `<input>` एक फ़ाइल, डोमेन या URI हो सकता है। हम आपके लिए इसका पता लगा लेंगे। देखें [Input/Host Formatting](#inputhost-formatting) अधिक जानकारी के लिए।```
# Just have a list of hosts and no wordlist
kr scan hosts.txt -A=apiroutes-210328:20000 -x 5 -j 100 --fail-status-codes 400,401,404,403,501,502,426,411
# You have your own wordlist but you want assetnote wordlists too
kr scan target.com -w routes.kite -A=apiroutes-210328:20000 -x 20 -j 1 --fail-status-codes 400,401,404,403,501,502,426,411
# Bruteforce like normal but with the first 20000 words
kr brute https://target.com/subapp/ -A=aspx-210328:20000 -x 20 -j 1
# Use a dirsearch style wordlist with %EXT%
kr brute https://target.com/subapp/ -w dirsearch.txt -x 20 -j 1 -exml,asp,aspx,ashx -D
Usage: kite scan [flags]