2009-07-02 13 views
21

मुझे एक स्थानीय एप्लिकेशन मिला है (जिसे मैंने नहीं लिखा था, और नहीं बदला जा सकता) जो रिमोट वेब सेवा से बात करता है। यह HTTPS का उपयोग करता है, और मैं देखना चाहता हूं कि यातायात में क्या है।स्पष्ट रूप से HTTPS यातायात को कैप्चर करना?

क्या कोई तरीका है कि मैं ऐसा कर सकता हूं? मैं एक विंडोज सिस्टम पसंद करूंगा, लेकिन लिनक्स पर प्रॉक्सी स्थापित करने में मुझे खुशी है अगर इससे चीज़ें आसान हो जाती हैं।

मैं क्या पर विचार कर रहा हूँ:

  1. मेरी मेजबान फ़ाइल हैकिंग (या वैकल्पिक DNS की स्थापना) द्वारा वेब साइट पर रीडायरेक्ट किया जा।
  2. एक स्व-हस्ताक्षरित (लेकिन भरोसेमंद) प्रमाणपत्र के साथ, उस साइट पर एक HTTPS सर्वर स्थापित करना।
  3. स्पष्ट रूप से, वायरशर्क एचटीटीपीएस में क्या देख सकता है यदि आप इसे निजी कुंजी खिलाते हैं। मैंने कभी कोशिश नहीं की है।
  4. किसी भी तरह, इस ट्रैफिक को वास्तविक सर्वर पर प्रॉक्सी करें (यानी यह एक पूर्ण-उड़ा हुआ आदमी-बीच-मध्य "हमला" है)।

इस ध्वनि समझदार करता है? क्या वायरशर्क वास्तव में देख सकता है कि एचटीटीपीएस यातायात में क्या है? क्या कोई मुझे उपयुक्त प्रॉक्सी (और उसी के लिए कॉन्फ़िगरेशन) पर इंगित कर सकता है?

उत्तर

11

क्या Fiddler क्या आप चाहते हैं? :

फ़िडलर क्या है?

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

फ़िडलर फ्रीवेयर है और इंटरनेट एक्सप्लोरर, मोज़िला फ़ायरफ़ॉक्स, ओपेरा सहित लगभग किसी भी आवेदन, से यातायात डीबग कर सकते हैं, और हजारों अधिक।

+1

हां, यह HTTPS अनुरोधों के लिए मैन-इन-द-बीच प्रॉक्सी के रूप में कार्य कर सकता है - ध्यान दें कि यह एक हस्ताक्षरित प्रमाणपत्र प्रस्तुत करता है, इसलिए यदि आपके ऐप को विश्वसनीय कॉर्ट की आवश्यकता है, तो आपको या तो इस आवश्यकता को अक्षम करना होगा , या प्रमाण पर भरोसा करें - जो फिडलर सलाह नहीं देता है: http://www.fiddler2.com/Fiddler/help/httpsdecryption.asp –

+0

मुझे इंटरनेट एक्सप्लोरर और क्रोम से HTTPS ट्रैफिक देखने में मिला है; अब यह पता लगाने के लिए कि क्या यह ऐप के लिए काम करेगा ... –

+0

... सिवाय इसके कि प्रश्न में ऐप केवल व्यवस्थापक अधिकारों के साथ चलता है, और फिडलर अपने व्यवस्थापक खाते के तहत अपना HTTPS प्रमाण पत्र स्थापित नहीं करना चाहता (मैं ज्यादातर समय LUA चलाता हूं)। –

4

आपको अपने स्थानीय एप्लिकेशन के लिए प्रॉक्सी सेट अप करने की आवश्यकता है और यदि यह प्रॉक्सी सेटिंग्स का सम्मान नहीं करता है, तो पारदर्शी प्रॉक्सी डालें और बाहर जाने से पहले इसमें सभी https ट्रैफिक को रूट करें। कुछ इस तरह "आदमी" बीच में हो सकता है: http://crypto.stanford.edu/ssl-mitm

इसके अलावा, यहां कैसे wireshark के साथ इस संग्रह करने के लिए पर संक्षिप्त निर्देश दिया गया है: http://predev.wikidot.com/decrypt-ssl-traffic

