![](https://habrastorage.org/webt/ys/o1/uj/yso1ujbb2kh59msoyh6ecuxfopw.png)
Продолжаю публикацию решений, отправленных на дорешивание машин с площадки HackTheBox.
Подключение к лаборатории осуществляется через VPN. Рекомендуется не подключаться с рабочего компьютера или с хоста, где имеются важные для вас данные, так как Вы попадаете в частную сеть с людьми, которые что-то да умеют в области ИБ.
Организационная информация
Чтобы вы могли узнавать о новых статьях, программном обеспечении и другой информации, я создал канал в Telegram и группу для обсуждения любых вопросов в области ИиКБ. Также ваши личные просьбы, вопросы, предложения и рекомендации рассмотрю лично и отвечу всем.
Вся информация представлена исключительно в образовательных целях. Автор этого документа не несёт никакой ответственности за любой ущерб, причиненный кому-либо в результате использования знаний и методов, полученных в результате изучения данного документа.
Вся информация представлена исключительно в образовательных целях. Автор этого документа не несёт никакой ответственности за любой ущерб, причиненный кому-либо в результате использования знаний и методов, полученных в результате изучения данного документа.
Recon
Данная машина имеет IP адрес 10.10.10.191, который я добавляю в /etc/hosts.
10.10.10.191 blunder.htb
Первым делом сканируем открытые порты. Я это делаю с помощью следующего скрипта, принимающего один аргумент — адрес сканируемого хоста:
#!/bin/bash
ports=$(nmap -p- --min-rate=500 $1 | grep ^[0-9] | cut -d '/' -f 1 | tr '\n' ',' | sed s/,$//)
nmap -p$ports -A $1
![](https://habrastorage.org/webt/3m/dk/d6/3mdkd68iqjlxzrpu27a4p4lp3n8.png)
Так как на хосте работает только веб сервер, при этом стартовая страница нам ничего не дает, давайте переберем директории. Для этого используем быстрый gobuster. В параметрах укаываем, что мы хотим сканировать дирректории (dir), указываем сайт (-u), список слов(-w), расширения, которые нас интересуют (-x), количество потоков (-t).
gobuster dir -t 128 -u blunder.htb -w /usr/share/seclists/Discovery/Web-Content/raft-large-directories-lowercase.txt -x php,html,txt
![](https://habrastorage.org/webt/wn/w0/vq/wnw0vqdogylod9viodvulnapy_s.png)
Так мы находим несколько интересных файлов. Первый из них — todo.txt.
![](https://habrastorage.org/webt/yq/5c/kg/yq5ckgekosnysk2prcnbrqheplg.png)
Здесь мы сразу отмечаем имя пользователя. Так же была найдена и панель входа администратора.
![](https://habrastorage.org/webt/er/wc/ud/erwcudwx_f7pz_ze4q7sz4c0hty.png)
Мы видим CMS Bludit, давайте попробуем найти для нее эксплоиты.
![](https://habrastorage.org/webt/ta/ep/ll/taepll9wvvghlvl6t17zn3d3hhu.png)
И есть всего один эксплоит, включенный даже в metasploit, но для него требуются учетные данные.
Entry Point
Немного почитав про данную CMS, я нашел скрипт для перебора паролей. В качестве логина используем найденное имя из файла todo.txt. Но списки пароли из стандартных списков не подходили. И мне посоветовали использовать косвенную информацию. Для этого собираем словарь с главной страницы сайта.
cewl -d 3 -m 5 -w pass_list.txt http://blunder.htb
![](https://habrastorage.org/webt/g7/0l/dw/g70ldwn-omvhccjq5v_6rigz1fo.png)
Немного изменив скрипт перебора, выполним брут и найдем пароль!
![](https://habrastorage.org/webt/tz/wx/kt/tzwxktkfgn5cidnijsjwm76ob4o.png)
![](https://habrastorage.org/webt/ov/ld/4j/ovld4jsvaplzjlcja9ott_iqnjs.png)
И теперь мы можем использовать эксплоит из metasploit.
![](https://habrastorage.org/webt/fw/ol/4c/fwol4cjsezr70ylwa_qedeztqbq.png)
![](https://habrastorage.org/webt/nd/wt/ab/ndwtabtu9zoyqlgemsjusxevneg.png)
![](https://habrastorage.org/webt/yo/sp/2m/yosp2m1jl9kanyogldqlt8_j_w8.png)
USER
Давайте осмотримся в директории сайта, чтобы найти еще учетные данные.
![](https://habrastorage.org/webt/za/ow/t-/zaowt-l2eixshgcqekb-3vbancc.png)
Так есть файл users.php.
![](https://habrastorage.org/webt/ye/7s/nf/ye7snflrfw8maxdw-akbj1gtxrk.png)
И есть хеши, предположительно — SHA1.
![](https://habrastorage.org/webt/ja/ef/nu/jaefnu4aywozjl2ll9lsayert-y.png)
Но крякнуть их не вышло и в базе мы их не находим. Поэтому продолжим поиск на хосте и видим еще одну версию данной CMS.
![](https://habrastorage.org/webt/uv/qr/-y/uvqr-ychtxca-qdoeecatwr_4yo.png)
А вот хеш из этой версии уже находим в базе.
![](https://habrastorage.org/webt/tg/6z/bw/tg6zbw8kavjra-k7nijycc3mxda.png)
![](https://habrastorage.org/webt/ip/li/or/ipliorouci9qbw6_0xco6mnijg8.png)
Посмотрим, какие имеются пользователи.
![](https://habrastorage.org/webt/dq/n4/7n/dqn47nazvcbrgrmn19rgyegoahu.png)
Давайте запустим нормальный TTY шелл.
python3 -c 'import pty; pty.spawn("/bin/bash")'
И данный пароль подходит к первому же пользователю.
![](https://habrastorage.org/webt/pu/sl/cy/puslcyloqie2k8ebln2lzdskn5w.png)
ROOT
Давайте посмотрим настройки sudo.
![](https://habrastorage.org/webt/n7/y8/ra/n7y8ra3gncnb5ruajdqedfkx7sg.png)
Видим интересную строку (ALL, !root). И загуглив, находим способ LPE.
![](https://habrastorage.org/webt/ui/re/ld/uireldgd1-axa8qvgkikpbpxpjo.png)
![](https://habrastorage.org/webt/qn/kc/rw/qnkcrw8eub5iclem7eopj4lilvk.png)
Давайте получим root как скано в инструкции.
sudo -u#-1 /bin/bash
![](https://habrastorage.org/webt/yk/o1/8n/yko18numcil97xojx4o3c10msq0.png)
Вы можете присоединиться к нам в Telegram. Там можно будет найти интересные материалы, слитые курсы, а также ПО. Давайте соберем сообщество, в котором будут люди, разбирающиеся во многих сферах ИТ, тогда мы всегда сможем помочь друг другу по любым вопросам ИТ и ИБ.