#38 Kali Linux для начинающих. Взламываем FTP.
Продолжаем рассматривать тематику взлома, и в данном уроке мы попытаемся взломать FTP. Давайте воспользуемся первой уязвимостью, и взломаем нашу первую цель.
Начнем с первого открытого порта, и это 21 порт. Порт tcp, и его использует ftp-сервер, а именно vsFTPd:
![21 порт vsFTPD](https://timcore.ru/wp-content/uploads/2021/04/screenshot_1-9.png)
Будучи пентестером, Вам необходимо исследовать все открытые порты и сервисы для успешного взлома.
Для начала нам необходимо подключиться к этому порту, и посмотреть, какую информацию я хочу получить.
Перейдем в инструмент Metasploit, и, дополнительно открою еще одну вкладку терминала. Так как это ftp — сервис, то я попробую подключиться к нему с помощью ftp-клиента.
Для этого в терминале я указываю «ftp <ip-адрес>»:
![ftp <ip-адрес>](https://timcore.ru/wp-content/uploads/2021/04/screenshot_2-9.png)
У меня уже предустановлен ftp-сервис, но у Вас его может и не быть, если это более ранняя версия Kali Linux. Но все решается в одну команду. В терминале нужно набрать «apt-get install ftp».
У меня название и версия ftp – это «vsFTPd 2.3.4». После установки и ввода команды нам нужно авторизироваться, указав имя пользователя, и в некоторых случаях ftp-сервис принимает имя пользователя «anonymous», т.е ftp настроен таким образом, чтобы принимать имя пользователя «anonymous» с любым паролем. Давайте проверим, сработает ли такой вариант:
![ftp anonymous](https://timcore.ru/wp-content/uploads/2021/04/screenshot_3-9.png)
Отлично. Все сработало корректно, и теперь я авторизирован.
Теперь моя задача состоит в том, чтобы найти какую-либо полезную информацию, файлы или директории на этом ftp-сервере, которые я смогу использовать для получения преимущества
Если ранее Вы не использовали ftp, и какие команды можно использовать, то введите знак вопроса «?», чтобы просмотреть доступные команды:
![доступные команды ftp](https://timcore.ru/wp-content/uploads/2021/04/screenshot_4-9.png)
Обратите внимание, что мы уже видели некоторые из этих команд. К примеру команда «ls» отображает содержимое директорий:
![ls](https://timcore.ru/wp-content/uploads/2021/04/screenshot_5-9.png)
Похоже, что здесь ничего нет. Мне немного не повезло, и я ничего полезного для себя не нашел. Чтобы завершить соединение с ftp-сервером нужно выполнить команду «bye» или «exit»:
![команда bye для выхода из ftp](https://timcore.ru/wp-content/uploads/2021/04/screenshot_6-8.png)
Теперь перейдем в Zenmap. Я получил большое количество информации относительно ftp-сервера, то я могу выявить его недостатки. Нам нужно скопировать версию сервиса, для того, чтобы узнать его уязвимости:
![версия ftp](https://timcore.ru/wp-content/uploads/2021/04/screenshot_7-6.png)
Переходим в браузер и пытаемся найти эксплойт для взлома ftp-сервера:
![ищем эксплойт для ftp](https://timcore.ru/wp-content/uploads/2021/04/screenshot_8-6-1024x544.png)
Похоже нам повезло, и мы сможем найти эксплойт для проникновения в систему. Более актуальная информация по текущему эксплойту будет находиться на официальном сайте разработчиков Metasploit. Это сайт Rapid7:
![сайт rapid7 с эксплойтом ftp](https://timcore.ru/wp-content/uploads/2021/04/screenshot_9-5-1024x586.png)
Нам очень повезло, и мы нашли уязвимость, которая позволяет попасть в систему, после исследования самого первого сервиса. Проскроллив страницу вниз, мы находим пример с данным эксплойтом:
![страница с эксплойтом](https://timcore.ru/wp-content/uploads/2021/04/screenshot_10-4-1024x613.png)
Переходим в metasploit и ищем наш эксплойт:
![ищем эксплойт в metasploit](https://timcore.ru/wp-content/uploads/2021/04/screenshot_11-4.png)
Обратите внимание, что команда «info» отображает больше информации о модуле:
![команда info](https://timcore.ru/wp-content/uploads/2021/04/screenshot_12-3.png)
С помощью команды «info», мы точно определяем, нужный ли данный модуль мне или нет. После сверки информации, я вижу корректное отображение параметров.
Далее нужно ввести команду «show options», чтобы откорректировать параметры для запуска эксплойта:
![show options](https://timcore.ru/wp-content/uploads/2021/04/screenshot_13-3.png)
Теперь мне нужно указать ip-адрес нашей цели. У меня это – «192.168.119.130». Команда будет выглядеть как «set rhosts 192.168.119.130»:
![set rhosts 192.168.119.130](https://timcore.ru/wp-content/uploads/2021/04/screenshot_14-3.png)
Также в metasploit можно проверить вероятность работы некоторых эксплойтов с помощью команды «check», и нам не обязательно запускать эксплойт, рискуя сломать сервис или рискуя тем, что эксплойт не сработает.
Давайте проверим, есть ли она здесь:
![команда check](https://timcore.ru/wp-content/uploads/2021/04/screenshot_15-3.png)
Видим, что данный модуль не поддерживается. Мне ничего не остается, кроме того, что запустить эксплойт. Запустить его можно двумя способами: либо написать «run», или «exploit»:
![запуск эксплойта](https://timcore.ru/wp-content/uploads/2021/04/screenshot_16-1.png)
Эксплойт успешно работает, и мы установили одну сессию с машины жертвы. У нас есть сейчас шелл жертвы. Выполним команду «id», и мы авторизованы как рут-пользователь:
![команда id](https://timcore.ru/wp-content/uploads/2021/04/screenshot_17.png)
Можно еще раз проверить наши права, с помощью команды «whoami»:
![команда whoami](https://timcore.ru/wp-content/uploads/2021/04/screenshot_18.png)
Мы, опять же, находимся под рут-пользователем.
Можно также проверить, в какой директории мы находимся, с помощью команды «pwd»:
![pwd](https://timcore.ru/wp-content/uploads/2021/04/screenshot_19.png)
Для того, чтобы завершить работу, нужно выполнить команду «exit»:
![exit](https://timcore.ru/wp-content/uploads/2021/04/screenshot_20.png)
Нам повезло, и мы взломали самый первый сервис.
Давайте рассмотрим ситуацию, приближенную к реальности, и у нас нет рут-прав. Крайне редко мы можем получить рут-права при первой же атаке на ip-адрес. Это реалии, и это практически невозможно. Чтобы добавить реализма, давайте представим, что у данного сервиса нет уязвимостей. Нам нужно исследовать другие сервисы, и постараться их взломать.
#1 Kali Linux для начинающих. Урок 1 — Основы сетей.
#2 Kali Linux для начинающих. Урок 2 — Горячие клавиши. Часть 1
#3 Kali Linux для начинающих. Урок 2 — Горячие клавиши. Часть 2
#4 Kali Linux для начинающих. Терминал Kali Linux. Часть 1
#5 Kali Linux для начинающих. Терминал Kali Linux. Часть 2
#6 Kali Linux для начинающих. Урок 4 — Root Kali Linux. Часть 1
#7 Kali Linux для начинающих. Root Kali Linux — Часть 2
#8 Kali Linux для начинающих. Основные команды. Часть 1.
#9 Kali Linux для начинающих. Основные команды. Перемещение по директориям. Часть 2.
#10 Kali Linux для начинающих. Основные команды. Создание директорий. Часть 3
#11 Kali Linux для начинающих. Основные команды. Часть 4 — Просмотр содержимого директорий.
#12 Kali Linux для начинающих. Основные команды. Часть 5 — Просмотр содержимого файлов.
#13 Kali Linux для начинающих. Основные команды. Часть 6 — Копируем файлы и директории.
#14 Kali Linux для начинающих. Основные команды. Часть 7 — Перемещаем файлы и директории.
#15 Kali Linux для начинающих. Основные команды. Часть 8 — Удаляем файлы и директории.
#16 Kali Linux для начинающих. Управление пакетами.
#17 Kali Linux для начинающих. Откуда Kali скачивает софт.
#18 Kali Linux для начинающих. Изменения в Kali 2019 относительно APT.
#19 Kali Linux для начинающих. Архивация и сжатие. Часть 1.
#20 Kali Linux для начинающих. Архивация и сжатие. Часть 2.
#21 Kali Linux для начинающих. Архивация и сжатие. Часть 3.
#22 Kali Linux для начинающих. Специальные символы. Часть 1.
#23 Kali Linux для начинающих. Специальные символы. Часть 2
#24 Kali Linux для начинающих. Основы сетей.
#25 Kali Linux для начинающих. Администрирование. Редактирование файлов с помощью Nano.
#26 Kali Linux для начинающих. Превращаем Kali Linux в веб-сервер.
#27 Kali Linux для начинающих. Изменения в файлах конфигурации Kali Linux.
#28 Kali Linux для начинающих. Превращаем Kali Linux в SSH-сервер.
#29 Kali Linux для начинающих. Управление пользователями и группами.
#30 Kali Linux для начинающих. Работаем с правами пользователей.
#31 Kali Linux для начинающих. Разбираемся с процессами.
#32 Kali Linux для начинающих. Управляем процессами.
#33 Kali Linux для начинающих. Перенаправление и контроль вывода.
#34 Kali Linux для начинающих. Объединяем несколько команд в цепочку.
#35 Kali Linux для начинающих. Настраиваем цель.
#36 Kali Linux для начинающих. Сканируем порты с помощью Kali Linux.
#37 Kali Linux для начинающих. Сканируем порты с помощью графического интерфейса.