
अपनी पसंद के HTTP इंटरसेप्शन प्रॉक्सी का उपयोग करके मनमाने TCP ट्रैफ़िक की निगरानी करें
अपनी पसंद के HTTP इंटरसेप्शन प्रॉक्सी का उपयोग करके मनमाने TCP ट्रैफिक की निगरानी करें
socksmon Twisted पर आधारित एक SOCKSv4 सर्वर है, जो आने वाले TCP ट्रैफिक को HTTP प्रॉक्सी के माध्यम से टनल करता है। socksmon ऐसा पोर्ट 2357 पर एक आंतरिक वेबसर्वर शुरू करके करता है, ट्रैफिक को मैन इन द मिडल प्रॉक्सी का उपयोग करके संपादित करने के लिए पोस्ट करता है और फिर इसे गंतव्य तक अग्रेषित करता है।
socksmon में SSL इंटरसेप्शन के लिए प्रारंभिक समर्थन है, जिसका अर्थ है कि आप अपनी पसंद के इंटरसेप्शन प्रॉक्सी का उपयोग करके मनमाने ssl एन्क्रिप्टेड tcp ट्रैफिक का विश्लेषण कर सकते हैं।
पहले आपको एक प्रमाणपत्र बनाना होगा जिसे आप socksmon के साथ PEM प्रारूप में उपयोग करना चाहते हैं और इसे /tmp/server.pem के अंतर्गत रखना होगा। यदि आप BURP का उपयोग करते हैं, तो प्राइवेट की और प्रमाणपत्र को निर्यात करें और फिर उन्हें एक साथ जोड़ें (जैसे cat server.crt server.key > /tmp/server.pem)।
दूसरा, अपने इंटरसेप्शन प्रॉक्सी को localhost पर पोर्ट 8080 के साथ शुरू करें।
तीसरा, SOCKSv4 ट्रैफिक को yourip:9050 पर भेजें। सुनिश्चित करें कि SOCKSv4 का उपयोग करें, SOCKSv5 Twisted SOCKS सर्वर कार्यान्वयन के कारण काम नहीं करेगा। ट्रैफिक को रीडायरेक्ट करने के लिए मैं Windows पर Proxifier1 और Linux पर Redsocks2 या Proxychains3 की सलाह देता हूँ।
पैच / PRs का स्वागत है।
वर्तमान में विशिष्ट एंडपॉइंट्स के लिए कोई प्रमाणपत्र उत्पन्न नहीं किया जाता है, उदाहरण के लिए निर्दिष्ट कुंजी का उपयोग सभी साइटों के लिए सीधे किया जाता है। यह उन क्लाइंट्स के साथ समस्याग्रस्त है जो प्रमाणपत्र में सामान्य नाम या रद्दीकरण सूची की जांच करते हैं।
सभी ट्रैफिक के लिए अपस्ट्रीम प्रॉक्सी का समर्थन किया जाना चाहिए। HTTP को विशेष उपचार मिलना चाहिए, ताकि कनेक्ट को अस्वीकार करने वाले प्रॉक्सी का भी उपयोग किया जा सके।
प्रॉक्सी पोर्ट, प्रमाणपत्र और वेबसर्वर पोर्ट सेट करने के लिए कमांड लाइन विकल्पों का उपयोग किया जाना चाहिए।
एक मॉड्यूलर ढांचा लागू करें जो TCP ट्रैफिक के प्रसंस्करण की अनुमति देता है। विभिन्न प्रोटोकॉल और प्रारूपों (जैसे जावा ऑब्जेक्ट को XML में डिसीरियलाइज़ करना) के लिए डिकोडर और री-एन्कोडर को लागू करना आसान होना चाहिए।