Skip to content

Instantly share code, notes, and snippets.

@chrisdlangton
Last active November 17, 2019 13:56
Show Gist options
  • Save chrisdlangton/e4f73911860298633d5e9de608e0a856 to your computer and use it in GitHub Desktop.
Save chrisdlangton/e4f73911860298633d5e9de608e0a856 to your computer and use it in GitHub Desktop.
Install amass
#!/usr/bin/env bash
# call as sudo or modify variables to suit your needs
GREEN='\033[0;32m'
ORANGE='\033[0;33m'
NC='\033[0m' # No Color
CWD=$(pwd)
CUR_USER=$(whoami)
HOME_DIR=/home/${CUR_USER}
BIN_TARGET=/usr/local/bin/amass
TMP_DIR=${CWD}/vendored
AMASS_INSTALL_DIR=${HOME_DIR}/amass
VERSION=3.3.1
FORCE_INSTALL=0
mkdir -p ${TMP_DIR} ${AMASS_INSTALL_DIR} && echo -e "$GREEN✔$NC Created directory ${AMASS_INSTALL_DIR}"
chown -R ${CUR_USER}: ${AMASS_INSTALL_DIR}
cd ${TMP_DIR}
echo -e "Downloading amass version ${VERSION} ..."
wget -q https://github.com/OWASP/Amass/releases/download/v${VERSION}/amass_v${VERSION}_linux_amd64.zip -O temp.zip && echo -e "$GREEN✔$NC Downloaded amass_v${VERSION}_linux_amd64.zip"
unzip -q temp.zip && echo -e "$GREEN✔$NC Unzipped"
if [[ ! -f ${TMP_DIR}/bin/amass ]]; then
cp amass_v${VERSION}_linux_amd64/amass ${TMP_DIR}/bin/amass
echo -e "$GREEN✔$NC OK [${TMP_DIR}/bin/amass]"
fi
if [[ ! -f ${AMASS_INSTALL_DIR}/amass ]]; then
cp amass_v${VERSION}_linux_amd64/amass ${AMASS_INSTALL_DIR}/amass
echo -e "$GREEN✔$NC OK [${AMASS_INSTALL_DIR}/amass]"
fi
if [[ ! -f ${BIN_TARGET} ]]; then
ln -s ${AMASS_INSTALL_DIR}/amass ${BIN_TARGET}
echo -e "$GREEN✔$NC Installed amass"
else
if [[ "${FORCE_INSTALL}" == "1" ]]; then
ln -s ${AMASS_INSTALL_DIR}/amass ${BIN_TARGET} 2>/dev/null
echo -e "$GREEN✔$NC Updated amass"
else
echo -e "$ORANGE!$NC amass already installed"
fi
fi
if [[ ! -d ${AMASS_INSTALL_DIR}/wordlists ]]; then
echo -e "Installing wordlists ..."
cp -r amass_v${VERSION}_linux_amd64/examples/wordlists ${AMASS_INSTALL_DIR} && echo -e "$GREEN✔$NC Installed wordlists"
else
if [[ "${FORCE_INSTALL}" == "1" ]]; then
echo -e "Updating wordlists ..."
cp -r amass_v${VERSION}_linux_amd64/examples/wordlists ${AMASS_INSTALL_DIR} && echo -e "$GREEN✔$NC Updated wordlists"
else
echo -e "$ORANGE!$NC wordlists already installed"
fi
fi
rm temp.zip
rm -rf amass_v${VERSION}_linux_amd64 && echo -e "$GREEN✔$NC Cleaned up"
cd ${CWD}
case $(grep -Fq AMASS_INSTALL_DIR "${HOME_DIR}/.zshrc" 2>/dev/null; echo $?) in
0)
;;
1)
echo -e "export AMASS_INSTALL_DIR=${AMASS_INSTALL_DIR}" >> $HOME_DIR/.zshrc
echo -e "$GREEN✔$NC Loaded env var AMASS_INSTALL_DIR into .zshrc"
;;
*)
;;
esac
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment