Vander
17.02.2017, 22:44
Привет, форум! В этой публикации мы займемся добычей флагов из уязвимой машины Billy Madison VM, в рамках соревнований CTF.
https://forum.antichat.xyz/attachments/28950570/img_42ac24308a.png
Для тех, кто не в курсе, что такое CTF, ссылка на мою первую статью посвященную данной тематике:
> https://codeby.net/threads/ctf-vzlom-mr-robot-vm.57930/ (https://forum.antichat.xyz/threads/1617930/)
Итак, Billy Madison VM, легенда этой VM основана на американской комедии 1995 года режиссёра Тамры Дэвис. А основной целью является получение root-прав на Билли VM.
Итак, начнем с того, что скачаем образ машины с:
> https://www.vulnhub.com/entry/billy-madison-11,161/
https://forum.antichat.xyz/attachments/28950570/img_e6cc982176.png
Теперь, необходимо с помощью Oracle VM VirtualBox или VMware Workstation, создать и запустить скачанную прежде VM.
https://forum.antichat.xyz/attachments/28950570/img_8d9295f7fc.png
Затем, запускаем ОС с которой будет производиться тестирование на проникновение. В моем случае это Kali Linux 2.0.
Следующий шаг, это определение целевого хоста (Billy VM) в нашей сети.
Воспользуемся netdiscover:
> netdiscover
https://forum.antichat.xyz/attachments/28950570/img_f53da81816.png
В моем случае целевой хост имеет адрес – 192.168.0.29.
Следующий шаг, это использование сканера nmap, для просмотра информации об открытых портах:
> nmap –p- -A 192.168.0.29
https://forum.antichat.xyz/attachments/28950570/img_2984e8dbe4.png
Итог работы сканера, покажет нам список открытых портов:
· 22
· 23
· 69 – http
· 80 – http
На порты 69 и 80 в первую очередь обратим свое внимание.
Попробуем обратиться к целевому хосту по адресу 192.168.0.29 на 80-ом порту:
> 192.168.0.29:80
https://forum.antichat.xyz/attachments/28950570/img_532245e168.png
Страница, достаточно информативна, она повествует о том, что мы – schmuck (чмо) и вряд ли сможем разблокировать свой хост.
https://forum.antichat.xyz/attachments/28950570/img_81c70b2811.png
Забудем на время про нее, может быть, вернемся к ней в процессе, но пока попробуем зайти на целевой хост, используя второй, 69 порт.
Здесь живет сайт на Wordpress, при исследовании которого, ничего примечательного не обнаружилось.
https://forum.antichat.xyz/attachments/28950570/img_16744dabb2.png
Вернемся к 22 и 23 порту, как мы все знаем - 22 – это, вероятно окажется SSH, а 23 – Telnet.
SSH в нашем случае ничего не дал, зато telnet оказался гораздо полезнее:
https://forum.antichat.xyz/attachments/28950570/img_05fda95103.png
Обращаем внимание на два момента, первый, это пример пароля который раньше использовался, а второй (желтый) – намек на кодировку ROT13 ( «сдвинуть на 13 позиций», иногда используется написание через дефис — ROT-13) представляет собой шифр подстановки простой заменой для алфавита английского языка (стандартной латиницы) Алгоритм не дает никакой реальной криптографической безопасности и никогда не должен использоваться для этого. Он часто приводится в качестве канонического примера слабого метода шифрования. Попробуем дешифровать, так сказать, этот пароль.
https://forum.antichat.xyz/attachments/28950570/img_f2a5b29ea1.png
Теперь, надо подумать, куда это можно применить. В итоге, выяснилось, что это каталог на сервере:
https://forum.antichat.xyz/attachments/28950570/img_afb6415ffe.png
Одна из заметок, содержит подсказку в первых о том, что существует некий .cap файл, он содержит в своем названии слово “veronica”, ну и на то, что можно использовать rockyou.txt для поисков.
https://forum.antichat.xyz/attachments/28950570/img_14f386ef05.png
По старой традиции, берем словарь rockyou.txt и с помощью grep отфильтровываем, по словам, содержащим слово “veronica”.
> grep -I veronica /usr/share/wordlist/rockyou.txt > root/rock.txt
https://forum.antichat.xyz/attachments/28950570/img_20c9a7dc65.png
Дальше, нам ничего не остается, как поискать этот файл в папке с помощью Dirbuster.
Запустим его с такими параметрами:
https://forum.antichat.xyz/attachments/28950570/img_baea52789d.png
Через пару минут, находим искомый файл, открываем путь к нему в браузере. Затем запускаем его с помощью Wireshark:
https://forum.antichat.xyz/attachments/28950570/img_391047fd3e.png
Что удалось извлечь из дампа Wireshark:
1. Где, то есть FTP сервер (неизвестно на каком порту)
2. Учетные данные – eric и пароль – ericdoesntdrinkhisownpee
3. Ссылку на youtube
Поиск происходил по всем пакетам, интерес представляет только переписка. Вот так это выглядит.
https://forum.antichat.xyz/attachments/28950570/img_4089c38881.png
Красным выделен текст письма. Остальную информацию тоже берем из писем. Для начала посмотрим ролик на youtube:
>
https://forum.antichat.xyz/attachments/28950570/img_3b4ba6e3ea.png
В ролике озвучена последовательность чисел, так как упоминался выше FTP сервер, существует вероятность, что одно из чисел является скрытым портом…
Но нет, по прошествии некоторого времени и не без помощи гугла, стало ясно, что эти загадочные цифры - последовательность, для использования Port Knocking. Для тех, кто не в курсе, поясню - Port knocking — это сетевой защитный механизм, действие которого основано на следующем принципе: сетевой порт являются по-умолчанию закрытыми, но до тех пор, пока на него не поступит заранее определённая последовательность пакетов данных, которая «заставит» порт открыться. Например, вы можете сделать «невидимым» для внешнего мира порт SSH, и открытым только для тех, кто знает нужную последовательность.
Попробуем заставить сервер открыть нам, что ни будь:
> for x in 1466 67 1469 1514 1981 1986; do nmap –Pn –host_timeout 201 –max-retries 0 –p $x 192.168.0.103; done
https://forum.antichat.xyz/attachments/28950570/img_2c24875f1f.png
После того, как команда успешно отработает, попробуем применить опять nmap к тестируемому хосту:
> nmap –p- 192.168.0.105
Результатом будет открытие 21 порта, на котором висит FTP.
https://forum.antichat.xyz/attachments/28950570/img_1f61c73cdd.png
Зайдем на него, используя в качестве учетных данных, те, что мы получили ранее:
> ftp 192.168.0.105
https://forum.antichat.xyz/attachments/28950570/img_7d3932f486.png
Чтобы осмотреться выполним команду dir, нас интересует файл .notes, скачаем его себе, затем ознакомимся с содержимым:
> get .notes
https://forum.antichat.xyz/attachments/28950570/img_48b9f0a57a.png
Выходим с FTP и пробуем прочесть .notes:
https://forum.antichat.xyz/attachments/28950570/img_988ebe1446.png
Исходя из этих подсказок, а так же из информации в переписке, стало понятно, что есть второй пользователь на FPT, это собственно Вероника. Применим Гидру для брута FTP, словарь пользуем тот же, что мы создавали в начале.
> hydra –l veronica –p /root/Desktop/rock.txt
https://forum.antichat.xyz/attachments/28950570/img_3978e2b2a6.png
Получен логин и пароль второго пользователя на FTP.
На этом пока все, продолжение в следующей части…
https://forum.antichat.xyz/attachments/28950570/img_42ac24308a.png
Для тех, кто не в курсе, что такое CTF, ссылка на мою первую статью посвященную данной тематике:
> https://codeby.net/threads/ctf-vzlom-mr-robot-vm.57930/ (https://forum.antichat.xyz/threads/1617930/)
Итак, Billy Madison VM, легенда этой VM основана на американской комедии 1995 года режиссёра Тамры Дэвис. А основной целью является получение root-прав на Билли VM.
Итак, начнем с того, что скачаем образ машины с:
> https://www.vulnhub.com/entry/billy-madison-11,161/
https://forum.antichat.xyz/attachments/28950570/img_e6cc982176.png
Теперь, необходимо с помощью Oracle VM VirtualBox или VMware Workstation, создать и запустить скачанную прежде VM.
https://forum.antichat.xyz/attachments/28950570/img_8d9295f7fc.png
Затем, запускаем ОС с которой будет производиться тестирование на проникновение. В моем случае это Kali Linux 2.0.
Следующий шаг, это определение целевого хоста (Billy VM) в нашей сети.
Воспользуемся netdiscover:
> netdiscover
https://forum.antichat.xyz/attachments/28950570/img_f53da81816.png
В моем случае целевой хост имеет адрес – 192.168.0.29.
Следующий шаг, это использование сканера nmap, для просмотра информации об открытых портах:
> nmap –p- -A 192.168.0.29
https://forum.antichat.xyz/attachments/28950570/img_2984e8dbe4.png
Итог работы сканера, покажет нам список открытых портов:
· 22
· 23
· 69 – http
· 80 – http
На порты 69 и 80 в первую очередь обратим свое внимание.
Попробуем обратиться к целевому хосту по адресу 192.168.0.29 на 80-ом порту:
> 192.168.0.29:80
https://forum.antichat.xyz/attachments/28950570/img_532245e168.png
Страница, достаточно информативна, она повествует о том, что мы – schmuck (чмо) и вряд ли сможем разблокировать свой хост.
https://forum.antichat.xyz/attachments/28950570/img_81c70b2811.png
Забудем на время про нее, может быть, вернемся к ней в процессе, но пока попробуем зайти на целевой хост, используя второй, 69 порт.
Здесь живет сайт на Wordpress, при исследовании которого, ничего примечательного не обнаружилось.
https://forum.antichat.xyz/attachments/28950570/img_16744dabb2.png
Вернемся к 22 и 23 порту, как мы все знаем - 22 – это, вероятно окажется SSH, а 23 – Telnet.
SSH в нашем случае ничего не дал, зато telnet оказался гораздо полезнее:
https://forum.antichat.xyz/attachments/28950570/img_05fda95103.png
Обращаем внимание на два момента, первый, это пример пароля который раньше использовался, а второй (желтый) – намек на кодировку ROT13 ( «сдвинуть на 13 позиций», иногда используется написание через дефис — ROT-13) представляет собой шифр подстановки простой заменой для алфавита английского языка (стандартной латиницы) Алгоритм не дает никакой реальной криптографической безопасности и никогда не должен использоваться для этого. Он часто приводится в качестве канонического примера слабого метода шифрования. Попробуем дешифровать, так сказать, этот пароль.
https://forum.antichat.xyz/attachments/28950570/img_f2a5b29ea1.png
Теперь, надо подумать, куда это можно применить. В итоге, выяснилось, что это каталог на сервере:
https://forum.antichat.xyz/attachments/28950570/img_afb6415ffe.png
Одна из заметок, содержит подсказку в первых о том, что существует некий .cap файл, он содержит в своем названии слово “veronica”, ну и на то, что можно использовать rockyou.txt для поисков.
https://forum.antichat.xyz/attachments/28950570/img_14f386ef05.png
По старой традиции, берем словарь rockyou.txt и с помощью grep отфильтровываем, по словам, содержащим слово “veronica”.
> grep -I veronica /usr/share/wordlist/rockyou.txt > root/rock.txt
https://forum.antichat.xyz/attachments/28950570/img_20c9a7dc65.png
Дальше, нам ничего не остается, как поискать этот файл в папке с помощью Dirbuster.
Запустим его с такими параметрами:
https://forum.antichat.xyz/attachments/28950570/img_baea52789d.png
Через пару минут, находим искомый файл, открываем путь к нему в браузере. Затем запускаем его с помощью Wireshark:
https://forum.antichat.xyz/attachments/28950570/img_391047fd3e.png
Что удалось извлечь из дампа Wireshark:
1. Где, то есть FTP сервер (неизвестно на каком порту)
2. Учетные данные – eric и пароль – ericdoesntdrinkhisownpee
3. Ссылку на youtube
Поиск происходил по всем пакетам, интерес представляет только переписка. Вот так это выглядит.
https://forum.antichat.xyz/attachments/28950570/img_4089c38881.png
Красным выделен текст письма. Остальную информацию тоже берем из писем. Для начала посмотрим ролик на youtube:
>
https://forum.antichat.xyz/attachments/28950570/img_3b4ba6e3ea.png
В ролике озвучена последовательность чисел, так как упоминался выше FTP сервер, существует вероятность, что одно из чисел является скрытым портом…
Но нет, по прошествии некоторого времени и не без помощи гугла, стало ясно, что эти загадочные цифры - последовательность, для использования Port Knocking. Для тех, кто не в курсе, поясню - Port knocking — это сетевой защитный механизм, действие которого основано на следующем принципе: сетевой порт являются по-умолчанию закрытыми, но до тех пор, пока на него не поступит заранее определённая последовательность пакетов данных, которая «заставит» порт открыться. Например, вы можете сделать «невидимым» для внешнего мира порт SSH, и открытым только для тех, кто знает нужную последовательность.
Попробуем заставить сервер открыть нам, что ни будь:
> for x in 1466 67 1469 1514 1981 1986; do nmap –Pn –host_timeout 201 –max-retries 0 –p $x 192.168.0.103; done
https://forum.antichat.xyz/attachments/28950570/img_2c24875f1f.png
После того, как команда успешно отработает, попробуем применить опять nmap к тестируемому хосту:
> nmap –p- 192.168.0.105
Результатом будет открытие 21 порта, на котором висит FTP.
https://forum.antichat.xyz/attachments/28950570/img_1f61c73cdd.png
Зайдем на него, используя в качестве учетных данных, те, что мы получили ранее:
> ftp 192.168.0.105
https://forum.antichat.xyz/attachments/28950570/img_7d3932f486.png
Чтобы осмотреться выполним команду dir, нас интересует файл .notes, скачаем его себе, затем ознакомимся с содержимым:
> get .notes
https://forum.antichat.xyz/attachments/28950570/img_48b9f0a57a.png
Выходим с FTP и пробуем прочесть .notes:
https://forum.antichat.xyz/attachments/28950570/img_988ebe1446.png
Исходя из этих подсказок, а так же из информации в переписке, стало понятно, что есть второй пользователь на FPT, это собственно Вероника. Применим Гидру для брута FTP, словарь пользуем тот же, что мы создавали в начале.
> hydra –l veronica –p /root/Desktop/rock.txt
https://forum.antichat.xyz/attachments/28950570/img_3978e2b2a6.png
Получен логин и пароль второго пользователя на FTP.
На этом пока все, продолжение в следующей части…