वास्तविक लिंक का पता लगाने के लिए लिंक का विश्लेषण कैसे करें


13

कभी-कभी कुछ डाउनलोड करते समय, मुझे लगता है कि लिंक फाइलों में सीधे नहीं हैं।

उदाहरण के लिए, यह एक पीडीएफ फाइल डाउनलोड करने के लिए एक लिंक है:

http://ishare.down.sina.com.cn/15181391.PDF?ssig=2jEFaNQs7K&Expires=1312905600&KID=sina,ishare&IP=1312761745,68.50.222।

मैं सोच रहा था कि फ़ाइल के वास्तविक लिंक (Ie http: //*.PDF) का पता कैसे लगा / हैक करूँ?

प्रत्यक्ष लिंक न दिखाने की ऐसी और समान तकनीकों के नाम क्या हैं? कुछ संदर्भ, जैसे कि विकिपीडिया, ...?


1
अपना लिंक ठीक किया। editमैंने कैसे किया, इसके लिए मार्कडाउन स्रोत को देखने के लिए क्लिक करें ।
जोएल कोएहॉर्न

जवाबों:


3

हाँ, कभी-कभी

आमतौर पर दो चीजें होती हैं। आपका लिंक अब काम नहीं करता है, इसलिए मुझे इस मामले में वास्तविक परिदृश्य पर यकीन नहीं है, इसलिए मैं दूसरे लिंक पर संक्षेप में बताऊंगा।

HTTP पुनर्निर्देशन

यह वही है जिसे आप Bit.lyअन्य सेवाओं के साथ देखते हैं । तब क्या करते हैं एक HTTP पुनर्निर्देशित प्रतिक्रिया प्रदान करते हैं। जब आप http://bit.ly/oH3410 पर जाते हैं, तो यह वास्तविक URL पर रीडायरेक्ट होता है। कभी-कभी एक URL दूसरे पर रीडायरेक्ट करता है। यदि आप URL को http://web-sniffer.net/ में प्लग इन करते हैं या [curl][1] -I http://bit.ly/oH3410आप इसका उपयोग करते हुए देख रहे हैं, तो आप 301 को एक नए स्थान पर इंगित करते हुए देखेंगे।

इसलिए HTTP पुनर्निर्देशन से निपटने के लिए आपको बस एक HTTP HEAD अनुरोध को लूप करना होगा जब तक कि आपको 300 के उत्तर में प्रतिक्रियाएं मिलना बंद न हो जाए (उम्मीद है कि 200 हो रही है)। ध्यान रखें कि यह संभव है कि वे एक लूप में रीडायरेक्ट करेंगे, जो कभी खत्म नहीं होगा। आप इसे CURL या किसी HTTP टूल से कर सकते हैं।

डाउनलोडर पेज

यह वही है जो अधिकांश डाउनलोड साइटें उपयोग करती हैं। आप डाउनलोड लिंक पर क्लिक करते हैं और यह आपको विज्ञापनों के एक समूह के साथ एक पृष्ठ पर ले जाता है और कहता है कि "आपका डाउनलोड जल्द ही शुरू होगा" कुछ इसी तरह। [ उदाहरण ]। इनके साथ आप URL से वास्तविक प्रत्यक्ष लिंक को पार्स करने का प्रयास कर सकते हैं, लेकिन यह साइट विशिष्ट होगी, और अधिकांश साइटें इसे रोकने के लिए आपको इसमें शामिल नहीं करेंगी। यह meta http-equiv="refresh"हेडर, या जावास्क्रिप्ट (सबसे आम) में एक टैग के माध्यम से किया जाता है । जेएस में आमतौर पर हेडर कमबैक होता है।

हालांकि एक समाधान है। यदि आप डाउनलोड पृष्ठ पर स्रोत को देखते हैं तो आप आमतौर पर एक <meta http-equiv="refresh">टैग (आमतौर पर एक <noscript>टैग में) देखेंगे URLजो वास्तविक डाउनलोड के लिए उस बिंदु की विशेषता के साथ होगा । इसलिए पृष्ठ को डाउनलोड करने, उसे पार्स करने और उस मान को हथियाने के लिए CURL (या किसी अन्य HTTP टूल) का उपयोग करें। एक साइट इसे बाहर कर सकती है, हालांकि यदि वे वास्तव में बुरा होना चाहते हैं, तो इस प्रकार आपको फ़ाइलों को डाउनलोड करने के लिए जावास्क्रिप्ट की आवश्यकता होती है।

शायद एक जावास्क्रिप्ट ब्लॉक है जो डाउनलोड के साथ ही लिंक करता है। इसे किसी अन्य URL से बाधित या लिंक किया जा सकता है। आपका माइलेज अलग-अलग करने की कोशिश कर सकता है। पृष्ठ पर एक "सीधा लिंक" भी हो सकता है। आप इसे खोजने के लिए कुछ तकनीकों का प्रयास कर सकते हैं, लेकिन फिर से जिसे जावास्क्रिप्ट के माध्यम से बाधित किया जा सकता है या यहां तक ​​कि सभी एक साथ गायब हो सकते हैं।


11

यह संभव नहीं हो सकता है। फ़ाइल में पहुंचने से पहले साइट आपको सौ रीडायरेक्ट के माध्यम से फ़ीड कर सकती हैं।

इसके अलावा, जावास्क्रिप्ट का उपयोग उस यूआरएल के आधार पर लिंक देने के लिए किया जा सकता है जो सर्वर को दिया गया था।


धन्यवाद! प्रत्यक्ष लिंक न दिखाने की ऐसी और समान तकनीकों के नाम क्या हैं? कुछ संदर्भ, जैसे कि विकिपीडिया, ...?
टिम

1
बस पुनर्निर्देशन। किसी भी अन्य तकनीकों का पता नहीं है। यहां देखें
soandos

जब लिंक फ़ाइलों और इस तरह के नियमित पृष्ठों के विपरीत होते हैं, तो इसे आमतौर पर एंटी-लीच कहा जाता है ।
सिंटेक

7

साइट को स्क्रिप्ट किया जा सकता है, और जब उसे एक निश्चित कमांड मिलती है (URL कमांड को पास कर सकता है), तो वह रीडायरेक्ट किए बिना एक पीडीएफ फाइल (या कोई अन्य फाइल) वापस कर सकता है। यह एक सर्वर-साइड चीज है और यह निर्भर करता है कि साइट को कैसे कोडित किया गया है। वास्तव में सर्वर से उस लिंक का अनुरोध किए बिना, यह संभव नहीं है कि आप यह पता लगा सकें कि फाइल कैसे प्राप्त करें। और कभी-कभी अगर आपको डायरेक्ट URL पता था, तो भी आपको डायरेक्ट लिंक एक्सेस करने की अनुमति नहीं हो सकती है। कुछ साइटों को कोडित किया गया है ताकि प्रत्यक्ष लिंक काम न करें।


1
यह सही है। छोटा जोड़: जब कोई क्लाइंट उस जैसे अस्पष्ट लिंक को एक्सेस कर रहा है और सर्वर क्लाइंट को बताना चाहता है कि यह वास्तव में एक पीडीएफ फाइल है और इसे पीडीएफ फाइल के रूप में सहेजा जाना चाहिए - सर्वर इसे कंटेंट-टाइप HTTP के माध्यम से क्लाइंट को बताता है। हैडर।
vtest

3

यह बहुत अच्छी तरह से संरक्षित वेबसाइटों के लिए "सही" URL है, आपको अपने अनुरोध को प्रमाणित करने के लिए सर्वर के लिए पूरा URL प्रस्तुत करना होगा। आपको बाद में किसी अन्य URL पर निर्देशित किया जा सकता है, लेकिन यह सामान्य रूप से एक बार का होगा। दूसरे शब्दों में, ये फ़ाइल डाउनलोड वेबसाइटें आपको कभी भी लीच-सक्षम डायरेक्ट लिंक नहीं देंगी।

इस विशेष URL में, पैरामीटर, जो डिजिटल हस्ताक्षर द्वारा सुरक्षित हैं, स्पष्ट रूप से सूची और डाउनलोडर के आईपी प्रतिबंधों को सूचीबद्ध करते हैं। इस स्तर की क्षमता वाली वेबसाइट के लिए, यह संभावना नहीं है कि सीधे लिंक लीक हो जाएंगे।


3

ये रीडायरेक्ट लिंक अक्सर सत्र राज्य से जुड़े होते हैं। वे कुछ सत्रों की जाँच करेंगे, जो आपके सत्र लॉगिन के आधार पर आपको लिंक प्रदान करने से पहले करेंगे - संसाधन की कोई पहुँच नहीं = संसाधन की कोई लिंक पहुँच नहीं। इसका उपयोग उन फ़ाइलों / संसाधनों तक पहुंच प्रदान करने के लिए किया जा सकता है जो वेब रूट के बाहर हैं, और ऐप द्वारा अनुरोधकर्ता को सीधे URL के माध्यम से उपलब्ध होने के बजाय वापस स्ट्रीम किया गया है। लेकिन केवल अगर आपके निजी इसके लिए अनुमति देते हैं।

दोनों का एक उदाहरण यहाँ है। यह आपको अतिरिक्त URL पार्म्स को जोड़ने वाले 'मोकेनिग' स्ट्रिंग के आधार पर दूसरे URL पर फिर से निर्देशित करेगा। री-डायरेक्ट सर्वर-साइड कोडिंग में किया जाता है, जिसे आप (या कम से कम नहीं) नहीं देख सकते हैं। यदि आप 'वेब फाइल्स' में जाते हैं, तो सूचीबद्ध फाइलें केवल वे फाइलें हैं जिन्हें शिक्षक ने सार्वजनिक किया है। उसके पास अन्य फाइलें हो सकती हैं जिन्हें आप प्राप्त नहीं कर सकते हैं, और जिन्हें सूचीबद्ध नहीं किया जाएगा। यह सर्वर साइड कोडिंग पर भी काम करता है, इस संबंध में कि यह क्या होगा / वापस नहीं आएगा।

सर्वर को हैक किए बिना या सर्वर साइड सोर्स कोड तक पहुंच के बिना, मुझे विश्वास नहीं है कि आप वास्तविक लिंक प्राप्त कर सकते हैं, और यहां तक ​​कि अगर आप कर सकते हैं, तो यह तब तक सहायक नहीं हो सकता जब तक कि आपका सत्र निजी सर्वर को आपको एक्सेस देने के लिए न कहे। ।

ग्रेग


2

ऊपर की तरह, यह असंभव है। मैं सुझाव देता हूं कि आप अपने ब्राउज़र को इस तरह से लिंक करने के लिए एक वीएम फायर करें या सैंडबॉक्स की एक प्रति ले लें।

संपादित करें

यह नहीं जानते कि आप किस ऑपरेटिंग सिस्टम का उपयोग कर रहे हैं, मैं यहां एक सामान्य उत्तर दूंगा।

वर्चुअल मशीन के लिए VM छोटा है। यह मूल रूप से एक सॉफ्टवेयर बनाया गया है जो आपके कंप्यूटर के अंदर चल रहा है। एक वर्चुअल मशीन का अपना ऑपरेटिंग सिस्टम और ब्राउज़र होगा। हालांकि यह अभी भी आपकी मशीन के इंटरनेट और हार्डवेड का उपयोग करता है, यह OS के दृष्टिकोण से एक अलग मशीन है। ताकि यह कागज के एक खरोंच के टुकड़े की तरह सुविधाजनक हो जाए। VM के अंदर जो कुछ भी होता है, वह आपकी वास्तविक मशीन को प्रभावित नहीं करता है।

वर्चुअलबॉक्स वह सॉफ्टवेयर है जो मैं आपको वीएम के लिए प्राप्त करने की सलाह देता हूं, जब तक कि आप विंडोज का उपयोग नहीं कर रहे हैं, तब मैं वर्चुअल पीसी की सिफारिश करूंगा।

Sandboxie एक VM की तरह है, लेकिन यह सिर्फ विशिष्ट अनुप्रयोगों को अलग करता है। आप इसे अपने ब्राउज़र और किसी भी फ़ाइल या कार्यों की प्रतिलिपि चलाने के लिए कह सकते हैं जो ब्राउज़र अनिवार्य रूप से एक अस्थायी फ़ोल्डर पर पुनर्निर्देशित करता है। इसलिए यदि यह वायरस डाउनलोड करने की कोशिश करता है, तो यह एक अस्थायी फ़ोल्डर में पुनर्निर्देशित हो जाता है जो आपकी मशीन के बाकी हिस्सों से अलग हो जाता है। यह वीएम की तरह मजबूत नहीं है, लेकिन यह कम सीपीयू / मेमोरी का उपयोग करता है और तेज और अधिक सुविधाजनक है।

मैं पहले सैंडबॉक्सी की कोशिश करूंगा। यह एक छोटा सीखने की अवस्था है।


1
धन्यवाद! आपका क्या मतलब है "इस तरह के लिंक के लिए अपने ब्राउज़र को शामिल करने के लिए एक वीएम अप आग या सैंडबॉक्स की एक प्रति पकड़ो"? कुछ बातों को समझाने के लिए कुछ संदर्भ?
टिम

क्षमा करें, मैं अपने उत्तर का विस्तार करूंगा।
सर्फस

धन्यवाद! मेरा OS उबंटू है। लेकिन मुझे नहीं पता कि वीएम का उपयोग करने से प्रत्यक्ष लिंक की पहचान कैसे हो सकती है?
टिम

1
यह वास्तव में आपके लिए लिंक की पहचान नहीं करता है। लेकिन यह एक सुरक्षित वातावरण बनाता है जो आपको लिंक को पहचानने में मदद करेगा। आप पृष्ठ को संकलित किए बिना रीडायरेक्ट की पहचान नहीं कर सकते।
सर्फस

1
मुझे नहीं लगता कि उनका सवाल सुरक्षा से जुड़ा है। वह सीधे फ़ाइल लिंक प्राप्त करने का एक तरीका ढूंढ रहा है।
मैग्नेटिक

2

यह कभी नहीं वास्तविक लिंक यह पता लगाने के लिए संभव।

सर्वर फ़ाइल अनुरोधों को संभालता है, कुछ डब्ल्यूडब्ल्यूडब्ल्यू रिवाइट (एपाचे सर्वर के लिए, उदाहरण के लिए) का उपयोग करते हुए, इसलिए उदाहरण के लिए, आप एक पृष्ठ पर जा सकते हैं www.example.com/13-this-site-has-nice-page-name.html, लेकिन वास्तव में आप कुछ पीएचपी फ़ाइल तक पहुँच सकते हैं, जैसे कि एक पैरामीटर के साथ:www.example.com/site_handler.php?UID=13

यहां तक ​​कि अगर आप एक पीडीएफ फाइल एक्सेस करते हैं, तो सर्वर साइड में ही रीडायरेक्ट हो सकता है।

हैंडलर के साथ फ़ाइल डाउनलोड के लिए, यह एक अधिक पेचीदा मामला हो सकता है, क्योंकि आप एक पृष्ठ पर जा सकते हैं, जो सिर्फ एक डाउनलोड हैंडलर है, उदाहरण के लिए: www.example.com?file_downloader.php?param1=7683&param2=jld8ijn, etc... इस मामले में, आप जिस स्क्रिप्ट तक पहुंच रहे हैं, वह एक हेडर के साथ भेजी जा सकती है (जैसे पीडीएफ फाइल), लेकिन सभी वास्तविकताओं में यह एक php फाइल है।

निष्कर्ष में: आप कभी नहीं जान सकते हैं कि सर्वर और स्क्रिप्ट कैसे कॉन्फ़िगर किए जाते हैं, इसलिए आप कभी भी वास्तविक, वास्तविक पता नहीं लगा सकते हैं, भले ही ऐसा लगता है जैसे आप जानते हैं।


1

जब आप एक वेब सर्वर (लिंक पर क्लिक करें) के लिए एक अनुरोध भेजते हैं, तो सर्वर कई अलग-अलग प्रतिक्रियाओं को भेज सकता है। सामान्य उदाहरण 404 (पृष्ठ नहीं पाए गए), 403 (निषिद्ध), या 500 (सर्वर त्रुटि) हैं। संभवतः सबसे आम प्रतिक्रिया कोड 200 (ठीक है) है, लेकिन आप कभी भी इसे नहीं देखेंगे क्योंकि यह आम तौर पर उस पृष्ठ के साथ होता है जिसे आप देखने की उम्मीद कर रहे थे।

यहां खेलने के लिए कुछ अन्य कोड हैं: 301 और 302। कोड 301 और 302 कोड अनुप्रेषित हैं, और वे आपके ब्राउज़र को बताते हैं कि जो प्रतिक्रिया आप चाहते थे वह किसी अन्य स्थान पर चली गई है। उनके बीच मुख्य अंतर यह है कि ब्राउज़र चीजों को कैसे कैश करता है। 301 कोड का अर्थ है "स्थायी रूप से स्थानांतरित", और अगली बार जब आप मूल लिंक पर जाने की कोशिश करेंगे तो ब्राउज़र को याद हो सकता है कि पृष्ठ स्थानांतरित हो गया है और सीधे नए स्थान पर चला गया है। 302 का अर्थ है "अन्यत्र मिला" और एक लिंक प्रदान करेगा जिसे आपके ब्राउज़र को केवल अस्थायी रूप से उपयोग करना चाहिए।

एक प्रोग्राम लिखना संभव होना चाहिए जो एक लिंक की जांच करेगा, और जब तक आपको 30x प्रतिक्रियाएं मिलती रहें, तब तक प्रतिक्रिया का पालन करें, जब तक कि यह 200 नहीं हो जाता। इस बिंदु पर, सामग्री को डाउनलोड करने के बजाय यह आपको लिंक दिखाना चाहिए।

दुर्भाग्य से, यह उससे भी अधिक जटिल है। एक HTML पृष्ठ भी पेज के मुख्य खंड में मेटा टैग के उपयोग किसी नए स्थान पर रीडायरेक्ट कर सकते हैं कि इस तरह दिखता है कुछ: <meta http-equiv="refresh" content="0;url=NEW PAGE URL" />। तो इस तरह के एक कार्यक्रम के लिए पहले से ही पूरी तरह से html को पार्स करना होगा ताकि हम अंतिम रीडायरेक्ट तक पहुंच सकें।

इसके अतिरिक्त, एक पेज आपको जावास्क्रिप्ट का उपयोग करके आगे रीडायरेक्ट कर सकता है, और जावास्क्रिप्ट को बाधित किया जा सकता है। तो अब हमारे काल्पनिक कार्यक्रम को भी जावास्क्रिप्ट को समझना होगा। इस बिंदु पर हमारे पास पूरी तरह कार्यात्मक वेब ब्राउज़र है। हम वास्तव में पृष्ठ को स्क्रीन पर प्रस्तुत करने के छोटे से छोटे विवरण को याद कर रहे हैं, लेकिन हमारे कार्यक्रम में लगभग सभी चीजें हैं जो आपको एक संपूर्ण वेब ब्राउज़र के लिए चाहिए, जिसमें सभी सुरक्षा मुद्दे शामिल हैं। यदि आप अभी लिंक को सामान्य रूप से पहली जगह पर क्लिक करते हैं तो आप इससे बेहतर नहीं हैं।


1

विंडोज मान लें: फिडलर वेब डिबगिंग प्रॉक्सी स्थापित करें , इसे सक्षम करें। फिर अपने शुरुआती URL पर जाएं और फ़िडलर के बाएँ फलक में सभी रीडायरेक्ट देखें। "अनुरोध शीर्षलेख" और "प्रतिसाद शीर्ष लेख" दिखाने के लिए दाएँ फलक परिवर्तन टैब पर। मैंने इसका उपयोग उस उद्देश्य के लिए सफलतापूर्वक किया है।

दूसरी ओर अकेले "अंतिम" URL उसी तरह काम नहीं कर सकता है यदि आप इसे सीधे ब्राउज़ करते हैं क्योंकि अनुरोध में सही रेफ़रर नहीं हो सकता है या कुछ अन्य प्रतिबंधों को याद नहीं कर सकता है।

लेकिन आप फ़िडलर में कस्टम हेडर के साथ कस्टम अनुरोध भी भेज सकते हैं। उसके लिए टैब "अनुरोध बिल्डर" देखें।


0

यह काफी हद तक साइट पर निर्भर है।

ऐसा करने के लिए, आपको प्रत्येक साइट का व्यक्तिगत रूप से अध्ययन करना होगा और प्रत्यक्ष यूआरआई को वापस करने के लिए प्रत्येक साइट के लिए एक अलग तंत्र (या कोड) होना चाहिए।

आप कुछ ओपन-सोर्स ब्राउज़र ऐड-ऑन का भी अध्ययन कर सकते हैं जो समान कार्यक्षमता प्रदान करते हैं।


0

यह जाँचने के लिए कि कोई लिंक आपको कहाँ पर पुनर्निर्देशित करता है, आप http://longurl.org/ का उपयोग कर सकते हैं । यह छोटे यूआरएल के लिए विशेष रूप से उपयोगी है। यह स्क्रिप्टेड डाउनलोड आदि के लिए किसी काम का नहीं है।


0

यदि आप फ़ायरफ़ॉक्स का उपयोग कर रहे हैं, तो आप एक एडऑन का उपयोग कर सकते हैं RequestPolicy, जो अन्य बातों के अलावा, जब भी आप एक अलग डोमेन पर रीडायरेक्ट किए जाते हैं, तो आपको रोक देगा और आपसे अनुमति मांगेगा। यह काम नहीं करेगा यदि आप एक ऐसा रीडायरेक्ट ढूंढना चाहते हैं जो किसी भिन्न डोमेन पर न जाए, लेकिन मुझे यकीन है कि इसके लिए एक अलग फ़ायरफ़ॉक्स एडऑन है जो मुझे नहीं पता है)

