# Цель работы
Научиться работать с sshprank.
# Ход работы
## 1. Установка
Необходимо установить пакет SSH, так как по умолчанию в данном дистрибутиве данного его нет.

Далее необходимо установить pip3 для версии языка Python 3.

Склонируем репозиторий из GitHub с sshprank.

Для того чтобы все правильно работало необходимо установить список требований из файла requirement.txt, в котором содержатся список пакетов pip с их версиями.


## 2. Запуск SSHPRANK
Приступим к работе с sshprank.
Выполним команду echo -e 192.168.68.{0…255}“\n” | sed ‘s/ //’ > hosts.txt, она позвояет составить список хостов.
Команда head -n 15 hosts.txt позволяет вывести первые 15 строк файла.

Нужно создать словари для sshpark. С помощью команды mv user.txt /tmp/sshprank переносим файл из /lists. Создаем файл pass1.txt с объедененными файлами из утилит pwdlogy и crunch.

Далее запустим нашу программу следующей командой: ./sshprank.py -b hosts.txt.

И узнаем что на 192.168.211.129 есть работающий SSH сервер.
Теперь запутим sshprank с помощью команды ./sshprank.py -h 192.168.68.110. По умолчанию программа не выводит никакой информации, даже не показывает взломанные хосты, логины и пароли. Чтобы эта информация выводилась на экран, используем опцию -v.

Затем запустим sshprank в отношении одного хоста для подбора логина и пароля, где используются файлы pass.txt и user.txt для брутфорса.
Используем команду ./sshprank.py -h 192.168.211.129 -u user.txt -p pass1.txt -v.

Находим подходящий логин и пароль.

Верные логины и пароли сохраняются в файл owned.txt.

## Masscan
MASSCAN — это массовый сканер IP портов. Это самый быстрый сканер портов Интернета. Отправляя 10 миллионов пакетов в секунду, он может сканировать весь интернет за 6 минут. Этот инструмент полезен для обзора сетей большого масштаба — таких как Интернет или внутренние сети. Хотя скорость по умолчанию ограничена 100 пакетами в секунду, программа может разгоняться до 25 миллионов пакетов в секунду, при такой скорости весь (по одному порту на IP) Интернет будет просканирован за 3 минуты.
Он создаёт результат схожий с nmap, самым знаменитым сканером портов. Внутри он работает подобно scanrand, unicornscan и ZMap, используя асинхронную передачу. Главным отличием является то, что он быстрее этих сканеров. Дополнительно, он более гибкий, позволяет произвольные диапазоны адресов и портов.
Установим MASSCAN.

Просканируем порты 22, 80, 2222, 8080 и запишем результаты в файл ssh_banner.txt.
![]
Программа поддерживает некоторые опции совместимые с nmap.
Введем команду, masscan --nmap чтобы увидеть их.

Несколько примеров выполняемых команд:
1. показывать только открытые порты
sudo masscan --open --ports 0-65535 192.168.0.228
2. сканирование 80 портов всех устройств домашней сети
sudo masscan -p80 192.168.0.0/24 --rate=5000
3. демонстрировать все отправленные и полученные пакеты
sudo masscan --packet-trace --ports 0-65535 192.168.0.228
4. использование определенного сетевого интерфейса
sudo masscan -e enp0s3 --ports 0-65535 192.168.0.228
5. сканирование и поиск баннеров
sudo masscan --banners --ports 0-65535 192.168.0.228
6. сохранять результаты поиска в файл logs.txt
sudo masscan --ports 0-65535 192.168.0.0/24 --output-filename logs.txt
7. исключить адрес(а) из выборки
sudo masscan --exclude 192.168.0.228 --ports 0-65535 192.168.31.0/24 --rate=500000
8. изменить IP-адрес отправителя
sudo masscan --source-ip 192.168.0.230 --ports 0-65535 192.168.0.228
9. установить произвольные TTL на пакеты
sudo masscan --ttl 60 --ports 0-65535 192.168.0.228
## 2. Ответы на вопросы:
1. Что такое SSHPrank?
Sshprank: массовая проверка учётных данных SSH и быстрый сбор SSH баннеров. Он представляет собой быстрый сканер большого количества SSH серверов. Программа ищет компьютеры с запущенными SSH и пробует выполнить вход, используя указанные учётные данные, то есть выполняет брут-форс.
2. Какие основные функции SSHPrank?
Основными функциями SSHPrank являются: сканирование SSH, брутфорс учетных данных (логин, пароль), а также сбор баннеров.
3. Как установить SSHPrank на Linux?
На Linux SSHPrank можно установить с помощью клонирования репозитория с GitHub, а так же установить пакеты pip3 для python, и настроить списки требований для пакетов.
4. Как создать файл конфигурации для SSHPrank?
По умолчанию считывается файл из директории /etc/masscan/masscan.conf. При этом конфигурационный файл использует те же имена параметров (опций), как и в командной строке, но без “–” и со знаком “=” между именем и значением.
5. Как запустить SSHPrank в интерактивном режиме?
Опция -v позволяет выводить всю информацию, такую как информацию о попытках подключения, успешно подобранных логинах и паролях, а также о причинах неудачи.
6. Как использовать ключ -s для атаки на сервер SSH?
Ключ -s - это поиск портов через поисковую систему Shodan, указывается протокол, страницу, кол-во на странице и можно найти список, который сохраняется потом в файле.
7. Как использовать ключ -r для атаки на список IP-адресов?
-r используется для генерации случайных ipv4 -адресов, а не для сканирования заданных хостов.
8. Как использовать ключ -I для чтения списка IP-адресов из файла?
I - для чтения ip-запросов.
9. Какие параметры можно использовать в файле конфигурации SSHPrank?
Все опции (флаги) помеченные утилитой, т.е. те же, что используются в консоли.
10. Какие риски существуют при использовании SSHPrank для атаки на сервер SSH?
Использование SSHPrank для атаки на несанкционированные системы может быть незаконным.
Есть возможность обнаружения. Если отправлять большое количество пакетов, с большей долей вероятности, вас вычислят.
# Вывод
Научились работать с sshprank. Эта утилита позволяет просканировать большое количество портов или собрать баннеры SSH на больших диапазонах.