
OSINT संग्रह से सुरक्षा अंतर्दृष्टि के लिए URLs निकालता है
सुरक्षा अंतर्दृष्टि के लिए OSINT अभिलेखागार से URL निकालता है।
Urx एक कमांड-लाइन टूल है जिसे OSINT अभिलेखागार, जैसे Wayback Machine और Common Crawl, से URL एकत्र करने के लिए डिज़ाइन किया गया है। दक्षता के लिए Rust के साथ बनाया गया, यह कई डेटा स्रोतों को तेज़ी से क्वेरी करने के लिए असिंक्रोनस प्रोसेसिंग का लाभ उठाता है। यह टूल किसी निर्दिष्ट डोमेन के लिए URL जानकारी एकत्र करने की प्रक्रिया को सरल बनाता है, जो एक व्यापक डेटासेट प्रदान करता है जिसका उपयोग विभिन्न उद्देश्यों के लिए किया जा सकता है, जिसमें सुरक्षा परीक्षण और विश्लेषण शामिल है।
--cdx-endpoint URL के साथ, किसी कोड परिवर्तन की आवश्यकता नहीं-H, --cookie और --user-agent urx द्वारा लक्ष्य को की जाने वाली प्रत्येक अनुरोध पर लागू होते हैं (--check-status, --extract-links, --extract-js-endpoints, --expand-specs) और जानबूझकर कभी किसी अभिलेखागार को नहीं भेजे जाते--match-regex / --filter-regex) द्वारा परिणाम फ़िल्टर करें--meta-*): संग्रह के बाद, प्रत्येक प्रदाता में समान रूप से पहली/अंतिम कैप्चर तिथि, रिकॉर्ड किए गए MIME प्रकार और रिकॉर्ड किए गए स्थिति पर फ़िल्टर करेंurx example.com/shop स्कोप को CDX क्वेरी में ही पुश करता है (url=example.com/shop*), इसलिए एक बड़ी साइट के सबट्री की लागत पूरे इंडेक्स का एक अंश होती है, बजाय क्लाइंट-पक्ष पर फ़िल्टर किए जाने के--scope-file): एक प्रोग्राम की अपनी *.example.com / !admin.example.com सूची का शब्दशः उपयोग, दोहराने योग्य और संयुक्त, बहिष्करण हमेशा जीतते हैं--dedup-similar)wordlist — वे पथ खंड और पैरामीटर नाम जिनसे लक्ष्य बना है, ids, hashes और तारीखों को छोड़कर--params (पूरे लक्ष्य की पैरामीटर सूची), --params-by-endpoint (कौन सा एंडपॉइंट क्या लेता है), और --fuzz-placeholder FUZZ (प्रति पैरामीटर हस्ताक्षर एक टेम्पलेटेड URL, ffuf या dalfox के लिए तैयार)first_seen, last_seen, mime, archive_status, और digest प्रत्येक URL के साथ वापस आते हैं जिसकी CDX अभिलेखागार ने रिपोर्ट की, बिना किसी अतिरिक्त नेटवर्क लागत के--stream): URL तब लिखे जाते हैं जब प्रत्येक प्रदाता उन्हें रिपोर्ट करता है, इसलिए एक पाइपलाइन तुरंत काम करना शुरू कर देती है, सबसे धीमे अभिलेखागार की प्रतीक्षा करने के बजाय--archive-body), ताकि ऐसे पृष्ठ जो अब मौजूद नहीं हैं, फिर भी उनमें मौजूद लिंक छोड़ दें — प्रति विशिष्ट निकाय एक अनुरोध, CDX digest डुप्लिकेट हटाने के कारण--extract-js-endpoints के साथ, संग्रहीत JavaScript का भी खनन करें: बिल्ड हैश द्वारा नामित एक बंडल साइट के पुनः परिनियोजन के क्षण 404 हो जाता है, और अभिलेखागार ही एकमात्र स्थान है जहाँ इसका API सतह अभी भी मौजूद है--archive-body-dir) को एक कोर्पस के रूप में रखें ताकि उन चीज़ों के लिए grep किया जा सके जिन्हें कोई लिंक एक्सट्रैक्टर नहीं ढूंढता — डेवलपर टिप्पणियाँ, इनलाइन क्रेडेंशियल, आंतरिक होस्टनाम — बिना किसी अतिरिक्त अनुरोध के--expand-specs): OpenAPI 3.x, Swagger 2.0 और GraphQL introspection दस्तावेज़, JSON या YAML, उनके द्वारा वर्णित प्रत्येक रूट में बदल दिए जाते हैं — एक अनुरोध पूरी प्रलेखित सतह खरीदता है--check-status Location, Content-Length और Content-Type भी रिकॉर्ड करता है, और --check-title HTML <title> जोड़ता है--archived-discovery): Wayback Machine के पास मौजूद प्रत्येक विशिष्ट संस्करण, इसलिए 2015 का Disallow: अभी भी उन पथों का नाम लेता है जिनका उल्लेख साइट ने तब से बंद कर दिया हैurx cache सबकमांड: stats, list, prune, drop <domain>, clear
cargo install urx
### Homebrew से```bash
# https://formulae.brew.sh/formula/urx
brew install urx
git clone https://github.com/hahwul/urx.git cd urx cargo build --release
The compiled binary will be available at `target/release/urx`.
### From Docker
[ghcr.io/hahwul/urx](https://github.com/hahwul/urx/pkgs/container/urx)
### Shell Completions
`urx` generates its own completion script, so it always matches the flags of
the binary you actually have installed.```bash
# zsh — any directory on your $fpath works
urx --completions zsh > ~/.zfunc/_urx
# (make sure ~/.zfunc is on the fpath, then `compinit`)
# bash
urx --completions bash > ~/.local/share/bash-completion/completions/urx
# fish
urx --completions fish > ~/.config/fish/completions/urx.fish
powershell और elvish भी समर्थित हैं। फ़्लैग को किसी लक्ष्य डोमेन की आवश्यकता नहीं है।
urx --manpage > ~/.local/share/man/man1/urx.1 man urx
## उपयोग