Лаборатория тестирования на проникновение «Test lab v.10» — за гранью хакерских возможностей (1)

Глава 1

Следующая глава
Оглавление

tl10.png


И так приветствую вас колеги ).
Сегодня мы с вами погрузимся в роль хакера-пентестера и на примере лаборатории тестирования на проникновения от PentestIT
будем,так сказать, тестировать себя "На грани хакерских возможностей" )) Именно такое имя разработчики дали очередной 10-й тест-лабе.
В этой лаборатории мы встретимся один на один со следующими векторами уязвимостей
01.PNG


Писать я буду стараться как можно доступней к пониманию,так как новичков не могу я проигнорировать) Но и не буду расписовать громадные разьяснение
терминов с википедии,к примеру что такое уязвимость,эксплойты,сканирования сети,сбор и анализ информации,брутфорс и т.д. Все таки я расчитываю что вы это знаете или самостоятельно
сможете прочитать об этих и других терминах в википедии.
И так прежде чем мы начнем ,я бы кратенько хотел обьяснить этап регистрации и навигацию по сайту тест-лабы,потому что у многих на этом этапе уже возникают не большие трудности,
что в последствии отпугивает людей проходить лабораторию.

1) Идем по адресу lab.pentestit.ru/signup
2)Заполняем форму регистрации,и потом подтверждаем регистрацию на почте которую указывали в форме.
1.PNG

3)Далее идем в "HOW TO CONNECT" (Как подключится)
2.PNG


Далее мы видим две вкладки (Linux) и (Windows)
Во вкладке (Linux) нам предлагают скачать готовый образ для VirtualBox со всеми нужными настройками,или же воспользоватся конфигурационным файлом для openvpn,и немножко ниже наш логин и пароль для подключения к VPN.
Во кладке (Windows) - это для тех кто использует виндоус машину для подключения к лабораториями,там лежит конфигурационный файл для OpenVPN клиента.
Я же буду использовать конфиг для Linux.
3.PNG


Далее подготовим место для наших конфигов,паролей и всех файлов,которые могут быть связанные с тест-лабой.
Положим наш логин и пароль от VPN в файл pass.txt
4.PNG


Далее же настроим и сам конфигурационный файл (назовем его как нибудь lab.conf)
просто копипастим туда содержимое конфига которое нам дали на сайте:
5.PNG


Потом добавим туда путь к нашем кредам(файла с логином и паролем):
6.PNG


Для удобства теперь я просто возьму положу одну строчку кода в скрипт на bash-е что бы было удобно запускать VPN соединение в фоне.
7.PNG

Ну еще для более удобного запуска VPN я создам пожалуй символьную ссылку,что бы можно было запускать старт VPN из любой папки)
И как бы мы готовы к подключению к лаборатории)) Что ж давайте проверим какие файлы у нас получились и работает ли VPN соединение)
8.PNG

После запуска нашего скрипта у нас должен появится интерфейс tun0 :
9.PNG

С настройками кажись все гуд у нас)
Давайте знакомится с навигацией сайта лабы,картой сети и т.д. P/S: Это нам очень пригодится)
Первым делом на главной странице lab.pentestit.ru можно увидеть карту кибератак,кто из каких городов стран мира проявляет подозрительную активность так сказать))) И если мы также проявим активность в виде брутфорса - так же сможем лицезреть себя на этой карте:
10.PNG

Спускаемся немножко ниже и переходим в нашу TestLab v10:

11.PNG


Здесь в верхней части страницы мы можем наблюдать ко-тво зарегистрированных пользователей ,к-тво онлайн и текущий прогресс прохождения.
Немножко ниже мы можем видеть IP адрес шлюза для атаки с внешнего периметра,ссылку на карту сети ( так как пентест этой сети будет проходить по принципу серого ящика "GreyBox ") И ссылки на обратную связь и группы в телеграмме.
12.PNG

