इसे छोड़कर कंटेंट पर जाएं

ऐप-लेयर कैप्चर

कुछ प्रोग्राम ऐसे होते हैं जो प्रॉक्सी और NIC दोनों की पहुँच से बाहर होते हैं: वे certificate pinning इस्तेमाल करते हैं, प्रॉक्सी को पूरी तरह नज़रअंदाज़ करते हैं, या अपनी खुद की encryption इस्तेमाल करते हैं। ऐप-लेयर कैप्चर एक अलग रास्ता अपनाता है: यह प्रोग्राम के अंदर से सीधे plaintext पढ़ता है। यह न कोई certificate install करता है, न प्रॉक्सी configure करता है, न ही NIC कैप्चर करता है, इसलिए वे सारे “बचाव” यहाँ बेकार हो जाते हैं, और आप फिर भी देख पाते हैं कि यह वास्तव में क्या भेज और प्राप्त कर रहा है। यह सामान्य कैप्चर टूल्स का सबसे विशिष्ट ब्लाइंड स्पॉट है, और यही इस मोड की सबसे बड़ी खासियत है।


1. जहाँ बाकी plaintext नहीं पा सकते, वहाँ यह पा लेता है

Section titled “1. जहाँ बाकी plaintext नहीं पा सकते, वहाँ यह पा लेता है”
टारगेट प्रोग्राम की “सुरक्षा” प्रॉक्सी कैप्चर NIC कैप्चर ऐप-लेयर कैप्चर
Certificate pinning ❌ कनेक्ट नहीं हो पाता / error आता है 🔒 केवल ciphertext ✅ Plaintext
सिस्टम प्रॉक्सी को नज़रअंदाज़ करता है ❌ कैप्चर नहीं हो पाता 🔒 केवल ciphertext ✅ Plaintext
अपनी खुद की / गैर-मानक encryption ❌ डिक्रिप्ट नहीं हो पाता 🔒 केवल ciphertext ✅ Plaintext

सिद्धांत सीधा है: यह प्रोग्राम के अंदर से सीधे plaintext पढ़ता है, न कोई man-in-the-middle है, न ही certificate से कोई छेड़छाड़; इसलिए “man-in-the-middle” और “certificate” को निशाना बनाकर बनाई गई ये सभी सुरक्षाएँ यहाँ बेकार हो जाती हैं।

वास्तविक परिणाम: किसी चल रहे प्रोग्राम को चुनें और उसके भेजे/प्राप्त किए गए plaintext को सीधे उसके अंदर से पढ़ें, दिशा के अनुसार एक-एक करके सूचीबद्ध (Sent ↑ / Rec ↓), और विवरण में पूरा plaintext HTTP request


2. कवरेज कितना व्यापक है

Section titled “2. कवरेज कितना व्यापक है”

यह crypto libraries या tech stacks को लेकर चूज़ी नहीं है। प्रोग्राम के अंदर से plaintext पढ़ना, प्रॉक्सी या NIC के मुकाबले कहीं ज़्यादा प्रोग्राम्स को कवर करता है:

  • चाहे प्रोग्राम आम या किसी अनजान crypto library का इस्तेमाल करे, plaintext अंदर से पढ़ा जा सकता है।
  • चाहे यह एक native प्रोग्राम हो या विभिन्न cross-platform frameworks से लिखा गया कोई ऐप (desktop clients, cross-platform apps…), इसे उसी तरह संभाला जा सकता है।
  • यहाँ तक कि वे प्रोग्राम भी कवर होते हैं जो operating system की built-in crypto का इस्तेमाल करके संवाद करते हैं, जिसमें .NET / PowerShell और Windows सिस्टम नेटवर्क स्टैक इस्तेमाल करने वाले अन्य प्रोग्राम शामिल हैं। ये अक्सर वे ब्लाइंड स्पॉट होते हैं जिनसे सामान्य टूल्स सबसे ज़्यादा जूझते हैं, फिर भी यहाँ plaintext अंदर से पढ़ा जाता है।
  • संक्षेप में: browsers, desktop clients, native प्रोग्राम… कई ऐसे टारगेट जो कहीं और “केवल ciphertext” होते हैं, यहाँ plaintext के रूप में मिलते हैं।

3. सबसे मुश्किल मामलों को भी संभाल सकता है

Section titled “3. सबसे मुश्किल मामलों को भी संभाल सकता है”

