
New releaseSep 19, 2026
urx v0.11.0
OSINT संग्रह से सुरक्षा अंतर्दृष्टि के लिए URLs निकालता है
सुरक्षा अंतर्दृष्टि के लिए OSINT अभिलेखागार से URL निकालता है।
Urx एक कमांड-लाइन टूल है जिसे OSINT अभिलेखागार, जैसे Wayback Machine और Common Crawl, से URL एकत्र करने के लिए डिज़ाइन किया गया है। दक्षता के लिए Rust के साथ बनाया गया, यह कई डेटा स्रोतों को तेज़ी से क्वेरी करने के लिए असिंक्रोनस प्रोसेसिंग का लाभ उठाता है। यह टूल किसी निर्दिष्ट डोमेन के लिए URL जानकारी एकत्र करने की प्रक्रिया को सरल बनाता है, जो एक व्यापक डेटासेट प्रदान करता है जिसका उपयोग विभिन्न उद्देश्यों के लिए किया जा सकता है, जिसमें सुरक्षा परीक्षण और विश्लेषण शामिल है।
विशेषताएँ
- समानांतर में कई स्रोतों से URL प्राप्त करें (Wayback Machine, Common Crawl, OTX, Arquivo.pt)
- किसी भी अन्य CDX इंडेक्स सर्वर को प्लग इन करें — राष्ट्रीय वेब अभिलेखागार, एक निजी pywb, OutbackCDX —
--cdx-endpoint URLके साथ, किसी कोड परिवर्तन की आवश्यकता नहीं - डिफ़ॉल्ट रूप से कीलेस: Wayback, Common Crawl, OTX, Arquivo.pt, और URLScan (अनाम) सभी API कुंजी के बिना काम करते हैं
- BeVigil प्रदाता: अनपैक किए गए Android ऐप्स से निकाले गए URL — ऐसे एंडपॉइंट जिन्हें किसी वेब अभिलेखागार ने कभी क्रॉल नहीं किया
- प्रत्येक कीड प्रदाता (VirusTotal, URLScan, ZoomEye, GitHub, BeVigil) के लिए API कुंजी रोटेशन, दर सीमाओं को कम करने के लिए
- प्रमाणित परीक्षण:
-H,--cookieऔर--user-agenturx द्वारा लक्ष्य को की जाने वाली प्रत्येक अनुरोध पर लागू होते हैं (--check-status,--extract-links,--extract-js-endpoints,--expand-specs, औरrobots/sitemapप्रोब) और जानबूझकर कभी किसी अभिलेखागार को नहीं भेजे जाते - फ़ाइल एक्सटेंशन, सबस्ट्रिंग पैटर्न, या पूर्ण रेगुलर एक्सप्रेशन (
--match-regex/--filter-regex) द्वारा परिणाम फ़िल्टर करें - पूर्वनिर्धारित प्रीसेट, दोनों फ़ाइल परिवार ("no-images", "only-js") और सुरक्षा रुचि ("only-secrets", "only-backup", "only-config", "only-api") के अनुसार
- अभिलेखागार-पक्ष फ़िल्टरिंग: स्टेटस कोड, MIME प्रकार, और दिनांक सीमा को CDX क्वेरी में ही पुश करें, ताकि फ़िल्टर किए गए कैप्चर कभी नेटवर्क पार न करें
- क्लाइंट-पक्ष मेटाडेटा फ़िल्टरिंग (
--meta-*): संग्रह के बाद, प्रत्येक प्रदाता में समान रूप से पहली/अंतिम कैप्चर तिथि, रिकॉर्ड किए गए MIME प्रकार और रिकॉर्ड किए गए स्टेटस पर फ़िल्टर करें - पथ-स्कोप्ड लक्ष्य:
urx example.com/shopस्कोप को CDX क्वेरी में ही पुश करता है (url=example.com/shop*), इसलिए एक बड़ी साइट के सबट्री की लागत पूरे इंडेक्स के एक अंश के बराबर होती है, बजाय क्लाइंट-साइड फ़िल्टर किए जाने के - बग-बाउंटी स्कोप फ़ाइलें (
--scope-file): एक प्रोग्राम की अपनी*.example.com/!admin.example.comसूची का शब्दशः उपयोग, दोहराने योग्य और संयुक्त, बहिष्करण हमेशा जीतते हैं - URL सामान्यीकरण और डिडुप्लीकेशन: क्वेरी पैरामीटर सॉर्ट करें, ट्रेलिंग स्लैश हटाएं, अर्थपूर्ण रूप से समान URL मर्ज करें, और केवल ids, हैश, या तिथियों में भिन्न निकट-डुप्लिकेट को संकुचित करें (
--dedup-similar) - कई आउटपुट प्रारूपों के लिए समर्थन: सादा टेक्स्ट, JSON, JSON Lines, CSV, और
wordlist— वे पथ खंड और पैरामीटर नाम जिनसे लक्ष्य बना है, ids, हैश और तिथियों को छोड़कर - पैरामीटर और फ़ज़ व्यू:
--params(पूरे लक्ष्य की पैरामीटर इन्वेंटरी),--params-by-endpoint(कौन सा एंडपॉइंट क्या लेता है), और--fuzz-placeholder FUZZ(प्रति पैरामीटर हस्ताक्षर एक टेम्पलेटेड URL, ffuf या dalfox के लिए तैयार) - अभिलेखागार कैप्चर मेटाडेटा:
first_seen,last_seen,mime,archive_status, औरdigestप्रत्येक URL के साथ वापस आते हैं जिसकी CDX अभिलेखागार ने रिपोर्ट की, बिना किसी अतिरिक्त नेटवर्क लागत के - स्ट्रीमिंग आउटपुट (
--stream): URL तब लिखे जाते हैं जब प्रत्येक प्रदाता उन्हें रिपोर्ट करता है, इसलिए एक पाइपलाइन तुरंत काम करना शुरू कर देती है, सबसे धीमे अभिलेखागार की प्रतीक्षा करने के बजाय - प्रत्यक्ष फ़ाइल इनपुट समर्थन: WARC फ़ाइलों, URLTeam संपीड़ित फ़ाइलों, और टेक्स्ट फ़ाइलों से सीधे URL पढ़ें
- परिणाम कंसोल या फ़ाइल में आउटपुट करें, या पाइपलाइन एकीकरण के लिए stdin के माध्यम से स्ट्रीम करें
- URL परीक्षण:
- HTTP स्टेटस कोड और पैटर्न के आधार पर URL फ़िल्टर और मान्य करें।
- एकत्र किए गए URL से अतिरिक्त लिंक निकालें — एंकर, स्क्रिप्ट, स्टाइलशीट, फ़ॉर्म एक्शन, iframes, छवियाँ, मीडिया स्रोत, ऑब्जेक्ट, एम्बेड, और मेटा-रिफ्रेश लक्ष्य
- एकत्र किए गए URL के संग्रहीत प्रतिक्रिया निकायों को माइन करें (
--archive-body), ताकि ऐसे पृष्ठ जो अब मौजूद नहीं हैं, फिर भी उनमें मौजूद लिंक दे दें — प्रति विशिष्ट निकाय एक अनुरोध, CDX डाइजेस्ट डिडुप्लीकेशन के कारण --extract-js-endpointsके साथ, संग्रहीत JavaScript को भी माइन करें: बिल्ड हैश द्वारा नामित एक बंडल साइट के पुनः परिनियोजन के क्षण ही 404 हो जाता है, और अभिलेखागार ही एकमात्र स्थान है जहाँ इसकी API सतह अभी भी मौजूद है- रीप्ले किए गए निकायों (
--archive-body-dir) को एक कॉर्पस के रूप में रखें ताकि उन चीज़ों के लिए grep किया जा सके जिन्हें कोई लिंक एक्सट्रैक्टर नहीं ढूंढता — डेवलपर टिप्पणियाँ, इनलाइन क्रेडेंशियल, आंतरिक होस्टनाम — बिना किसी अतिरिक्त अनुरोध के - API विनिर्देशों का विस्तार करें (
--expand-specs): OpenAPI 3.x, Swagger 2.0 और GraphQL इंट्रोस्पेक्शन दस्तावेज़, JSON या YAML, उनके द्वारा वर्णित प्रत्येक रूट में बदल दिए जाते हैं — एक अनुरोध पूरी प्रलेखित सतह खरीद लेता है - प्रतिक्रिया मेटाडेटा:
--check-statusLocation,Content-LengthऔरContent-Typeभी रिकॉर्ड करता है, और--check-titleHTML<title>जोड़ता है
- संग्रहीत robots.txt और sitemap.xml खोज (
--archived-discovery): Wayback Machine के पास मौजूद प्रत्येक विशिष्ट संस्करण, इसलिए 2015 काDisallow:अभी भी उन पथों के नाम बताता है जिनका उल्लेख साइट ने तब से बंद कर दिया है - कैशिंग और इंक्रीमेंटल स्कैनिंग:
- डोमेन को दोबारा स्कैन करने से बचने के लिए स्थानीय SQLite या रिमोट Redis कैशिंग (Redis के लिए
--features redis-cacheके साथ बिल्ड की आवश्यकता होती है; पैकेज्ड बिल्ड इसे छोड़ देते हैं) - केवल पिछले स्कैन के बाद से नए URL खोजने के लिए इंक्रीमेंटल मोड
- कॉन्फ़िगर करने योग्य कैश TTL; प्रत्येक स्कैन TTL के दोगुने से पुरानी प्रविष्टियों को साफ़ करता है, और
urx cache pruneइससे आगे की किसी भी चीज़ को हटा देता है - कैश का निरीक्षण और रखरखाव करने के लिए
urx cacheसबकमांड:stats,list,prune,drop <domain>,clear
- डोमेन को दोबारा स्कैन करने से बचने के लिए स्थानीय SQLite या रिमोट Redis कैशिंग (Redis के लिए

स्थापना
Cargo से
# https://crates.io/crates/urx
cargo install urx
Homebrew से
# 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
docker pull ghcr.io/hahwul/urx:latest
# the image has no entrypoint, so name the binary before its arguments
docker run --rm ghcr.io/hahwul/urx:latest ./urx example.com
AUR से
yay -S urx
Chocolatey से (Windows)
choco install urx