112 lines
6.9 KiB
Bash
Executable file
112 lines
6.9 KiB
Bash
Executable file
#!/bin/bash
|
||
|
||
cat << EOF
|
||
|
||
██████╗░░█████╗░░█████╗░██████╗░██╗░░░░░███████╗
|
||
██╔══██╗██╔══██╗██╔══██╗██╔══██╗██║░░░░░██╔════╝
|
||
██████╔╝██║░░██║██║░░██║██║░░██║██║░░░░░█████╗░░
|
||
██╔═══╝░██║░░██║██║░░██║██║░░██║██║░░░░░██╔══╝░░
|
||
██║░░░░░╚█████╔╝╚█████╔╝██████╔╝███████╗███████╗
|
||
╚═╝░░░░░░╚════╝░░╚════╝░╚═════╝░╚══════╝╚══════╝
|
||
EOF
|
||
|
||
while true; do
|
||
# Устанавливаем список необходимого софта и список для записи того чего у нас ещё нет
|
||
soft_=("nmap" "dirsearch" "gobuster" "wpscan" "ffuf" "wfuzz")
|
||
need_soft_=()
|
||
your_terminal="gnome-terminal"
|
||
path_to_scripts="/home/$USER/Apps"
|
||
|
||
# Проверяем наличие установленных программ по списку и добавлением необходимого в пустой список.
|
||
# Если программа установлена, но возле неё отображается галочка, если нет - крестик.
|
||
for program in "${soft_[@]}"
|
||
do
|
||
if [ -x "$(command -v $program)" ]; then
|
||
echo -e "$program \033[32m✔\033[0m"
|
||
else
|
||
echo -e "$program \033[31m✘\033[0m"
|
||
need_soft_+="$program"$'\n'
|
||
fi
|
||
done
|
||
|
||
# Добавляем в переменную место, где хранятся словари
|
||
wordlists_="/usr/share/wordlists/"
|
||
# Проверяем наличие словарей
|
||
if [ "ls -A $wordlists_" ]; then
|
||
echo "============================="
|
||
echo "Словари найдены"
|
||
else
|
||
echo "Словари не найдены. Проверьте где они у Вас находятся и либо перенесите их в папку $wordlists_ , либо измените путь до них в 33 строке кода."
|
||
fi
|
||
echo "============================="
|
||
# Если весь необходимый софт установлен, то запускается основной цикл
|
||
if [[ ${#need_soft_[@]} == 0 ]]; then
|
||
while :
|
||
do
|
||
# Появляется запрос необходимого действия
|
||
echo "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
||
echo "Сканироваине хостов"
|
||
echo "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
||
echo "Вы хотите просканировать сеть или хост? Нажмите n"
|
||
echo "Вы хотите просканировать директории на хосте? Нажмите d"
|
||
echo "Вы хотите просканировать директории более глубо? Нажмите sd"
|
||
echo "Вы хотите просканировать поддомены на хосте? Нажмите s"
|
||
echo "Вы хотите просканировать сайт с WordPress? Нажмите wp"
|
||
echo "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
||
echo "XXE"
|
||
echo "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
||
echo "Вы хотите проверить сайт на уязвимость к XXE? Нажмите xxe"
|
||
echo "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
||
echo "Подбор паролей"
|
||
echo "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
||
echo "Если Вы хотите попытаться подобрать пароль, то наберите 'pass'"
|
||
echo "=========================================================="
|
||
echo "Если Вы хотите выйти, то нажмите Ctrl + C"
|
||
read command
|
||
# Согласно выбраной букве запускается необходимая программа
|
||
if [ $command == "d" ]; then
|
||
read -p "Введите IP: " ip_
|
||
dirsearch -u $ip_
|
||
elif [ $command == "s" ]; then
|
||
read -p "Введите URL: " url_
|
||
gobuster dns -w $wordlists_/seclists/Discovery/DNS/bitquark-subdomains-top100000.txt -d $url_ -t 100
|
||
elif [ $command == "xxe" ]; then
|
||
cat $path_to_scripts/Poodle/Modules/xxe.md
|
||
elif [ $command == "n" ]; then
|
||
read -p "Введите IP: " ip_
|
||
read -p "Введите до какого порта сканировать (масксимум 65535, стандартно 1000): " ports_
|
||
nmap -sC -sV -p -$ports_ --min-rate 5000 $ip_
|
||
read -p "Успешно? Если да, то нажмите y, если нет и проблема в блокировке ping, то нажмите pg для повторного сканирования с отключенным пингом: " result_
|
||
if [ $result_ == "y" ]; then
|
||
continue
|
||
elif [ $result_ == "pg" ]; then
|
||
nmap -sC -sV -Pn -p -$ports_ --min-rate 5000 $ip_
|
||
fi
|
||
elif [ $command == "sd" ]; then
|
||
read -p "Введите IP/{direct}: " ip_
|
||
read -p "Какой словарь хотите использовать (small/medium)? " dict_
|
||
gobuster dir -w $wordlists_ dirbuster/directory-list-2.3-$dict_.txt -u $ip_ -t 100
|
||
elif [ $command == "wp" ]; then
|
||
read -p "Введите IP/{direct}: " ip_
|
||
wpscan --url $ip_ -e u
|
||
wpscan --url $ip_ -e ap
|
||
elif [ $command == "pass" ]; then
|
||
$path_to_scripts/Poodle/Modules/passcracker.sh
|
||
else
|
||
echo "Введено что-то не то. Попробуй ещё раз."
|
||
echo " "
|
||
continue
|
||
fi
|
||
done
|
||
# Если какого-то софта не хватает, то появляется список того, что нужно установить
|
||
else
|
||
echo "Необходимо установить следующий софт:"
|
||
for i in "${need_soft_[@]}"
|
||
do
|
||
echo "$i"
|
||
done
|
||
echo "Нажите любую клавишу для выхода"
|
||
read -n 1
|
||
break
|
||
fi
|
||
done
|