0
  1. नजर रखने के लिए https प्रॉक्सी का उपयोग कर के लिए, यह इस पर निर्भर करता हैंडशेक का प्रकार यदि आप स्थानीय एप्लिकेशन सीए के हस्ताक्षर द्वारा सर्वर के प्रमाण पत्र की जांच नहीं करते हैं, जिसे आप नकली नहीं बना सकते हैं, और सर्वर आपके स्थानीय एप्लिकेशन के प्रमाणपत्र की जांच नहीं करता है (या यदि आपके पास https प्रॉक्सी पर सेट करने के लिए कोई है) तो आप एक https प्रॉक्सी सेट कर सकते हैं https यातायात की निगरानी करें। अन्यथा, मुझे लगता है कि https प्रॉक्सी के साथ यातायात की निगरानी करना असंभव है।

  2. एक और तरीका है आप कोशिश कर सकते हैं अपने ग्राहक कार्यक्रम के दिनचर्या पर इंस्ट्रूमेंटेशन जांच जोड़ने के लिए जहां यह अपने https पुस्तकालय से संदेश भेजने और प्राप्त है। इसे कुछ रिवर्स इंजीनियरिंग काम की ज़रूरत है, लेकिन सभी स्थितियों के लिए आपके लिए काम करना चाहिए।

0

मैं WireShark की सिफारिश करेंगे, यह सबसे अच्छा उपकरण यातायात के विभिन्न टुकड़ों पर पालन करने के लिए है। हालांकि, मुझे यकीन नहीं है कि एसएसएल के साथ आप क्या देख सकते हैं। शायद, अगर आप इसे प्रमाण पत्र के साथ आपूर्ति करते हैं?

+2

एक प्रमाणपत्र पर्याप्त नहीं है। अन्यथा हम सभी एसएसएल यातायात को डिक्रिप्ट कर देंगे। आपको यातायात को डिक्रिप्ट करने के लिए एक निजी कुंजी की आवश्यकता है ... जैसा ओपी इंगित करता है ... – reiniero

7

वायरशर्क निश्चित रूप से सादे टेक्स्ट के रूप में टीएलएस/एसएसएल एन्क्रिप्टेड धाराओं को प्रदर्शित कर सकता है। हालांकि, ऐसा करने के लिए आपको निश्चित रूप से सर्वर की निजी कुंजी की आवश्यकता होगी। प्राथमिक कुंजी को प्राथमिकता के तहत एक एसएसएल विकल्प के रूप में Wireshark में जोड़ा जाना चाहिए। ध्यान दें कि यह केवल तभी काम करता है जब आप शुरुआत से एसएसएल स्ट्रीम का पालन कर सकें। एसएसएल कनेक्शन का पुन: उपयोग होने पर यह काम नहीं करेगा।

इंटरनेट एक्सप्लोरर के लिए इंटरनेट एक्सप्लोरर के लिए एसएसएल राज्य को साफ़ करके इस (एसएसएल सत्र पुन: उपयोग) से बचा जा सकता है। अन्य वातावरणों को किसी ब्राउज़र को पुनरारंभ करने या यहां तक ​​कि सिस्टम को रीबूट करने की आवश्यकता हो सकती है (SSL सत्र पुन: उपयोग से बचने के लिए)।

अन्य प्रमुख बाधा यह है कि एक आरएसए सिफर का उपयोग किया जाना चाहिए। Wireshark टीएलएस/एसएसएल स्ट्रीम को डीकोड नहीं कर सकता जो डीएफएच (डिफी-हेलमैन) का उपयोग करता है।

मान लीजिए कि आप उपरोक्त बाधाओं को पूरा कर सकते हैं, "एसएसएल स्ट्रीम का पालन करें" राइट-क्लिक कमांड काम करता है।

+0

इसे स्थापित करने के लिए विशिष्ट चरणों (या एक पोस्ट का लिंक) बहुत अच्छा होगा। –

2

आपको Charles पर भी विचार करना चाहिए। इस उत्तर के समय उत्पाद विवरण से:

चार्ल्स HTTP प्रॉक्सी/HTTP मॉनिटर/रिवर्स प्रॉक्सी है कि उनके मशीन और इंटरनेट के बीच HTTP और SSL/HTTPS यातायात के सभी को देखने के लिए एक डेवलपर सक्षम बनाता है। इसमें अनुरोध, प्रतिक्रियाएं और HTTP शीर्षलेख शामिल हैं (जिनमें कुकीज़ और कैशिंग जानकारी शामिल है)।

संबंधित मुद्दे