diff --git a/README.md b/README.md index 8f8fcd9..db4e709 100644 --- a/README.md +++ b/README.md @@ -17,6 +17,12 @@ Shellcode loader with evasion capabilities written in Nim This loader makes use of the AES encryption algorithm so in order to make it work, you need to encrypt your own shellcode. To do so you may use either `aes_encrypt.py` or `aes_encrypt.nim`. Both scripts will generate a random PSK and IV and it will take care of encrypting your shellcode so that you only have to modify the variables at the very top of the file. +Before you run your code, you need to make sure that you have nim and libraries installed on your machine. you can set up you enviroment by simply first running the requirements.sh to check or install nim on your linux machine then install libraries necessary for Nimbus to run perfectly. + +``` +bash requirements.sh +``` + Encrypt your raw shellcode: ```sh diff --git a/requirements.sh b/requirements.sh new file mode 100644 index 0000000..52f666d --- /dev/null +++ b/requirements.sh @@ -0,0 +1,19 @@ +#!/bin/bash +clear +echo -e '\033[0;32m' "++++++++++ INSTALLING NIM ++++++++++" '\033[0m' +echo " " +if [ ! -f /home/$USER/.nimble/bin/nim ]; then +curl https://nim-lang.org/choosenim/init.sh -sSf | sh +sudo echo "export PATH="/home/$USER/.nimble/bin:$PATH"" >> ~/.zshrc +echo " " +echo -e '\033[0;32m' "++++ done +++++"'\033[0m' +else +echo -e '\033[0;32m' "+++++ you already have nim installed in /home/$USER/.nimble/bin/nim PATH ++++" '\033[0m' +fi + +echo " " +echo -e '\033[0;32m' "+++++++++++ downloading the program requirements ++++++++++" '\033[0m' +tools=( winim ptr_math nimcrypto times random net psutil strformat GetSyscallStub) +#echo ${tools[*]} +for tools in ${tools[*]}; do nimble install $tools ; done +