
मैलवेयर विश्लेषण के लिए विंडोज वर्चुअल मशीनें बनाता है, ताकि आपको न करनी पड़े।
= Malboxes :toc: preamble :toclevels: 2 :twob: https://twitter.com/obilodeau :twhg: https://twitter.com/hugospns // github stuff ifdef::env-github[:github:]
ifndef::github[] // local logo image::docs/logos/main.svg[Malboxes Logo] endif::[]
ifdef::github[] // logo on github image::https://raw.githubusercontent.com/GoSecure/malboxes/master/docs/logos/main.svg?sanitize=true[Malboxes Logo]
.Project health // Travis Build Status image:https://img.shields.io/travis/GoSecure/malboxes/master.svg[Build Status (Travis CI), link=https://travis-ci.org/GoSecure/malboxes] // BlackHat Arsenal 2017 image:https://raw.githubusercontent.com/toolswatch/badges/master/arsenal/usa/2017.svg?sanitize=true[Black Hat Arsenal, link=https://www.toolswatch.org/2017/06/the-black-hat-arsenal-usa-2017-phenomenal-line-up-announced/] // Gitter Chat image:https://badges.gitter.im/malboxes_/Lobby.svg[link="https://gitter.im/malboxes_/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge"] endif::[]
मैलवेयर विश्लेषण के लिए Windows वर्चुअल मशीनें बनाता है, ताकि आपको स्वयं न बनानी पड़े।
https://github.com/gosecure/malboxes
== आवश्यकताएँ
=== बिल्ड मशीन के लिए न्यूनतम विशिष्टताएँ
=== Fedora
dnf install ruby-devel gcc-c++ zlib-devel
vagrant plugin install winrm winrm-fs
=== Debian
apt install vagrant git python3-pip
=== Ubuntu
apt install git python3-pip
=== ArchLinux
pacman -Sy vagrant packer python-pip git
== स्थापना
=== Linux/Unix
pip install करें:=== Windows
NOTE: Windows 10 से शुरू करते हुए, Hyper-V हमेशा ऑपरेटिंग सिस्टम के नीचे चलता है। चूँकि VT-X को केवल एक ही हाइपरवाइज़र द्वारा विशेष रूप से संचालित करने की आवश्यकता है,
https://github.com/GoSecure/malboxes/issues/39[यह VirtualBox (और malboxes) को विफल करने का कारण बनता है]। Hyper-V को अक्षम करने और VirtualBox को चलाने की अनुमति देने के लिए,
एक व्यवस्थापक कमांड प्रॉम्प्ट में निम्नलिखित कमांड जारी करें, फिर रीबूट करें: bcdedit /set hypervisorlaunchtype off
==== Chocolatey का उपयोग करके
निम्नलिखित चरण मानते हैं कि आपके पास https://chocolatey.org/[Chocolatey] स्थापित है। अन्यथा, <<Manually,मैन्युअल स्थापना प्रक्रिया>> का पालन करें।
==== मैन्युअल रूप से
C:\Windows\System32\=== AWS पर तैनात करने के लिए (वैकल्पिक) सामान्य स्थापना के बाद यह कमांड चलाएँ:
vagrant plugin install vagrant-aws
NOTE: AWS सुविधा का अभी तक केवल Linux पर परीक्षण किया गया है और EC2 Windows 10 के 32-बिट डेस्कटॉप संस्करण का समर्थन नहीं करता है।
== उपयोग
=== बॉक्स निर्माण
यह आपका आधार बॉक्स बनाता है जिसे Vagrant में आयात किया जाता है। बाद में आप प्रति नमूना विश्लेषण में उसी बॉक्स का कई बार पुन: उपयोग कर सकते हैं।
चलाएँ:
malboxes build <template>
आप सभी समर्थित टेम्पलेट को इसके साथ सूचीबद्ध भी कर सकते हैं:
malboxes list
यह मैलवेयर जाँच के लिए तैयार एक Vagrant बॉक्स बनाएगा, जिसे आप बाद में Vagrantfile में शामिल कर सकते हैं।
उदाहरण के लिए:
malboxes build win10_x64_analyst
<<_configuration,कॉन्फ़िगरेशन अनुभाग>> में इस बारे में अधिक जानकारी है कि malboxes के साथ क्या कॉन्फ़िगर किया जा सकता है।
=== प्रति विश्लेषण उदाहरण
malboxes spin win10_x64_analyst <name>
यह मैलवेयर विश्लेषण के लिए उपयोग करने के लिए तैयार एक Vagrantfile बनाएगा। इसे अपनी पसंद की निर्देशिका में ले जाएँ और जारी करें:
vagrant up
डिफ़ॉल्ट रूप से स्थानीय निर्देशिका VM में डेस्कटॉप पर साझा की जाएगी। इसे Vagrantfile के प्रासंगिक भाग को टिप्पणी करके बदला जा सकता है।
उदाहरण के लिए:
malboxes spin win7_x86_analyst 20160519.cryptolocker.xyz
=== AWS पर तैनात करने के लिए (वैकल्पिक)
Malboxes AWS पर एक VM को अपलोड और इंटरैक्ट कर सकता है। ऐसा करने के लिए, इन चरणों का पालन करें:
. Malboxes को VM को AMI (Amazon Machine Image) में बदलने से पहले अपलोड करने के लिए AWS पर एक S3 बकेट की आवश्यकता होगी। यदि आपके पास एक नहीं है, तो link:https://docs.aws.amazon.com/quickstarts/latest/s3backup/step-1-create-bucket.html[अब एक बनाएँ।]
. आपके इंस्टेंस को कम से कम एक नियम के साथ एक link:https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html#CreatingSecurityGroups[सुरक्षा समूह] की भी आवश्यकता है जो WinRM के लिए इनबाउंड कनेक्शन की अनुमति देता है (प्रकार: WinRM-HTTP, प्रोटोकॉल: TCP, पोर्ट रेंज: 5985, स्रोत: होस्ट का सार्वजनिक IP)।
. इसके बाद, आपको एक vmimport सेवा भूमिका कॉन्फ़िगर करने की आवश्यकता है।
https://docs.aws.amazon.com/vm-import/latest/userguide/vmimport-image-import.html[इस गाइड] के VM Import Service Role नामक अनुभाग का पालन करें।
ये चरण एक खाते के साथ किए जाने चाहिए जिसके पास iam:CreateRole और iam:PutRolePolicy अनुमतियाँ हों।
. यदि <<_configuration,डिफ़ॉल्ट कॉन्फ़िग>> का उपयोग किया जाता है, तो हाइपरवाइज़र को aws में बदलें और संबंधित अनिवार्य विकल्प भरें। अन्यथा, अपने कस्टम कॉन्फ़िग में AWS के बारे में सभी विकल्प जोड़ना सुनिश्चित करें।
. अंत में, आप अपने इंस्टेंस को लॉन्च करने के लिए <<Box creation,बॉक्स निर्माण>> और <<Per analysis instances,प्रति विश्लेषण उदाहरण>> अनुभागों में वर्णित समान चरणों का पालन कर सकते हैं!
NOTE: AMI आयात में बहुत लंबा समय लग सकता है (लगभग एक घंटा), हालांकि आप <<AMI import status,यह>> करके कार्य की स्थिति सत्यापित कर सकते हैं। फिलहाल, प्रति टेम्पलेट केवल एक AMI बनाई जा सकती है।
==== AMI आयात स्थिति pip का उपयोग करके awscli स्थापित करें:
pip install awscli
link:https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html#cli-quick-configuration[कॉन्फ़िगर] awscli को इसके साथ:
aws configure
फिर चलाएँ:
aws ec2 describe-import-image-tasks
==== RDP
क्लाउड पर एक इंस्टेंस से RDP का उपयोग करके कनेक्ट करने के लिए, अपने Vagrantfile के समान स्थान पर यह कमांड चलाएँ:
vagrant rdp -- /cert-ignore
इसे काम करने के लिए, इंस्टेंस को RDP इनबाउंड कनेक्शन की अनुमति देने वाले एक सुरक्षा समूह की आवश्यकता होगी (प्रकार: RDP, प्रोटोकॉल: TCP, पोर्ट रेंज: 3389, स्रोत: होस्ट का सार्वजनिक IP)।
NOTE: आप निम्नलिखित त्रुटि को सुरक्षित रूप से अनदेखा कर सकते हैं क्योंकि 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
== कॉन्फ़िगरेशन
Malboxes का कॉन्फ़िगरेशन एक निर्देशिका में स्थित है जो सामान्य ऑपरेटिंग सिस्टम परंपराओं का पालन करती है:
~/.config/malboxes/~/Library/Application Support/malboxes/C:\Users\<username>\AppData\Local\malboxes\malboxes\फ़ाइल का नाम config.js है और इसे पहले रन पर एक उदाहरण फ़ाइल से कॉपी किया जाता है।
link:malboxes/config-example.js[उदाहरण कॉन्फ़िगरेशन] दस्तावेज़ित है।
=== ESXi / vSphere समर्थन
Malboxes डिफ़ॉल्ट रूप से virtualbox को बैक-एंड के रूप में उपयोग करता है, लेकिन संस्करण 0.3.0 से ESXi / vSphere के लिए समर्थन जोड़ा गया है। link:docs/esx-setup.adoc[ESXi / vSphere समर्थन के लिए आवश्यक चरणों] के बारे में नोट्स उपलब्ध हैं। चूँकि हर किसी का सेटअप थोड़ा अलग होता है, यदि आप किसी समस्या का सामना करते हैं या पुल अनुरोध के माध्यम से हमारे दस्तावेज़ीकरण में सुधार करना चाहते हैं तो एक मुद्दा खोलने में संकोच न करें।
=== प्रोफाइल
हम प्रोफाइल की अवधारणा की खोज कर रहे हैं जो कॉन्फ़िगरेशन से अलग संग्रहीत की जाती हैं और फ़ाइलें बनाने, रजिस्ट्री को बदलने या अतिरिक्त पैकेज स्थापित करने के लिए उपयोग की जा सकती हैं। एक उदाहरण कॉन्फ़िगरेशन के लिए link:malboxes/profile-example.js[profile-example.js] देखें। यह नई क्षमता प्रायोगिक है और जैसे-जैसे हम इसके साथ प्रयोग करेंगे, परिवर्तन के अधीन है।
=== AWS सुरक्षा समूह
वर्तमान में, Malboxes सुरक्षा समूहों के स्वचालित निर्माण का समर्थन नहीं करता है, इसलिए आपको अपने सुरक्षा समूह बनाने के लिए AWS कंसोल का उपयोग करना होगा। हालाँकि, link:https://boto3.amazonaws.com/v1/documentation/api/latest/index.html[Boto3] लाइब्रेरी का उपयोग करके इसे लागू करने का एक तरीका होना चाहिए।
== अधिक जानकारी
=== वीडियो
परिचय वीडियो
image::https://img.youtube.com/vi/oq6N3WLAoe8/0.jpg[link="https://www.youtube.com/watch?v=oq6N3WLAoe8"]
=== ब्लॉग पोस्ट
=== प्रस्तुतियाँ
malboxes को https://www.nsec.io/2016/01/applying-devops-principles-for-better-malware-analysis/[NorthSec 2016] में Applying DevOps Principles for Better Malware Analysis शीर्षक वाली एक बातचीत में प्रस्तुत किया गया था, जो link:{twob}[Olivier Bilodeau] और link:{twhg}[Hugo Genesse] द्वारा दी गई थी।
== लाइसेंस
कोड GPLv3+ के तहत लाइसेंस प्राप्त है, विवरण के लिए LICENSE देखें। दस्तावेज़ीकरण और प्रस्तुति सामग्री Creative Commons Attribution-ShareAlike 4.0 के तहत लाइसेंस प्राप्त है, विवरण के लिए docs/LICENSE देखें।
== क्रेडिट
जब मेरे मन में एक बेहतर मैलवेयर विश्लेषक कार्यप्रवाह का विचार आया, जो मैं Linux सर्वरों पर विकास के लिए उपयोग कर रहा था (Vagrant) के आधार पर, तो मैंने तुरंत Google किया कि क्या कोई पहले से ही इस संबंध में कुछ कर रहा है।
मुझे GitHub पर Mark Andrew Dwyer द्वारा https://github.com/m-dwyer/packer-malware[packer-malware] रेपो मिला। Malboxes को उनके काम की बदौलत बूटस्ट्रैप किया गया था, जिसने मुझे विशेष रूप से Autounattend.xml फ़ाइलों के क्षेत्रों में मदद की।