From acdbece4da314c25f22831c84286493aa2c6cbbc Mon Sep 17 00:00:00 2001 From: d3vyce <44915747+d3vyce@users.noreply.github.com> Date: Sat, 4 Feb 2023 22:49:35 +0100 Subject: [PATCH] 1.0 (#1) * add .gitignore * add project * add tools * add support for alias update * clean code * Update pentools.sh Add check if the software is already installed * Update pentools.sh Remove output from chrome install * Update pentools.sh * Change running command * Update pentools.sh * Fix sublime-text install & Fix Alias * Update README.md --------- Co-authored-by: d3vyce --- .gitignore | 3 + README.md | 47 ++++++++++- images/terminal.png | Bin 0 -> 30097 bytes pentools.sh | 198 ++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 247 insertions(+), 1 deletion(-) create mode 100644 .gitignore create mode 100644 images/terminal.png create mode 100755 pentools.sh diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..6f09b1d --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +binary/ +tools/ +wordlist/ \ No newline at end of file diff --git a/README.md b/README.md index aeb391f..774bda9 100644 --- a/README.md +++ b/README.md @@ -1 +1,46 @@ -# PenTools \ No newline at end of file +# PenTools + +![terminal](https://github.com/d3vyce/PenTools/images/terminal.png) + +# Quick Start + +Before running the script make sure you have `go` and `pip` installed. +```bash +sudo apt install gccgo-go +sudo apt install python-pip +``` +To run the script use the following command: +```Bash +bash <(curl -s https://github.com/d3vyce/PenTools/releases/latest/download/pentools.sh) +``` +This script has been tested on debian distribution, but it should also work with Ubuntu. +I'm working on a compatibility with CentOS and other distribution. + +# Content +## Wordlist +- rockyou.txt +- common.txt +- subdomains.txt + +## Software +- Sublime Text +- Chrome (+Extension: Dark Reader, FoxyProxy, WappAnalyser, Hack-Tools) +- FFUF +- PWNcat + +## Tools +- linPeas +- winPeas +- LinEnum +- linux-exploit-suggester +- mimikatz + +## Binary +- nmap + +## Alias +- Python server file in pentools folder (command: `filesrv`) +- Open Sublime-Text (command : `sublime`) -> To open Sublime-Text in current folder : `sublime .` + +# Contribute to the project +To participate in the project, you can propose new implementations of tools/binary/software/... via issues or merge request. diff --git a/images/terminal.png b/images/terminal.png new file mode 100644 index 0000000000000000000000000000000000000000..0aa13c2913767f0637a77ae01e40b7bc87160a7d GIT binary patch literal 30097 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 DBE/dev/null 2>&1 + + printf ${GREEN}"[+] rockyou.txt\n" + curl https://github.com/brannondorsey/naive-hashcat/releases/download/data/rockyou.txt > $TARGET/wordlist/rockyou.txt 2>&1 + + printf ${GREEN}"[+] common.txt\n" + curl http://ffuf.me/wordlist/common.txt > $TARGET/wordlist/common.txt 2>&1 + + printf ${GREEN}"[+] subdomains.txt\n" + curl http://ffuf.me/wordlist/subdomains.txt > $TARGET/wordlist/subdomains.txt 2>&1 +} + +software() { + printf "\n${YELLOW}[*]${BLUE} Software ---------------------------------\n" + + printf ${GREEN}"[+] Sublime-text\n" + wget -qO - https://download.sublimetext.com/sublimehq-pub.gpg | sudo apt-key add - >/dev/null 2>&1 + echo "deb https://download.sublimetext.com/ apt/stable/" | sudo tee /etc/apt/sources.list.d/sublime-text.list >/dev/null 2>&1 + sudo apt update + sudo apt -y install sublime-text >/dev/null 2>&1 + + printf ${GREEN}"[+] Chrome\n" + wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb >/dev/null 2>&1 + sudo apt -y install ./google-chrome-stable_current_amd64.deb >/dev/null 2>&1 + rm google-chrome-stable_current_amd64.deb + + sudo mkdir /opt/google/chrome/extensions >/dev/null 2>&1 + printf ${GREEN}"[+] Chrome Extension: FoxyProxy\n" + sudo touch /opt/google/chrome/extensions/gcknhkkoolaabfmlnjonogaaifnjlfnp.json + sudo chmod 646 /opt/google/chrome/extensions/gcknhkkoolaabfmlnjonogaaifnjlfnp.json + sudo echo '{ + "external_update_url": "https://clients2.google.com/service/update2/crx" +}' > /opt/google/chrome/extensions/gcknhkkoolaabfmlnjonogaaifnjlfnp.json + + printf ${GREEN}"[+] Chrome Extension: Dark Reader\n" + sudo touch /opt/google/chrome/extensions/eimadpbcbfnmbkopoojfekhnkhdbieeh.json + sudo chmod 646 /opt/google/chrome/extensions/eimadpbcbfnmbkopoojfekhnkhdbieeh.json + sudo echo '{ + "external_update_url": "https://clients2.google.com/service/update2/crx" +}' > /opt/google/chrome/extensions/eimadpbcbfnmbkopoojfekhnkhdbieeh.json + + printf ${GREEN}"[+] Chrome Extension: WappAnalyser\n" + sudo touch /opt/google/chrome/extensions/gppongmhjkpfnbhagpmjfkannfbllamg.json + sudo chmod 646 /opt/google/chrome/extensions/gppongmhjkpfnbhagpmjfkannfbllamg.json + sudo echo '{ + "external_update_url": "https://clients2.google.com/service/update2/crx" +}' > /opt/google/chrome/extensions/gppongmhjkpfnbhagpmjfkannfbllamg.json + + printf ${GREEN}"[+] Chrome Extension: Hack-Tools\n" + sudo touch /opt/google/chrome/extensions/cmbndhnoonmghfofefkcccljbkdpamhi.json + sudo chmod 646 /opt/google/chrome/extensions/cmbndhnoonmghfofefkcccljbkdpamhi.json + sudo echo '{ + "external_update_url": "https://clients2.google.com/service/update2/crx" +}' > /opt/google/chrome/extensions/cmbndhnoonmghfofefkcccljbkdpamhi.json + + if ! command -v go &> /dev/null + then + printf ${RED}"[x] Missing Go, skipping install of Fuff...\n" + else + if ! command -v ffuf &> /dev/null + then + printf ${GREEN}"[+] ffuf\n" + go install github.com/ffuf/ffuf@latest >/dev/null 2>&1 + else + printf ${ITALIC_LIGHT_CYAN}"[~] ffuf is already installed, skipping...\n" + fi + fi + + if ! command -v pip &> /dev/null + then + printf ${RED}"[x] Missing Pip, skipping install of PwnCat...\n" + else + if ! command -v pwncat-cs &> /dev/null + then + printf ${GREEN}"[+] pwncat-cs\n" + sudo pip install pwncat-cs >/dev/null 2>&1 + else + printf ${ITALIC_LIGHT_CYAN}"[~] pwncat-cs is already installed, skipping...\n" + fi + fi +} + +tools() { + printf "\n${YELLOW}[*]${BLUE} Tools ------------------------------------\n" + mkdir tools >/dev/null 2>&1 + + printf ${GREEN}"[+] linPeas.sh\n" + wget -q -O - https://github.com/carlospolop/PEASS-ng/releases/download/20230129/linpeas.sh > $TARGET/tools/linPeas.sh 2>&1 + chmod +x $TARGET/tools/linPeas.sh + + printf ${GREEN}"[+] winPeas.bat\n" + wget -q -O - https://github.com/carlospolop/PEASS-ng/releases/download/20230129/winPEAS.bat > $TARGET/tools/winPeas.bat 2>&1 + + printf ${GREEN}"[+] LinEnum.sh\n" + curl https://raw.githubusercontent.com/rebootuser/LinEnum/master/LinEnum.sh > $TARGET/tools/LinEnum.sh 2>&1 + chmod +x $TARGET/tools/LinEnum.sh + + printf ${GREEN}"[+] linux-exploit-suggester.sh\n" + curl https://raw.githubusercontent.com/The-Z-Labs/linux-exploit-suggester/master/linux-exploit-suggester.sh > $TARGET/tools/linux-exploit-suggester.sh 2>&1 + chmod +x $TARGET/tools/linux-exploit-suggester.sh + + printf ${GREEN}"[+] mimikatz.exe\n" + wget -q -O - https://github.com/ParrotSec/mimikatz/blob/master/Win32/mimikatz.exe > $TARGET/tools/mimikatz.exe 2>&1 +} + +binary() { + printf "\n${YELLOW}[*]${BLUE} Binary -----------------------------------\n" + mkdir binary >/dev/null 2>&1 + + printf ${GREEN}"[+] nmap\n" + wget -q -O - https://github.com/andrew-d/static-binaries/raw/master/binaries/linux/x86_64/nmap > $TARGET/binary/nmap + chmod +x $TARGET/binary/nmap +} + +aliascmd() { + printf "\n${YELLOW}[*]${BLUE} Alias ------------------------------------\n" + + sed -i '/# Alias created by PenTools/,/# https:\/\/github.com\/d3vyce\/pentools/d' ~/.bash_aliases + + echo " +# Alias created by PenTools" >> ~/.bash_aliases + + printf ${GREEN}"[+] sudo filesrv\n" + echo "alias filesrv='sudo python3 -m http.server 80 --directory ${TARGET}'" >> ~/.bash_aliases + + printf ${GREEN}"[+] sublime\n" + echo "alias sublime='/opt/sublime_text/sublime_text'" >> ~/.bash_aliases + + echo "# https://github.com/d3vyce/pentools" >> ~/.bash_aliases + source ~/.bash_aliases +} + +printf "${YELLOW} + --------------------------------------------- + ____ ______ __ + / __ \___ ____/_ __/___ ____ / /____ + / /_/ / _ \/ __ \/ / / __ \/ __ \/ / ___/ + / ____/ __/ / / / / / /_/ / /_/ / (__ ) + /_/ \___/_/ /_/_/ \____/\____/_/____/ + + --------------------------------------------- + v1.0 - ${ITALIC}https://github.com/d3vyce/pentools \n +" + +printf ${YELLOW}"[*]${BLUE} What do you want to install?\n" +printf "${ITALIC_LIGHT_CYAN} 1: All\n" +printf "${ITALIC_LIGHT_CYAN} 2: Wordlist\n" +printf "${ITALIC_LIGHT_CYAN} 3: Software\n" +printf "${ITALIC_LIGHT_CYAN} 4: Tools\n" +printf "${ITALIC_LIGHT_CYAN} 5: Binary\n" +printf "${ITALIC_LIGHT_CYAN} 6: Alias\n" + +read -p "${BLUE}Choice [${YELLOW}1${BLUE}]: ${YELLOW}" CHOICE +CHOICE=${CHOICE:-1} + +PWD=$(pwd) +read -p "${BLUE}Target [${YELLOW}$PWD${BLUE}]: ${YELLOW}" TARGET +TARGET=${TARGET:-$PWD} + +case $CHOICE in + 1) + wordlist + software + tools + binary + aliascmd + ;; + 2) + wordlist + ;; + 3) + software + ;; + 4) + tools + ;; + 5) + binary + ;; + 6) + aliascmd + ;; + *) + printf "${RED}[x] Select an option between 1 and 6" + ;; +esac