ExpressVPN रिसाव परीक्षण उपकरण

[ware_item id=33][/ware_item]

एक आवर्धक कांच के माध्यम से देखे जाने वाले लीक हुए कंप्यूटर केबल का चित्रण।


ExpressVPN लीक टेस्टिंग टूल्स पायथन टूल्स का एक एक्स्टेंसिबल सूट है, जो कि एप्लिकेशन के मैनुअल और ऑटोमेटिक लीक टेस्ट दोनों के लिए डिज़ाइन किया गया है।.

ExpressVPN की गोपनीयता अनुसंधान लैब द्वारा विकसित, उपकरण शुरू में दो उद्देश्यों के लिए बनाए गए थे:

  • ExpressVPN अनुप्रयोगों के मजबूत, स्वचालित प्रतिगमन परीक्षण प्रदान करना
  • उन अनुप्रयोगों को और मजबूत करने के लिए रिसाव परीक्षण जांच की सुविधा देना

हमें जल्द ही पता चला कि ये उपकरण वास्तव में व्यापक वीपीएन उद्योग के लिए फायदेमंद हो सकते हैं। इस प्रकार हमने एमआईटी लाइसेंस के तहत उन्हें पूरी तरह से खुला स्रोत उपलब्ध कराने का फैसला किया.

हमें उम्मीद है कि ऐसा करने से हम सभी वीपीएन उपयोगकर्ताओं के लिए एक अधिक निजी और सुरक्षित ऑनलाइन अनुभव प्रदान करने में मदद करेंगे:

  • उपयोगकर्ताओं और तीसरे पक्ष को वीपीएन की गुणवत्ता को सत्यापित करने और अपनी गोपनीयता और सुरक्षा जोखिमों का आकलन करने का एक स्वतंत्र तरीका;
  • संपूर्ण वीपीएन उद्योग के लिए लीक से सुरक्षा के लिए एक उच्च बेंचमार्क बनाना; तथा
  • रिसाव परीक्षण के आसपास पूरे उद्योग से एक साथ विशेषज्ञता लाना

साधनों के साथ शुरुआत करना

उपकरण GitHub पर यहां देखे जा सकते हैं: https://github.com/expressvpn/expressvpn_leakttesting.

आरंभ करने के लिए, README.md फ़ाइल के निर्देशों का पालन करें। जब हम नीचे दिए गए टूल का अवलोकन प्रदान करते हैं, GitHub रिपॉजिटरी को हमेशा टूल से संबंधित प्रलेखन के लिए सत्य का एकल स्रोत माना जाना चाहिए.

ध्यान दें कि हमारे गोपनीयता अनुसंधान लैब केस अध्ययन में शामिल परीक्षण निर्देशों का पालन करने के लिए, आपको GHHub में प्रलेखन के अनुसार रिसाव उपकरण स्थापित करना होगा। यह माना जाता है कि जब भी आप किसी भी मामले का अध्ययन करते हैं, तो उपकरण रूट निर्देशिका उस स्थान को संदर्भित करता है जहां आपने उपरोक्त गिट रिपॉजिटरी पर क्लोन किया है.

औजारों का अवलोकन

हम पायथन का उपयोग करते हैं

उपकरण मुख्य रूप से पायथन में लिखे गए हैं, आवश्यक के रूप में अन्य भाषाओं में कुछ सहायक उपकरण के साथ। हमने कई कारणों से पायथन को चुना:

  • यह अधिकांश मामलों में क्रॉस-प्लेटफ़ॉर्म और समर्थित आउट-ऑफ़-द-बॉक्स है
  • यह डेवलपर्स के एक बड़े प्रतिशत के लिए जाना जाता है और इस प्रकार आसानी से सुलभ है
  • इसका विकास तेजी से होता है - हमारे पास परीक्षण ढांचे के लिए कोई प्रदर्शन आवश्यकताएं नहीं हैं
  • यह एक अभिव्यंजक भाषा है जो हमें आसानी से पढ़ने योग्य कोड लिखने की अनुमति देती है

ध्यान दें कि हम पायथन 3 का उपयोग करते हैं, क्योंकि यह तेजी से वास्तविक मानक बन रहा है.

यह इकाई परीक्षण जैसा है

उपकरण एक इकाई परीक्षण सूट की तरह चलाने के लिए डिज़ाइन किए गए थे। एक एकल स्क्रिप्ट का उपयोग सुइट लॉन्च करने के लिए किया जाता है जो तब परीक्षणों की एक श्रृंखला चलाता है। प्रत्येक परीक्षण विशिष्ट परिस्थितियों में एक विशिष्ट प्रकार के रिसाव के लिए जाँच करता है, उदाहरण के लिए, कुछ नेटवर्क स्थितियों के तहत, फिर या तो पास, विफल या त्रुटि की रिपोर्ट करता है।.

एक परीक्षण-या परीक्षण का मामला — लगभग एक ही पायथन फ़ाइल से मेल खाता है। परीक्षण सूट को यूनिट परीक्षण सूट के साथ काम करने के लिए उपयोग किए जाने वाले डेवलपर्स से परिचित होने के लिए डिज़ाइन किया गया था, इसलिए प्रत्येक परीक्षण में सेटअप के परिचित पैटर्न (), परीक्षण (), और अश्रु () हैं।.

