
यादृच्छिक रूप से असुरक्षित VMs बनाएं
SecGen कमजोर वर्चुअल मशीनों, प्रयोगशाला वातावरणों और हैकिंग चुनौतियों का निर्माण करता है, ताकि छात्र सुरक्षा पैठ परीक्षण तकनीक सीख सकें।
Metasploitable2 जैसे बॉक्स हमेशा समान होते हैं, यह प्रोजेक्ट Vagrant, Puppet और Ruby का उपयोग करके यादृच्छिक रूप से कमजोर वर्चुअल मशीनें बनाता है जिनका उपयोग सीखने या CTF ईवेंट होस्ट करने के लिए किया जा सकता है।
नवीनतम संस्करण यहां उपलब्ध है: http://github.com/cliffe/SecGen/
कृपया एक संक्षिप्त सर्वेक्षण पूरा करें ताकि हमें बता सकें कि आप SecGen का उपयोग कैसे कर रहे हैं।
होस्ट किए गए समाधान के लिए यहां जाएं: https://hacktivity.co.uk/
कम्प्यूटर सुरक्षा के छात्र हैकिंग चुनौतियों में भाग लेने से लाभान्वित होते हैं। व्यावहारिक प्रयोगशाला कार्य और पूर्व-कॉन्फ़िगर की गई हैकिंग चुनौतियाँ सुरक्षा शिक्षा और सुरक्षा-उन्मुख व्यक्तियों के शौक दोनों के रूप में सामान्य प्रथा हैं। प्रतिस्पर्धी हैकिंग चुनौतियाँ, जैसे कैप्चर द फ्लैग (CTF) प्रतियोगिताएँ, उद्योग सम्मेलनों में एक मुख्य आकर्षण बन गई हैं और बड़े ऑनलाइन समुदायों का केंद्र हैं। वर्चुअल मशीनें (VMs) हैकिंग के लिए लक्ष्य साझा करने का एक प्रभावी तरीका प्रदान करती हैं, और हमलावर के कौशल का परीक्षण करने के लिए डिज़ाइन की जा सकती हैं। Vulnhub जैसी वेबसाइटें पूर्व-कॉन्फ़िगर की गई हैकिंग चुनौती VMs होस्ट करती हैं और उन लोगों के लिए एक मूल्यवान संसाधन हैं जो कम्प्यूटर सुरक्षा में अपने कौशल को सीख रहे हैं और आगे बढ़ा रहे हैं। हालाँकि, इन हैकिंग चुनौतियों को विकसित करना समय लेने वाला है, और एक बार बन जाने के बाद, ये मूल रूप से स्थिर होती हैं। अर्थात, एक बार चुनौती "हल" हो जाने के बाद छात्र के लिए कोई शेष चुनौती नहीं रहती, और यदि चुनौती किसी प्रतियोगिता या मूल्यांकन के लिए बनाई गई है, तो साहित्यिक चोरी और मिलीभगत के जोखिम के बिना चुनौती का पुन: उपयोग नहीं किया जा सकता।
सुरक्षा परिदृश्य जनरेटर (SecGen) यादृच्छिक कमजोर सिस्टम उत्पन्न करता है। VMs एक परिदृश्य विनिर्देश के आधार पर बनाए जाते हैं, जो बनाए जाने वाले VMs की बाधाओं और गुणों का वर्णन करता है। उदाहरण के लिए, एक परिदृश्य एक ऐसी प्रणाली के निर्माण को निर्दिष्ट कर सकता है जिसमें एक दूरस्थ शोषण योग्य कमजोरी हो जो उपयोगकर्ता-स्तरीय समझौते का परिणाम देगी, और एक स्थानीय शोषण योग्य दोष जो रूट-स्तरीय समझौते का परिणाम देगा। इसके लिए हमलावर को सिस्टम तक रूट पहुंच प्राप्त करने के लिए दोनों यादृच्छिक रूप से चयनित कमजोरियों की खोज और शोषण करना होगा। वैकल्पिक रूप से, परिभाषित परिदृश्य अधिक विशिष्ट हो सकता है, जिसमें कुछ प्रकार की सेवाओं (जैसे FTP या SMB) या यहां तक कि सटीक कमजोरियों (CVE द्वारा) को निर्दिष्ट किया जा सकता है।
SecGen एक Ruby एप्लिकेशन है, जिसमें XML कॉन्फ़िगरेशन भाषा है। SecGen अपनी कॉन्फ़िगरेशन पढ़ता है, जिसमें उपलब्ध कमजोरियाँ, सेवाएँ, नेटवर्क, उपयोगकर्ता और सामग्री शामिल हैं, अनुरोधित परिदृश्य की परिभाषा पढ़ता है, परिदृश्य को यादृच्छिक बनाने के लिए तर्क लागू करता है, और आवश्यक VMs प्रदान करने के लिए Puppet और Vagrant का लाभ उठाता है।
SecGen मुफ्त सॉफ्टवेयर है: आप इसे GNU जनरल पब्लिक लाइसेंस की शर्तों के तहत पुनर्वितरित और संशोधित कर सकते हैं जैसा कि Free Software Foundation द्वारा प्रकाशित किया गया है, चाहे लाइसेंस का संस्करण 3 हो या (आपकी पसंद पर) कोई बाद का संस्करण।
SecGen में मॉड्यूल शामिल हैं, जो विभिन्न सॉफ्टवेयर पैकेज स्थापित करते हैं। प्रत्येक SecGen मॉड्यूल में सॉफ्टवेयर हो सकता है या दूरस्थ रूप से स्रोत हो सकता है, और प्रत्येक मॉड्यूल अपने स्वयं के लाइसेंस को साथ में दिए गए secgen_metadata.xml फ़ाइल में परिभाषित करता है।
SecGen Ubuntu Linux पर विकसित और परीक्षण किया गया है। सिद्धांत रूप में, यदि आपके पास सभी आवश्यक सॉफ्टवेयर स्थापित हैं, तो SecGen Mac या Windows पर चलना चाहिए।
आपको निम्नलिखित स्थापित करने की आवश्यकता होगी:
यह प्रोजेक्ट Ubuntu (20.04) रिलीज़ के साथ काम करने के लिए अनुकूलित किया गया है क्योंकि (16.04) अप्रैल 2021 तक जीवन के अंत पर आ रहा है, हालांकि यह उस संस्करण पर भी काम करेगा लेकिन यह गारंटी नहीं है कि यह आपके विकास वातावरण के लिए आवश्यक सुरक्षा अपडेट का समर्थन करेगा।
निम्नलिखित कमांड का उपयोग करके Ubuntu को अपडेट करना सुनिश्चित करें:```bash sudo apt update sudo apt upgrade
vagrant का एक हालिया संस्करण स्थापित करें:```bash
wget https://releases.hashicorp.com/vagrant/2.2.9/vagrant_2.2.9_x86_64.deb
sudo apt install ./vagrant_2.2.9_x86_64.deb
अन्य आवश्यक पैकेज स्थापित करें:```bash sudo apt-get install ruby-dev zlib1g-dev liblzma-dev build-essential patch virtualbox ruby-bundler imagemagick libmagickwand-dev exiftool libpq-dev libcurl4-openssl-dev libxml2-dev graphviz graphviz-dev libpcap0.8-dev git
निम्नलिखित कमांड का उपयोग करके SecGen रिपॉजिटरी को क्लोन करें।डिफ़ॉल्ट रूप से यह /home/username/SecGen होगा, आवश्यकतानुसार बदलें:```bash
git clone https://github.com/cliffe/SecGen.git
निम्नलिखित कमांड का उपयोग करके gems इंस्टॉल करें:```bash #Step In to the file directory
cd /home/username/SecGen
bundle update --bundler
gems अपडेट करें:```bash
bundle update
सभी आवश्यक पैकेज स्थापित करें:```bash
wget https://releases.hashicorp.com/vagrant/1.9.8/vagrant_1.9.8_x86_64.deb sudo apt install ./vagrant_1.9.8_x86_64.deb
sudo apt-get install ruby-dev zlib1g-dev liblzma-dev build-essential patch virtualbox ruby-bundler imagemagick libmagickwand-dev exiftool libpq-dev libcurl4-openssl-dev libxml2-dev graphviz graphviz-dev libpcap0.8-dev git
SecGen को अपनी पसंद की निर्देशिका में कॉपी करें, जैसे */home/user/bin/SecGen*
फिर gems इंस्टॉल करें:```bash
cd /home/user/bin/SecGen
bundle install
Windows baseboxes का उपयोग करने के लिए आपको Packer स्थापित करना होगा। निम्न कमांड का उपयोग करें:```bash curl -SL https://releases.hashicorp.com/packer/1.3.2/packer_1.3.2_linux_amd64.zip -o packer_1.3.2_linux_amd64.zip unzip packer_1.3.2_linux_amd64.zip sudo mv packer /usr/local/ sudo bash -c 'echo "export PATH="$PATH:/usr/local/"" >> /etc/environment' sudo vagrant plugin install winrm sudo vagrant plugin install winrm-fs
## उपयोग
मूल उपयोग:```bash
ruby secgen.rb run
यह डिफ़ॉल्ट परिदृश्य का उपयोग करके यादृच्छिक रूप से VM(s) उत्पन्न करेगा।
