CTF Прохождение TryHackME | Bounty Hacker

vov4ick

Green Team
11.12.2022
54
125
BIT
1 007
Screenshot_1.png


Привет всем, решил написать небольшой райтап о прохождении машины Bounty Hacker на tryhackme. Уровень easy, так скажем для начинающих то, что доктор прописал.

Задачи:
Найти открытые порты
Найти имя юзера
Подобрать пароль к ssh
Получить user.txt
Получить root.txt


Разведка.

Просканируем нашу цель.
Screenshot_2.png


На борту у нас 21/ftp , 22/ssh , 80/appache
Попробуем зайти на ftp:
Я пропустил ввод пароля и получил ошибку.

Screenshot_3.png

Сообщение "530 This FTP server is anonymous only" означает следующее:

FTP-сервер настроен таким образом, что он допускает только анонимные подключения. Это значит, что для доступа
к ресурсам сервера не требуется вводить уникальное имя пользователя и пароль. Вместо этого, пользователи могут
использовать общедоступный логин, обычно "anonymous", и любой пароль (или даже оставить поле пароля пустым).

Пробуем и вход выполнен успешно.
Screenshot_4.png


Проверяем какие файлы нам доступны и скачиваем их.
Screenshot_6.png


При открытии мы видим следующее:
Список возможных паролей и сообщение оставленное пользователем lin.
Screenshot_7.png


Пробуем подобрать пароль к ssh с помощью hydra и листом который хранился на ftp сервере:
Screenshot_8.png

Успех.
Подключаемся как user нашему ssh и читаем user.txt:
Screenshot_10.png

Теперь нам предстоит повысить свои привилегии до root.

Privilage Escalation.
Используем команду sudo -l
Команда sudo -l в Unix-подобных операционных системах используется для отображения прав пользователя
на выполнение команд с привилегиями суперпользователя (root).

Screenshot_11.png


Вывод команды означает, что пользователь lin может запускать команду /bin/tar с правами суперпользователя.
Команда tar обычно используется для работы с архивами (создание, извлечение и т.д.).

Попробуем поискать на Gitfobins tar возможность повышения:

Screenshot_12.png


Нам это подходит:

Screenshot_13.png


Попробуем разобраться что это:

- tar -cf /dev/null /dev/null: эта часть команды создает архив (флаг -c) и передает его на выход в /dev/null, т.е. фактически
никуда не сохраняет. Так как не происходит фактической работы с файлами, она не создает никаких файлов.
--checkpoint=1: эта опция указывает tar выводить информацию о прогрессе после каждой одной записи (например, при небольшом объеме данных).
--checkpoint-action=exec=/bin/sh: эта опция указывает tar выполнять команду /bin/sh (интерпретатор командной строки shell)
каждый раз, когда происходит "контрольная точка". Таким образом, каждый раз, когда tar достигает контрольной точки, будет запущен новый экземпляр оболочки.

Таким образом, всей этой последовательностью команд мы использовали tar для запуска оболочки sh
с правами суперпользователя,что дало нам возможность выполнять любые команды как root.

Спасибо, что уделили время на прочтение данного райтапа, так же кому понравилось и кто хочет, чтобы такие прохождения с разбором появлялись здесь чаще
ставьте лайки.
 

Вложения

  • Screenshot_2.png
    Screenshot_2.png
    28,5 КБ · Просмотры: 19
  • Screenshot_5.png
    Screenshot_5.png
    12,4 КБ · Просмотры: 21
  • Окно переполнения области задач._240812164836.png
    Окно переполнения области задач._240812164836.png
    25,8 КБ · Просмотры: 19
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!