https://www.requestpolicy.com/

ध्यान दें कि यह बहुत सारी साइटों को तोड़ देगा जो डिफ़ॉल्ट रूप से सीडीएन (कंटेंट डिस्ट्रीब्यूशन नेटवर्क) का उपयोग करते हैं क्योंकि यह सभी क्रॉस-डोमेन इमेज, स्क्रिप्ट, सीएसएस और रीडायरेक्ट को ब्लॉक करता है । यदि आप हमेशा यह जानना चाहते हैं कि कोई रीडायरेक्ट कहां हो रहा है, तो यह ईबेस्ट पसंद नहीं है, जब तक कि आप हर बार जब आप एक नई वेबसाइट पर जाते हैं तो कुछ अतिरिक्त चरणों से गुजरने के लिए तैयार नहीं होते हैं।


0

मुझे वास्तव में यकीन नहीं है, लेकिन अगर आप CUrl का उपयोग कर रहे हैं, तो क्या आप केवल PHP में URL सामग्री (get_file_contents (url)) प्राप्त नहीं कर सकते हैं और फिर MIME प्रकार की जांच कर सकते हैं?


0

(इस बीच) पुनर्निर्देशन का पता लगाने में मदद करने के लिए कुछ महान ऑनलाइन उपकरण हैं।

और Google Chrome के लिए एक अच्छा विस्तार है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.