
Incarcero एक उपकरण है जो मैलवेयर विश्लेषण उपकरणों और सुरक्षा सेटिंग्स के साथ पूर्व-कॉन्फ़िगर किए गए वर्चुअल मशीन (VM) बनाता है जो बिना किसी उपयोगकर्ता इंटरैक्शन के मैलवेयर विश्लेषण के लिए तैयार होते हैं।
मैलवेयर विश्लेषण बमों को निष्क्रिय करने जैसा है। लक्ष्य एक ऐसे प्रोग्राम को अलग करना और समझना है जो नुकसान पहुँचाने के लिए बनाया गया है, जो अक्सर विश्लेषण को और जटिल बनाने के लिए अस्पष्ट (जैसे: पैक) किया जाता है।
Incarcero एक उपकरण है जो वर्चुअल मशीन (VMs) बनाता है जो मैलवेयर विश्लेषण उपकरणों और मैलवेयर विश्लेषण के अनुरूप सुरक्षा सेटिंग्स के साथ पूर्व-कॉन्फ़िगर किए गए हैं, बिना किसी उपयोगकर्ता इंटरैक्शन के।
इसके अतिरिक्त, इस रिपॉजिटरी में शायद सबसे बड़ा मैलवेयर स्रोत कोड संग्रह भी शामिल है, साथ ही एक मॉड्यूल भी है जो लोकप्रिय ऑनलाइन डेटाबेस से मैलवेयर नमूने डाउनलोड करने की अनुमति देता है।
नोट: MD5 मान या smbXXX.tmp जैसे सामान्य नामों वाले बाइनरी को अपलोड के समय VirusTotal द्वारा मैलवेयर के रूप में नहीं पहचाना गया था, लेकिन इसका मतलब यह नहीं है कि यह मैलवेयर का नमूना नहीं है। कृपया इस रिपॉजिटरी में किसी भी और सभी नमूनों को सेटअप, विश्लेषण और रिवर्स इंजीनियरिंग करने में संकोच न करें, यदि आप वास्तव में ऐसा करते हैं, तो मुझे अपनी जांच के परिणाम बताएं।
dnf install ruby-devel gcc-c++ zlib-devel
vagrant plugin install winrm winrm-fs
apt install vagrant git python3-pip
apt install git python3-pip
pacman -Sy vagrant packer python-pip git
sudo pip3 install git+https://github.com/0x48piraj/incarcero.git#egg=incarcero
नोट: Windows 10 से शुरू करके, Hyper-V हमेशा ऑपरेटिंग सिस्टम के नीचे चल रहा होता है। चूंकि VT-X को केवल एक हाइपरवाइज़र द्वारा विशेष रूप से संचालित करने की आवश्यकता होती है, इससे VirtualBox (और incarcero) विफल हो जाता है। Hyper-V को अक्षम करने और VirtualBox को चलने देने के लिए, एक प्रशासनिक कमांड प्रॉम्प्ट में निम्नलिखित कमांड जारी करें और फिर रीबूट करें: bcdedit /set hypervisorlaunchtype off। Virtualbox के संस्करण 6 से, यह फ़ॉलबैक निष्पादन कोर के रूप में Hyper-V का उपयोग करने का समर्थन करता है (चेंजलॉग)
निम्नलिखित चरण मानते हैं कि आपने https://chocolatey.org/[Chocolatey] स्थापित किया है। अन्यथा, मैन्युअल स्थापना प्रक्रिया का पालन करें।
निर्भरताएँ स्थापित करें:
choco install python vagrant packer git virtualbox
कंसोल को ताज़ा करें:
refreshenv
incarcero स्थापित करें:
pip3 install setuptools
pip3 install -U git+https://github.com/0x48piraj/incarcero.git#egg=incarcero
C:\Windows\System32\pip3 install setuptools
pip3 install -U git+https://github.com/0x48piraj/incarcero.git#egg=incarcero
सामान्य स्थापना के बाद यह कमांड चलाएँ:
vagrant plugin install vagrant-aws
नोट: AWS सुविधा का फिलहाल केवल Linux पर परीक्षण किया गया है और EC2 Windows 10 के 32-बिट डेस्कटॉप संस्करण का समर्थन नहीं करता है।
यह आपका बेस बॉक्स बनाता है जिसे Vagrant में आयात किया जाता है। बाद में आप प्रति नमूना विश्लेषण में एक ही बॉक्स का कई बार पुन: उपयोग कर सकते हैं।
चलाएँ:
incarcero build <template>
आप सभी समर्थित टेम्पलेट्स को इस प्रकार सूचीबद्ध भी कर सकते हैं:
incarcero list
यह एक Vagrant बॉक्स बनाएगा जो मैलवेयर जांच के लिए तैयार है, जिसे आप बाद में Vagrantfile में शामिल कर सकते हैं।
उदाहरण के लिए:
incarcero build win10_x64_analyst
कॉन्फ़िगरेशन अनुभाग में इस बारे में और जानकारी है कि incarcero के साथ क्या कॉन्फ़िगर किया जा सकता है।
incarcero spin win10_x64_analyst <name>
यह मैलवेयर विश्लेषण के लिए उपयोग किए जाने के लिए तैयार एक Vagrantfile बनाएगा। इसे अपनी पसंद के निर्देशिका में ले जाएँ और जारी करें:
vagrant up
डिफ़ॉल्ट रूप से स्थानीय निर्देशिका डेस्कटॉप पर VM में साझा की जाएगी। इसे Vagrantfile के प्रासंगिक भाग पर टिप्पणी करके बदला जा सकता है।
उदाहरण के लिए:
incarcero spin win7_x86_analyst 20160519.cryptolocker.xyz
incarcero Amazon Web Services पर VM को अपलोड और इंटरैक्ट कर सकता है। ऐसा करने के लिए, इन चरणों का पालन करें:
. incarcero को VM को AMI (Amazon Machine Image) में बदलने से पहले AWS पर एक S3 बकेट की आवश्यकता होगी। यदि आपके पास नहीं है, अभी एक बनाएँ।
. आपके उदाहरण को कम से कम WinRM (प्रकार: WinRM-HTTP, प्रोटोकॉल: TCP, पोर्ट रेंज: 5985, स्रोत: होस्ट का सार्वजनिक IP) के लिए इनबाउंड कनेक्शन की अनुमति देने वाले नियम वाले सुरक्षा समूह की भी आवश्यकता है।
. इसके बाद, आपको एक vmimport सेवा भूमिका कॉन्फ़िगर करने की आवश्यकता है।
इस गाइड के VM Import Service Role नामक अनुभाग का पालन करें।
ये चरण एक ऐसे खाते से किए जाने चाहिए जिसके पास iam:CreateRole और iam:PutRolePolicy अनुमतियाँ हों।
. यदि डिफ़ॉल्ट कॉन्फ़िग का उपयोग किया जाता है, तो हाइपरविज़र को aws में बदलें और संबंधित अनिवार्य विकल्प भरें। अन्यथा, अपने कस्टम कॉन्फ़िग में AWS के बारे में सभी विकल्प जोड़ना सुनिश्चित करें।
. अंत में, आप अपने उदाहरण को लॉन्च करने के लिए बॉक्स निर्माण और प्रति विश्लेषण उदाहरण अनुभागों में वर्णित समान चरणों का पालन कर सकते हैं!
नोट: AMI आयात में बहुत लंबा समय लग सकता है (लगभग एक घंटा), हालाँकि आप यह करके कार्य की स्थिति सत्यापित कर सकते हैं। फिलहाल, प्रति टेम्पलेट केवल एक AMI बनाया जा सकता है।
pip का उपयोग करके awscli स्थापित करें:
pip install awscli
कॉन्फ़िगर awscli को इसके साथ:
aws configure
फिर चलाएँ:
aws ec2 describe-import-image-tasks
क्लाउड पर किसी उदाहरण से RDP का उपयोग करके कनेक्ट करने के लिए, अपने Vagrantfile के समान स्थान पर यह कमांड चलाएँ:
vagrant rdp -- /cert-ignore
इसे काम करने के लिए, उदाहरण को RDP इनबाउंड कनेक्शन (प्रकार: RDP, प्रोटोकॉल: TCP, पोर्ट रेंज: 3389, स्रोत: होस्ट का सार्वजनिक IP) की अनुमति देने वाले सुरक्षा समूह की आवश्यकता होगी।
नोट: आप निम्नलिखित त्रुटि को सुरक्षित रूप से अनदेखा कर सकते हैं क्योंकि rsync अभी तक लागू नहीं किया गया है: No host IP was given to the Vagrant core NFS helper. This is an internal error that should be reported as a bug.
क्लाउड पर किसी उदाहरण को रोकने के लिए, अपने Vagrantfile के समान स्थान पर यह कमांड चलाएँ:
vagrant halt
incarcero का कॉन्फ़िगरेशन एक निर्देशिका में स्थित है जो सामान्य ऑपरेटिंग सिस्टम सम्मेलनों का पालन करती है:
~/.config/incarcero/~/Library/Application Support/incarcero/C:\Users\<username>\AppData\Local\incarcero\incarcero\फ़ाइल का नाम config.js है और पहली बार चलाने पर एक उदाहरण फ़ाइल से कॉपी किया जाता है।
उदाहरण कॉन्फ़िगरेशन प्रलेखित है।
incarcero डिफ़ॉल्ट रूप से वर्चुअलबॉक्स को बैक-एंड के रूप में उपयोग करता है लेकिन संस्करण 0.3.0 से ESXi / vSphere के लिए समर्थन जोड़ा गया है। ESXi / vSphere समर्थन के लिए आवश्यक चरणों के बारे में नोट्स उपलब्ध हैं। चूंकि सभी का सेटअप थोड़ा अलग है, यदि आपको कोई समस्या आती है या पुल अनुरोध के माध्यम से हमारे दस्तावेज़ीकरण में सुधार करना चाहते हैं तो एक मुद्दा खोलने में संकोच न करें।
हम profiles की अवधारणा के साथ प्रयोग कर रहे हैं जो कॉन्फ़िगरेशन से अलग संग्रहीत होते हैं और फ़ाइलें बनाने, रजिस्ट्री बदलने या अतिरिक्त पैकेज स्थापित करने के लिए उपयोग किए जा सकते हैं। एक उदाहरण कॉन्फ़िगरेशन के लिए profile-example.js देखें। यह नई क्षमता प्रयोगात्मक है और जैसे-जैसे हम इसके साथ प्रयोग करते हैं, परिवर्तन के अधीन है।
वर्तमान में, incarcero सुरक्षा समूहों के स्वचालित निर्माण का समर्थन नहीं करता है, इसलिए आपको अपना स्वयं का बनाने के लिए AWS कंसोल का उपयोग करना होगा। हालाँकि, Boto3 लाइब्रेरी का उपयोग करके, इसे लागू करने का एक तरीका होना चाहिए।
यह रिपॉजिटरी केवल शोध उद्देश्यों के लिए है, इस कोड का उपयोग आपकी जिम्मेदारी है।
मैं यहां उपलब्ध किसी भी स्रोत कोड का उपयोग करने के तरीके के लिए कोई जिम्मेदारी और/या देयता नहीं लेता/लेती हूँ। इस रिपॉजिटरी में उपलब्ध किसी भी फ़ाइल का उपयोग करके, आप समझते हैं कि आप अपने जोखिम पर उपयोग करने के लिए सहमत हैं। एक बार फिर, यहां उपलब्ध सभी फ़ाइलें केवल शिक्षा और/या शोध उद्देश्यों के लिए हैं।
मैं यहां उपलब्ध किसी भी कोड का लेखक नहीं हूँ। इस रिपॉजिटरी में ऑनलाइन लीक हुए (और कई अन्य स्रोतों में पाए गए) मैलवेयर स्रोत कोड नमूने शामिल हैं, मैंने कोड का विश्लेषण करने वालों के लिए प्रक्रिया को सरल बनाने के लिए इसे GitHub पर अपलोड किया है।
इस रिपॉजिटरी में शामिल सामग्री से संबंधित कोई भी कार्रवाई और/या गतिविधि पूरी तरह से आपकी जिम्मेदारी है। इस रिपॉजिटरी में जानकारी के दुरुपयोग से संबंधित व्यक्तियों के खिलाफ आपराधिक आरोप लगाए जा सकते हैं। कानून तोड़ने के लिए इस रिपॉजिटरी में कोड का दुरुपयोग करने वाले किसी भी व्यक्ति के खिलाफ कोई भी आपराधिक आरोप लगने पर मैं जिम्मेदार नहीं ठहराया जाऊँगा/जाऊँगी।
यह रिपॉजिटरी किसी भी हैकिंग संबंधी गतिविधि को बढ़ावा नहीं देता है। इस रिपॉजिटरी की सभी जानकारी केवल शैक्षिक उद्देश्यों के लिए है।
इस परियोजना को malboxes की सहायता से पुनर्जीवित किया गया था।