Жмакаем на ссылке карты сети(Network diagram link) И изучаем структуру сети:
13.PNG

Как видите - мужчинка в костюме это мы,подключаемся по VPN и нам доступен только GateWay(шлюз) на котором установлен фаервол,который предстоит обойти,за ним находится два сегмента сети ,и общее количество машин которое предстоит взломать равно 14. Вообщем есть на чем попрактиковаться)))
Немножко ниже на странице TestLab v10 есть поля ввода токенов,график валидации токенов,топ10 игроков,статистика по к-тву сданных токенов ,и в правом нижнем углу доска валидации токенов игроками со шкалой времени.
14.PNG
15.PNG


С навигацией по сайту разобрались. Давайте подготовимся к пентесту теперь :))))))
Последующие шаги совсем не обязательные , но я делаю их для удобства,для себя.
Для начала я создам перечень директорий ,что бы складывать туда найденные файлы на удаленных машинах,да и вообще все что может быть связано с удаленной машиной)
У меня это выглядит примерно так:
16.PNG
Так же я пользуюсь программкой keepnote( по умолчании есть в кали) для удобного ведения записей о какой найденной информации:
17.PNG
На этом подготовка закончилась. Начнем наш пентест.
Пинганем шлюз.Проверим что там у нас на нем крутятся за службы и какие открытые порты с помощью nmap-а:
18.PNG


Как мы видим у нас на гейтвее есть ssh,smtp,http,https и веб морда от почтового клиента.

19.PNG
21.PNG
22.PNG

Хочу обратить ваше внимание на то что совсем не означает что эти все сервисы которые обнаружил Nmap, расоположенны именно на шлюзе,это может означает что эти порты просто проброшены из машин внутренней сети на шлюз. То есть сущестует очень большая вероятность того что атакуя 22 порт на шлюзе мы на самом деле будем атаковать ssh(172.16.0.8) сервер который находится внутри сети.Так же хочу заметить что ssh порт (22) представляет большую ценность,так как его можно использовать как тунель с внешней сети во внутреннюю.Вообщем далее вам все будет ясно.
Сейчас пока давайте попытаемся что то нарыть,собрать информации побольше из внешнего периметра...
Гуляя по сайту на 443 порту мы натыкаемся на контактную информацию,а так же в исходном коде страницы мы замечаем в служебных комментариях еще одну фамилию.

23.PNG
24.PNG


Хмм... При этом всем мы прекрасно помним что на шлюзе у нас есть smtp открытый порт.И посему проверить на легкие словарные пароли к почтовым аккаунтам я думаю нам не составит никакого труда.Давайте лишь создадим список учетных записей которых мы хотим прогнать по словарю:
25.PNG

Тут логика в том что мы предположили что Alfred Modlin так же может иметь почту в домене gds.lab.
Ну что ж давайте прогоним по словарю из John-а) (Брать сразу большой словарь не вижу смысла имхо)
P/S: В тест-лабах если что то брутится дольше чем 15-20 минут - значит мы что то делаем не так)
И так наша команда для брутфорсера Hydra будет выглядим примерно следующим образом:

Код:
hydra -L users.txt -P /usr/share/john/password.lst -F -o good.txt smtp://192.168.101.9
26.PNG

И как видим,удача на нашей стороне)
Дальше вспоминаем что у нас есть на 8100 порту почтовый клиент ComunityGate
Идем туда,вводим логин,пароль и попадаем в почту)
В сообщениях видим письмо с темой "TOKEN"
Открываем его и берем свой первый токен))
28.PNG


Продолжение следует...
Дальше мы с вами возьмем наш второй токен,попадем во внутреннюю сеть,и научимся делать пробросы портов)

Всем спасибо)

Следующая глава
Оглавление
 
Вопросы:

1) Почему у меня nmap не отобразил название домена.