परीक्षण मामलों को यथासंभव सामान्य बनाया गया है। परीक्षण मामलों को अलग-अलग वीपीएन कॉन्फ़िगरेशन, विभिन्न नेटवर्क कॉन्फ़िगरेशन, और इसके बाद से चलाया जा सकता है। जब उन्हें चलाया जाता है, तो उन्हें एक कॉन्फ़िगरेशन प्रदान की जाती है जो निर्दिष्ट करता है कि वे परीक्षण के उस विशेष दौर के लिए कैसे चलेंगे। एक कॉन्फ़िगरेशन फ़ाइल को परीक्षण सूट में पास किया जाता है जो चलाने और उनके कॉन्फ़िगरेशन के सभी परीक्षणों को सूचीबद्ध करता है.

उपकरण रूट निर्देशिका से निम्नलिखित कमांड को निष्पादित करने के लिए परीक्षण कैसे चलाया जाएगा, इसका एक उदाहरण:

./run_tests.sh -c कॉन्फ़िगर / case_studies / vanilla_leaks.py

डिवाइस और नेटवर्क कॉन्फ़िगरेशन

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

जिस उपकरण से परीक्षण चलाए जाते हैं उसे संदर्भित किया जाता है परीक्षण ऑर्केस्ट्रेटर. अन्य सभी उपकरणों को बस के रूप में संदर्भित किया जाता है उपकरणों का परीक्षण करें.

सबसे सरल प्रकार का परीक्षण एक उपकरण (एकल डिवाइस परीक्षण) पर चलता है और उस उपकरण पर सीधे लीक के लिए परीक्षण करता है। उदाहरण के लिए, एक विंडोज डिवाइस पर सीधे विंडोज रिसाव परीक्षणों की एक विस्तृत कक्षा चला सकता है। इस मामले में, परीक्षण ऑर्केस्ट्रेटर वास्तव में एक परीक्षण उपकरण भी है। अधिक जटिल परीक्षण (मल्टी-डिवाइस टेस्ट) में वीपीएन, एक राउटर और एक पैकेट कैप्चर डिवाइस चलाने वाले टेस्ट डिवाइस शामिल हो सकते हैं.

स्वचालन

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

स्वचालित करने के लिए परीक्षण के सबसे कठिन भागों में से एक वीपीएन अनुप्रयोगों पर नियंत्रण है। वास्तव में, कई परीक्षणों के लिए, यह पहेली का एकमात्र टुकड़ा है जो स्वचालित नहीं है। वर्तमान में हमारे पास भंडार के लिए वीपीएन अनुप्रयोगों के नियंत्रण को स्वचालित करने के लिए समर्थन की पेशकश करने की कोई योजना नहीं है। इस तरह के समर्थन को जोड़ना हालांकि सूट की वास्तुकला द्वारा समर्थित है.

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

उपकरण स्थापित करना

GitHub रेपो में परीक्षण उपकरणों को कैसे सेट किया जाए, इस पर विस्तृत निर्देश। हम यहां केवल एक अवलोकन देते हैं कि उपकरणों को स्थापित करते समय क्या उम्मीद की जाए.

टेस्ट सूट लिनक्स, मैकओएस और विंडोज डिवाइस पर समर्थित है (यानी पायथन सूट स्थापित किया जा सकता है और सीधे इन उपकरणों पर चलाया जा सकता है)। मोबाइल उपकरणों को भी उपकरणों द्वारा समर्थित किया जाता है, लेकिन सूट कभी भी इन उपकरणों पर सीधे नहीं चलाया जाएगा.

हम वर्चुअल मशीन (वीएम) का उपयोग करने की सलाह देते हैं, विशेष रूप से एकल डिवाइस परीक्षणों के लिए। VM कई लाभ प्रदान करते हैं:

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

गंभीर गहराई से परीक्षण के लिए, हम हमेशा वास्तविक भौतिक हार्डवेयर पर परीक्षण चलाने की सलाह देते हैं, साथ ही वर्चुअलाइज्ड और वास्तविक हार्डवेयर के बीच किसी भी संभावित अंतर का पता लगाने के लिए।.

ध्यान दें कि अधिकांश परीक्षणों को चलाने के लिए रूट (व्यवस्थापक) की अनुमति की आवश्यकता होती है, इसलिए चीजों को सरल बनाने के लिए, पूरे सूट जड़ के रूप में चलेंगे.

लीक परिदृश्यों के बारे में अधिक जानें उपकरण परीक्षण

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

  • केस स्टडी 1: "वेनिला" लीक
  • केस स्टडी 2: वेबआरटीसी लीक
  • केस स्टडी 3: नेटवर्क संक्रमण लीक
  • केस स्टडी 4: अनुपलब्ध वीपीएन सर्वर लीक
  • केस स्टडी 5: वीपीएन प्रक्रिया क्रैश लीक

साधनों में योगदान देना

हम टूल में योगदान प्राप्त करने से अधिक खुश हैं, चाहे वह बग फिक्स के लिए हो, सुधार के लिए सुझाव हो, या पूरी तरह से नए परीक्षण मामलों के लिए हो। आप GitHub में पुल अनुरोधों के माध्यम से योगदान प्रस्तुत कर सकते हैं.

औजारों के बारे में हमसे संपर्क करें

आप हमसे [email protected] पर टूल के संबंध में संपर्क कर सकते हैं.

ध्यान दें कि उपकरण वर्तमान में हैं अल्फा स्थिति और संभावना अक्सर बदल जाएगी। हालांकि, हम यह सुनिश्चित करने का प्रयास करेंगे कि उपकरण हमेशा प्रयोग करने योग्य अवस्था में हों.

ExpressVPN रिसाव परीक्षण उपकरण
admin Author
Sorry! The Author has not filled his profile.