diff --git a/.gitignore b/.gitignore index 5d947ca..fc3f94a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,18 +1,219 @@ -# Build and Release Folders -bin-debug/ -bin-release/ -[Oo]bj/ -[Bb]in/ - -# Other files and folders -.settings/ - -# Executables -*.swf -*.air -*.ipa -*.apk - -# Project files, i.e. `.project`, `.actionScriptProperties` and `.flexProperties` -# should NOT be excluded as they contain compiler settings and other important -# information for Eclipse / Flash Builder. +# Ignoring sensitive files and directories. + +secret*.* +*secret*.* +SECRET*.* +*SECRET*.* +Password*.* +*Password*.* +PASSWORD*.* +*PASSWORD*.* +*pass*.* +*PASS*.* +*pwd*.* +*PWD*.* +*Pwd*.* +Token*.* +*Token*.* +TOKEN*.* +*TOKEN*.* +API*.* +*API*.* +api*.* +*api*.* +TOKEN_API*.* +*TOKEN_API*.* +Token_api*.* +*Token_api*.* +password/ +PASSWORD/ +Token/ +TOKEN/ +api/ +API/ + +# Python Template + +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +share/python-wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +*.py,cover +.hypothesis/ +.pytest_cache/ +cover/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 +db.sqlite3-journal + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +.pybuilder/ +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# IPython +profile_default/ +ipython_config.py + +# PEP 582; used by e.g. github.com/David-OConnor/pyflow +__pypackages__/ + +# Celery stuff +celerybeat-schedule +celerybeat.pid + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json + +# Pyre type checker +.pyre/ + +# pytype static type analyzer +.pytype/ + +# Ruby template + +*.gem +*.rbc +/.config +/coverage/ +/InstalledFiles +/pkg/ +/spec/reports/ +/spec/examples.txt +/test/tmp/ +/test/version_tmp/ +/tmp/ + +# Used by dotenv library to load environment variables. +# .env + +# Ignore Byebug command history file. +.byebug_history + +## Specific to RubyMotion: +.dat* +.repl_history +build/ +*.bridgesupport +build-iPhoneOS/ +build-iPhoneSimulator/ + +## Specific to RubyMotion (use of CocoaPods): +# +# We recommend against adding the Pods directory to your .gitignore. However +# you should judge for yourself, the pros and cons are mentioned at: +# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control +# +# vendor/Pods/ + +## Documentation cache and generated files: +/.yardoc/ +/_yardoc/ +/doc/ +/rdoc/ + +## Environment normalization: +/.bundle/ +/vendor/bundle +/lib/bundler/man/ + +# for a library or gem, you might want to ignore these files since the code is +# intended to run in multiple environments; otherwise, check them in: +# Gemfile.lock +# .ruby-version +# .ruby-gemset + +# unless supporting rvm < 1.11.0 or doing something fancy, ignore this: +.rvmrc + +# Vagrant template +.vagrant +compare* diff --git a/README.md b/README.md index ae5869b..e7012ee 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,30 @@ # flare-up -Automated vagrant provisioning of Windows 10 pro OS with flarevm tools installed for Digital Forensics and Malware Analysis Lab. + +
+ +
+ +## About The Project + +Automated vagrant provisioning of Windows 10 with flarevm tools installed for Digital Forensics and Malware Analysis Lab. + +## Requirements + +- [virtualbox](https://www.virtualbox.org/wiki/Downloads) OR [vmwarefusion](https://customerconnect.vmware.com/web/vmware/evalcenter?p=fusion-player-personal) +- [vagrant](https://www.vagrantup.com/docs/installation) + +## How to use? + +1. Clone this repo. + + ```bash + git clone https://github.com/brootware/flarevm-up.git && cd flarevm-up + ``` + +2. Execute vagrant up. + + ```bash + vagrant up + ``` + +3. Wait for Vagrant and Virtualbox to do its magic and Start using! diff --git a/Vagrantfile b/Vagrantfile new file mode 100644 index 0000000..5f2f88f --- /dev/null +++ b/Vagrantfile @@ -0,0 +1,51 @@ +# -*- mode: ruby -*- +# vi: set ft=ruby : + +############################################################ +# VM settings variables - Can be reviewed and customized +############################################################ + +# VAGRANTFILE_API_VERSION: to choose which API to use. Recommended to use 2. +VAGRANTFILE_API_VERSION = "2" + +# VARIABLES for virtualbox and vmware as provider +VIRTUALBOX = "virtualbox" +VMWARE = "vmware_fusion" + +# VM_PATH: the name or full url of the base VM to use +VM_PATH = "rootware/flareVm" + +# VM_UPDATE: set to true to check for base VM updates +VM_UPDATE = true + +# VM_Name: can be changed here +VM_NAME = "forensicsLab" + +# VM_CPUS: specify the number of CPU cores to allocate to the VM +# VM_CPUS = "4" +VM_CPUS = "2" + +# VM_MEMORY: specify the amount of memory to allocate to the VM +#VM_MEMORY = "8192" +VM_MEMORY = "4096" +#VM_MEMORY = "2048" + +######################################################################################## +# THE COMPONENTS BELOW SHOULD NOT BE ALTERED UNLESS YOU KNOW WHAT YOU'RE DOING +######################################################################################## + +Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| + config.vm.box = VM_PATH + config.vm.network :private_network, type: "dhcp" + config.vm.hostname = VM_NAME + config.vm.box_check_update = VM_UPDATE + config.ssh.insert_key = false + + config.vm.provider VIRTUALBOX do |vb| + vb.name = VM_NAME + vb.cpus = VM_CPUS + vb.memory = VM_MEMORY + vb.customize ["modifyvm", :id, "--vram", "256"] + vb.customize ["modifyvm", :id, "--accelerate3d", "on"] + end +end