Starting Nmap 7.31 ( https://nmap.org ) at 2016-12-16 18:40 MSK
Nmap scan report for 192.168.101.9
Host is up (0.12s latency).
Not shown: 995 filtered ports
PORT STATE SERVICE
22/tcp open ssh
25/tcp open smtp
80/tcp open http
443/tcp open https
8100/tcp open xprint-server

2) Подбор пароля.
Как видно из скрина ТС, подбор был сделан за мгновенье.
У меня это так

#hydra -L users.txt -P /usr/share/john/password.lst -F -o good.txt smtp://192.168.101.9
Hydra v8.3 (c) 2016 by van Hauser/THC - Please do not use in military or secret service organizations, or for illegal purposes.

Hydra ( link removed) starting at 2016-12-16 18:52:18
[INFO] several providers have implemented cracking protection, check with a small wordlist first - and stay legal!
[DATA] max 16 tasks per 1 server, overall 64 tasks, 10677 login tries (l:3/p:3559), ~10 tries per task
[DATA] attacking service smtp on port 25
[STATUS] 217.00 tries/min, 217 tries in 00:01h, 10460 to do in 00:49h, 16 active
[STATUS] 211.00 tries/min, 633 tries in 00:03h, 10044 to do in 00:48h, 16 active
[STATUS] 182.14 tries/min, 1275 tries in 00:07h, 9413 to do in 00:52h, 16 active
[STATUS] 176.87 tries/min, 2653 tries in 00:15h, 8085 to do in 00:46h, 16 active

Пароль justdoit стоит в файле 1541 - значит его уже проскочили...
В чем проблема?

PS Создал свой файл паролей, внес туда justdoit все нашлось быстро. Файл из 40 пассов сделал.
 
Последнее редактирование:
  • Нравится
Реакции: <~DarkNode~>
В итоге перезапустил вновь и вот итог
[STATUS] 215.36 tries/min, 7753 tries in 00:36h, 2924 to do in 00:14h, 16 active
[25][smtp] host: 192.168.101.9 login: a.modlin@gds.lab password: justdoit
[STATUS] attack finished for 192.168.101.9 (valid pair found)

Меня смутило:

ТС написал - если на пенлабах пас 15-20 мин не найден, что то не так. ТС - быть может словарь за ранее подготовил для подготовки статьи? ;)
 
  • Нравится
Реакции: id2746 и <~DarkNode~>
Что касается брута пароля, то в целях демонстрации я просто перенес пароль justdoit на первые позиции в словаре,(для того что бы видео сделать более коротким,так как в видео я просто изобразил подход к взятию токена... Касательно 1541 позиции то в словаре джона больше 3к паролей,и если пользователь a.modlin стоял в вашем списке пользователей на третей позиции - то примерная успешная попытка пароля было бы где то после 7500-й попытки.(так как 3000*2+1541~= 7541) Так как гидре нужно будет перебрать первые две учетные записи по всему словарю

Касательно нмапа- не совсем понял вопрос...
Вероятней всего вы про мой скрин где в первых строчках вывода нмапа есть gds.lab
Что бы разобраться с этим вопросом - прикрепите пожалуйста скрин содержимого файла /etc/hosts
https://codeby.net/attachments/snimok-png.7817/
 
В итоге перезапустил вновь и вот итог
[STATUS] 215.36 tries/min, 7753 tries in 00:36h, 2924 to do in 00:14h, 16 active
[25][smtp] host: 192.168.101.9 login: a.modlin@gds.lab password: justdoit
[STATUS] attack finished for 192.168.101.9 (valid pair found)

Меня смутило:

ТС написал - если на пенлабах пас 15-20 мин не найден, что то не так. ТС - быть может словарь за ранее подготовил для подготовки статьи? ;)
Хорошо замечено) Дело в том что изначально брутились две учетки которые были в контактах на 192.168.101.9
После того как брут не дал результатов было обнаружено в исходном коде имя и фамилия Альфреда Модлина, и потом брут был только по одной этой учетной записи,так брутить снова первых две учетные записи не было смысла)
Ну а так да... Вношу поправку в свои слова) "Если у вас брутится одна учетка больше 15-20 минут - значит что то не так)
Опять же таки врайтап был написан для демонстрации логики и вектора эксплуатации,на самом деле при старте лабы никто так быстро токены не находит) Все путем проб и ошибок, я не расписовал в статье все свои действия - так как бы это было бы результатом очень длинной и скучной статьи)
 