सबसे कठिन प्रोग्राम्स के लिए, दो और उपाय मौजूद हैं:

  • “Socket traffic”, एक निचले-स्तर का fallback: उन प्रोग्राम्स के लिए जो stripped down हैं, जिनके symbols हटाए जा चुके हैं, या जो किसी नए tech stack में लिखे गए हैं (जैसे pure Go, Rust, या Windows सिस्टम नेटवर्क स्टैक का इस्तेमाल), जब सामान्य तरीका उनका encryption/decryption entry point नहीं ढूँढ पाता, तो यह स्विच ऑन करें और यह डेटा हासिल करने के लिए एक निचले स्तर का रास्ता अपनाता है और फिर भी plaintext मिल जाता है, न प्रोग्राम का encryption/decryption entry point ढूँढ पाने पर निर्भर हुए बिना और न ही NIC पर निर्भर हुए बिना। कई ऐसे प्रोग्राम जिन पर सामान्य टूल्स पूरी तरह अटक जाते हैं, इस तरह संभाले जा सकते हैं।
  • “स्टार्टअप के क्षण” को कैप्चर करना: बहुत सारा authentication और handshaking उसी पल होता है जब कोई प्रोग्राम पहली बार शुरू होता है। पहले उसे बंद करें और टूल को उसे लॉन्च करने दें, इससे यह शुरुआती-स्टार्टअप traffic भी कैप्चर हो जाता है, ताकि आप वह महत्वपूर्ण पहला request न चूकें।

नया session · ऐप-लेयर कैप्चर: किसी चल रहे प्रोग्राम को चुनें (या प्रोग्राम का path डालें) और उसके अंदर से सीधे plaintext पढ़ें; शुरुआती स्टार्टअप कैप्चर करने के लिए “Restart target” चेक करें, या निचले-स्तर के fallback के लिए “Socket traffic”


4. कैप्चर के बाद: समझें, डिकोड करें

Section titled “4. कैप्चर के बाद: समझें, डिकोड करें”

अंदर से पढ़ा गया plaintext बाकी हर कैप्चर तरीके जैसी ही समान प्रोसेसिंग से गुज़रता है:

  • देखने के कई तरीके: structured, prettified text, hex, और auto-detect, हर दिशा के लिए अलग-अलग स्विच किए जा सकते हैं। विवरण के लिए Inspect & Decode देखें।
  • स्वचालित decompression और पहचान: gzip / brotli / deflate / zstd को स्वचालित रूप से decompress करता है (कई परतों में stacked होने पर भी), और JSON, XML, forms, protobuf / gRPC आदि को खुद पहचानकर prettify करता है।
  • Custom codecs: proprietary / खुद के socket protocols के लिए, एक छोटी सी script लिखकर इसे सिखाया जा सकता है कि उन्हें कैसे पढ़ना है। विवरण के लिए Custom Protocol Decoding देखें।

5. दायरा और सीमाएँ

Section titled “5. दायरा और सीमाएँ”
  • सबसे उपयुक्त: certificate pinning वाले, प्रॉक्सी को नज़रअंदाज़ करने वाले, या अपनी खुद की / गैर-मानक encryption इस्तेमाल करने वाले प्रोग्राम्स के लिए, जहाँ न प्रॉक्सी और न ही NIC plaintext पा सकते हैं।
  • चल रहे प्रोग्राम पर सीधे काम करता है: किसी चल रहे प्रोग्राम को चुनें और उसका plaintext तुरंत उसके अंदर से पढ़ें, न उसे restart करने की ज़रूरत, न ही उसकी किसी सेटिंग में बदलाव की (आप चाहें तो प्रोग्राम का path डालकर टूल से उसे शुरू भी करवा सकते हैं)।
  • केवल चुने गए प्रोग्राम को टारगेट करता है: डिफ़ॉल्ट रूप से यह अपने आप प्रोग्राम की सभी child processes तक विस्तार नहीं करता; multi-process / multi-window प्रोग्राम्स को अलग से चुनना पड़ सकता है।
  • कब सिस्टम-लेवल कैप्चर पर जाएँ: macOS के built-in सिस्टम ऐप्स, साथ ही खासतौर पर ज़िद्दी, गहराई से छिपे ऐप्स, बाहर से किसी भी दखल को स्वीकार नहीं करते, और यह मोड उनमें प्रवेश नहीं कर पाता; ऐसे टारगेट्स के लिए System-Level Capture पर जाएँ (जो प्रोग्राम के अंदर नहीं जाता, बल्कि सिस्टम के निचले स्तर से निरीक्षण करता है)।

6. चार लोकल कैप्चर तरीकों में से चुनना

Section titled “6. चार लोकल कैप्चर तरीकों में से चुनना”
आपकी स्थिति कौन-सा इस्तेमाल करें
पहले से चल रहा प्रोग्राम / certificate pinning इस्तेमाल करता है / प्रॉक्सी को नज़रअंदाज़ करता है / अपनी खुद की encryption इस्तेमाल करता है ऐप-लेयर कैप्चर (यह पेज)
एक सामान्य प्रोग्राम जिसे आप किसी कमांड से शुरू कर सकते हैं (browser / script / CLI) Per-Process Capture (ज़्यादा आसान)
मशीन पर सारा traffic, या non-HTTP traffic देखना चाहते हैं NIC Capture
macOS के built-in सिस्टम ऐप्स / ज़िद्दी ऐप्स System-Level Capture

संबंधित: Proxy Capture · Clear Certificate Pinning · Inspect & Decode