सर्व-इन-वन पेनिट्रेशन टेस्टिंग प्लेटफॉर्म जिसमें MITM प्रॉक्सी, वेब फ़ज़र, रिवर्स कनेक्शन हैंडलर, और स्वचालित सुरक्षा परीक्षण और एक्सप्लॉइटेशन के लिए प्लगइन सिस्टम शामिल है।
श्वेत पत्र देखें • आधिकारिक दस्तावेज़ • समस्या प्रतिक्रिया • आधिकारिक वेबसाइट पर जाएं • समुदाय में शामिल हों • परियोजना संरचना
सुरक्षा एकीकरण, नए सामान्य में उद्यमों के लिए सुरक्षा संचालन और सुरक्षा प्रबंधन में एक सुधार है, और यह नए सामान्य में उद्यमों की सर्वोपरि आवश्यकता भी है।
सुरक्षा एकीकरण की अवधारणा के आधार पर, Yaklang.io टीम ने सुरक्षा क्षेत्र में एक विशेष भाषा, Yaklang विकसित की है। उन उत्पादों/उपकरणों के लिए जिन्हें मूल रूप से Yak प्लेटफ़ॉर्म में एकीकृत नहीं किया जा सकता है, Yaklang का उपयोग करके उनके "उच्च गुणवत्ता वाले विकल्प" को फिर से लिखा जा सकता है। कुछ ऐसे उत्पादों के लिए जिनका पारिस्थितिकी तंत्र पूर्ण है और उच्च मान्यता प्राप्त है, Yaklang सीधे संकलित और एकीकृत कर सकता है, और Yaklang भाषा को बेहतर ढंग से अनुकूलित करने के लिए स्रोत कोड में आवश्यक संशोधन कर सकता है। उन सुरक्षा पेशेवरों के लिए जो कोड नहीं लिखना चाहते, Yakit Yaklang की सभी क्षमताओं के लिए उपयुक्त GUI प्रदान करेगा, और संस्करण अपडेट के साथ GUI अधिक परिपक्व होता जाएगा।
Yaklang की सुरक्षा क्षमताओं को आपके वास्तविक उपयोग के और करीब लाने के लिए, हमने Yak के लिए एक gRPC सर्वर लिखा है, और इस सर्वर का उपयोग करके एक क्लाइंट बनाया है: Yakit।
CDSL को CyberSecurity Domain Specific Language के रूप में परिभाषित किया गया है, जो साइबर सुरक्षा क्षेत्र के लिए एक विशेष प्रोग्रामिंग भाषा है; हमने इस ट्यूरिंग-पूर्ण भाषा के रनटाइम स्थिति को संभालने के लिए एक स्टैक वर्चुअल मशीन लिखी है। हम "CDSL" के माध्यम से सुरक्षा क्षमताओं के एकीकरण और अंतर्निहित प्लेटफ़ॉर्म के एकीकरण को प्राप्त करने की उम्मीद करते हैं।
स्व-विकसित सुरक्षा क्षेत्र CDSL को वास्तविक उपयोग परिदृश्यों के करीब लाने के लिए, हमने Yaklang के लिए एक gRPC सर्वर लिखा है, और इस gRPC सर्वर के आधार पर क्लाइंट Yakit का निर्माण किया है। वास्तव में, यह Yakit के GUI के माध्यम से इंजन की क्षमताओं को नियंत्रित करने के बारे में है। Yakit का gRPC सर्वर उपयोगकर्ताओं को अधिक सुविधाजनक और तेज़ी से तैनात करने की अनुमति देता है, यह प्लेटफ़ॉर्म-स्वतंत्र है, और रिमोट डिप्लॉयमेंट या सीधे स्थानीय रूप से होस्ट में शुरू करने का विकल्प चुन सकता है।
सुरक्षा क्षमताओं का अवलोकन:
MITM कंसोल BurpSuite के सभी संचालनों (सर्टिफिकेट डाउनलोड और इंस्टॉल करना, अनुरोधों को हाइजैक करना, प्रतिक्रियाएं, हाइजैक किए गए पैकेट को संपादित करना आदि) को 100% प्रतिस्थापित कर सकता है। यह एक पूर्ण सुचारू वर्कफ़्लो प्रदान करता है: हाइजैकिंग => History => Repeater/Intruder, डेटा हाइजैक करना, History में ऐतिहासिक डेटा देखना, "खुदाई" करने के लिए आवश्यक पैकेट का चयन करना, और Repeater/Intruder संचालन के लिए Web Fuzzer पर भेजना। इन विशिष्ट संचालन परिदृश्यों के अलावा, MITM प्लगइन निष्क्रिय स्कैनिंग, हॉट-लोडिंग, पैकेट प्रतिस्थापन, मार्किंग आदि जैसी अधिक लचीली सुविधाएं भी प्रदान करता है।
Yakit के MITM मॉड्यूल का सिद्धांत एक HTTP प्रॉक्सी शुरू करना है जो स्वचालित रूप से ट्रैफ़िक को अग्रेषित करता है। जब उपयोगकर्ता मैन्युअल हाइजैकिंग शुरू करता है, तो स्वचालित अग्रेषण रुक जाता है, अनुरोध ब्लॉक हो जाता है, और अनुरोध को स्टैक से बाहर निकाला जाता है, Gzip डीकंप्रेसन, चंक प्रोसेसिंग, डिकोडिंग आदि किया जाता है ताकि अनुरोध मानव-पठनीय हो जाए और उपयोगकर्ता के फ्रंट-एंड पर प्रदर्शित हो। उपयोगकर्ता अनुरोध को देख, संशोधित या रीप्ले कर सकता है। रीप्ले करते समय, उपयोगकर्ता द्वारा निर्मित HTTP अनुरोध पैकेट की मरम्मत की जाती है ताकि पैकेट की वैधता सुनिश्चित हो सके। Yak इंजन ने मैन्युअल रूप से HTTP लाइब्रेरी लागू की है, इसलिए उपयोगकर्ता विशेष परिदृश्यों में शोषण के लिए कस्टम विकृत अनुरोध पैकेट और प्रतिक्रिया पैकेट बना सकते हैं।
Web Fuzzer मॉड्यूल उपयोगकर्ताओं को कस्टम HTTP रॉ अनुरोध भेजने की अनुमति देता है। उपयोगकर्ता के लिए इसे सरल और सहज बनाने के लिए, केवल डेटा-संबंधित जानकारी पर ध्यान केंद्रित करने की आवश्यकता है, Yakit बैकएंड ने बहुत सारा काम किया है। HTTP रॉ में कुछ जानकारी जो डेटा ट्रांसमिशन और पार्सिंग सुनिश्चित करती है, Yakit बैकएंड द्वारा ठीक और पूरा किया जाता है, जैसे CRLF को ठीक करना, Content-Type को पूरा करना, चंक विधि से ट्रांसमिट करना, boundary को पूरा करना, Content-Length को ठीक करना आदि।