~~DarkNode~~ - благодарю за ответ! Я забыл, про другие учетки и время на них :\ По nmap - видел тему с файл хостом, когда 192.168.101.9 туда внесли, но я не уловил - откуда взяли изначально название, перед внесением в файл, =)
 
  • Нравится
Реакции: id2746
Друг а ещё не подскажешь площадки для тренировки
 
~~DarkNode~~ - благодарю за ответ! Я забыл, про другие учетки и время на них :\ По nmap - видел тему с файл хостом, когда 192.168.101.9 туда внесли, но я не уловил - откуда взяли изначально название, перед внесением в файл, =)
Если мы перейдем просто по айпи адресу - то нас редиректит на store.gds.lab
Соответственно я добавлял в /etc/hosts

Код:
192.168.101.9   gds.lab
192.168.101.9   store.gds.lab
192.168.101.9   cloud.gds.lab
 
  • Нравится
Реакции: id2746 и p0ttym4n
  • Нравится
Реакции: nikos и p0ttym4n
Хорошо замечено) Дело в том что изначально брутились две учетки которые были в контактах на 192.168.101.9
После того как брут не дал результатов было обнаружено в исходном коде имя и фамилия Альфреда Модлина, и потом брут был только по одной этой учетной записи,так брутить снова первых две учетные записи не было смысла)
Ну а так да... Вношу поправку в свои слова) "Если у вас брутится одна учетка больше 15-20 минут - значит что то не так)
Опять же таки врайтап был написан для демонстрации логики и вектора эксплуатации,на самом деле при старте лабы никто так быстро токены не находит) Все путем проб и ошибок, я не расписовал в статье все свои действия - так как бы это было бы результатом очень длинной и скучной статьи)

@~~DarkNode~~, а на таких площадках, как Test lab, часто для брута хватает встроенных словарей Kali/ParrotSec? Или бывали случаи, когда надо было самому делать словари с помощью crunch'а и т.п. утилит, например?
 
@~~DarkNode~~, а на таких площадках, как Test lab, часто для брута хватает встроенных словарей Kali/ParrotSec? Или бывали случаи, когда надо было самому делать словари с помощью crunch'а и т.п. утилит, например?
Пока всегда хватало) Единственный момент был в этой лабе) Что Керберос по умолчанию использует строгую парольную политику и для входа на систему нужно было бы просто изменить регистр первой буквы в уже имеющим пароле)
 
  • Нравится
Реакции: id2746 и p0ttym4n
  • Нравится
Реакции: <~DarkNode~>
Тестовая лаборатория обновляется примерно с интервалом раз в полгода. То есть полгода доступна эта эмулированая корпоративная сеть , а через полгода будут новые таски,новые векторы,и новая сеть.
возможно ли подключиться к лаб через parrot sec os ?
 
Тестовая лаборатория обновляется примерно с интервалом раз в полгода. То есть полгода доступна эта эмулированая корпоративная сеть , а через полгода будут новые таски,новые векторы,и новая сеть.
подскажи пожалуйста вообще с чего начать, а то куда не глянешь везде хочется испытать, ну ты как более опытный пот толкни меня пожалуйста с чего начать !)
 
  • Нравится
Реакции: id2746, 6otfa и sergeyxz
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →
🔴 Свежие CVE, 0-day и инциденты
То, о чём ChatGPT ещё не знает — обсуждаем в реальном времени
Threat Intel →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

HackerLab