
एक Python script जो JavaScript files में endpoints ढूंढता है
LinkFinder एक पायथन स्क्रिप्ट है जो जावास्क्रिप्ट फ़ाइलों में एंडपॉइंट और उनके पैरामीटर खोजने के लिए लिखी गई है। इस तरह पेनिट्रेशन टेस्टर और बग हंटर उन वेबसाइटों पर नए, छिपे हुए एंडपॉइंट इकट्ठा कर सकते हैं जिनका वे परीक्षण कर रहे हैं। इसके परिणामस्वरूप नया परीक्षण क्षेत्र मिलता है, जिसमें नई कमज़ोरियाँ हो सकती हैं। यह jsbeautifier का उपयोग करके काफी बड़े रेगुलर एक्सप्रेशन के साथ काम करता है। रेगुलर एक्सप्रेशन चार छोटे रेगुलर एक्सप्रेशन से मिलकर बना है। ये खोजने के लिए जिम्मेदार हैं:
https://example.com/*)/\* या ../*)text/test.php)test.php)आउटपुट HTML या प्लेनटेक्स्ट में दिया जाता है। @karel_origin ने LinkFinder के लिए एक Chrome एक्सटेंशन लिखा है जिसे यहाँ पाया जा सकता है।

LinkFinder Python 3 का समर्थन करता है।
$ git clone https://github.com/GerbenJavado/LinkFinder.git
$ cd LinkFinder
$ python setup.py install
LinkFinder argparse और jsbeautifier पायथन मॉड्यूल पर निर्भर करता है। इन सभी निर्भरताओं को pip का उपयोग करके स्थापित किया जा सकता है।
$ pip3 install -r requirements.txt
python linkfinder.py -i https://example.com/1.js -o results.html
python linkfinder.py -i https://example.com/1.js -o cli
python linkfinder.py -i https://example.com -d
Save selected items, उस फ़ाइल को इनपुट के रूप में दें):python linkfinder.py -i burpfile -b
python linkfinder.py -i 'Desktop/*.js' -r ^/api/ -o results.html
डॉकर इमेज बनाएँ:
docker build -t linkfinder
डॉकर के साथ चलाएँ
docker run --rm -v $(pwd):/linkfinder/output linkfinder -i http://example.com/1.js -o /linkfinder/output/output.html
सुनिश्चित करें कि आप अपने आउटपुट पथ में /linkfinder/output पथ का उपयोग करें, अन्यथा कंटेनर से बाहर निकलने पर आउटपुट खो जाएगा।
pytest test_parser.py
| Short Form | Long Form | Description |
|---|
| -i | --input | इनपुट: URL, फ़ाइल या फ़ोल्डर। फ़ोल्डर के लिए वाइल्डकार्ड का उपयोग किया जा सकता है (जैसे '/*.js')। |
| -o | --output | "cli" STDOUT पर प्रिंट करने के लिए, अन्यथा HTML फ़ाइल को सहेजने का स्थान डिफ़ॉल्ट: output.html |
| -r | --regex | पाए गए एंडपॉइंट के विरुद्ध फ़िल्टरिंग के लिए RegEx (जैसे ^/api/) |
| -d | --domain | पूरे डोमेन का विश्लेषण करते समय उपयोग करने के लिए टॉगल। सभी पाई गई JS फ़ाइलों की गणना करता है। |
| -b | --burp | बर्प 'Save selected' फ़ाइल (जिसमें कई JS फ़ाइलें हों) इनपुट करते समय उपयोग करने के लिए टॉगल |
| -c | --cookies | अनुरोध में कुकीज़ जोड़ें |
| -h | --help | सहायता संदेश दिखाएँ और बाहर निकलें |