- PVSM.RU - https://www.pvsm.ru -

Даже в школе есть безопасники: решаем простые, но интересные CTF-турниры

Даже в школе есть безопасники: решаем простые, но интересные CTF-турниры - 1

В продолжение серии материалов по решению CTF-турниров из разных стран хочу рассказать о недавно прошедшем BYUCTF 2024 от организаторов из университета Бригама Янга. А также о bcactf 5.0 от академии округа Берген, который ориентирован на школьников старших классов. Оттого будет интересно узнать, чем сейчас живут старшеклассники, которые увлекаются информационной безопасностью [1].

В рамках статьи покажу решение нескольких заданий из разных категорий: OSINT, Misc, Forensic и Web. Некоторые могут показаться простыми, ведь в этой подборке задачи с турниров для старшеклассников и студентов. Если вы считаете, что CTF — это сложно и непонятно, надеюсь, что мои обзоры смогут вселить в вас уверенность. Поехали!

Meet Greg

Задание

CTF-задачи социальной инженерии сложно создать! К счастью, мой друг Грег согласился помочь немного попрактиковаться. С тех пор, как мы были детьми, он использовал один и тот же пароль для всего. Ваша задача — узнать его.

Решение

Я уже ранее встречал такие задания. Как правило, на стороне организаторов запущен ChatGPT или аналог, у которого нужно выпытать флаг. Если спрашивать напрямую, то он не выдаст секрет. Поэтому нужно завуалированными фразами, косвенно касающимися секрета, узнать целевую информацию.

В этот раз диалог с Грегом был коротким. Объясняю Грегу, что работаю над драйвером для видеокарты. Разговоры про ядро Линукса цепляют его! После чего прошу дать совет по наилучшему паролю для использования в качестве ключа.

Даже в школе есть безопасники: решаем простые, но интересные CTF-турниры - 2

Даже в школе есть безопасники: решаем простые, но интересные CTF-турниры - 3

Общение с Грегом (ChatGPT).

Отлично — мы обманули Грега и заполучили флаг!

Флаг: byuctf{!dJustl1ke2int3rj3ct4Amoment}

Даже в школе есть безопасники: решаем простые, но интересные CTF-турниры - 4

Mail Time

Задание

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

Если вы считаете, что адрес указан правильно, а ваш родной язык не английский, пожалуйста, откройте тикет. Введите флаг как точный адрес, указанный в картах Google.

Даже в школе есть безопасники: решаем простые, но интересные CTF-турниры - 5

Вложение к заданию.

Решение

Рама окна точно совпадает с исходной картинкой, как и вывеска. Похоже, что задача довольно простая и можно по названию офиса идти искать в Google.

В задании есть оговорка об английском языке, поэтому в переключаю в картах язык на английский, ищу по названию и получаю результат:

Даже в школе есть безопасники: решаем простые, но интересные CTF-турниры - 6

Готово — флаг в кармане.

Флаг: byuctf{845P+98W, Ross Rd, Stanley FIQQ 1ZZ, Falkland Islands (Islas Malvinas)}

Petrol Head

Задание

Когда истекает срок регистрации этого автомобиля? MJ05 XRL.

Решение

В этот раз нужно узнать дату истечения срока регистрации автомобильного номера. Решение не заставляет себя долго ждать.

Ищу базы автомобильных номеров и нахожу ресурс [2]. Это сайт компании, которая позволяет следить за уплатой налогов, страховки и другими данными по регистрационному номеру.

Даже в школе есть безопасники: решаем простые, но интересные CTF-турниры - 7

Достаточно вбить номер автомобиля — и флаг найден!

Флаг: byuctf{01/12/25}

Vacation Boats

Задание

Во время моей недавней вылазки в лазурные объятия отпускного блаженства, среди поцелованных солнцем берегов и лазурных волн возникло величественное судно, которое запечатлело суть морского великолепия. Увы, его имя ускользает от моей памяти. Мимолетный шепот, затерянный в морском бризе…

Даже в школе есть безопасники: решаем простые, но интересные CTF-турниры - 8

Вложение к заданию.

Решение

На изображении я зацепился за две детали.

  • Тип корабля. Авианосец, на мой взгляд, узнается довольно просто по высокой плоской палубе и отставленной в сторону мачте.
  • Флаг Франции.

После иду искать авианосцы Франции, На самом деле, был удивлен, что их относительно немного. Но из ныне эксплуатируемых можно найти Charles de Gaulle — он то нам и нужен, потому что является флагом.

Chalkboard Gag

Задание

Мэтт Гренинг прислал мне неиспользованную доску для рисования мелом. Он сказал, что внутри есть что-то особенное.

Решение

В приложенном файле [3] находятся 100 тыс строк. С помощью автозамены удаляю строку «I WILL NOT BE SNEAKY» и переносы. В Notepad++ это можно сделать с помощью Ctrl+H.

В итоге получаю такую последовательность:

Даже в школе есть безопасники: решаем простые, но интересные CTF-турниры - 9

Видно, что в этих строках есть отличные символы. В каждой оставляю по одному уникальному, склеиваю в одну последовательность — и получаю флаг.

Флаг: bcactf{BaRT_W0U1D_B3_PR0uD}

Phone number

Задание

Я пытался войти на этот сайт, но теперь он просит номер телефона. Странный способ ввода. Можете мне помочь? Мой номер телефона: 1234567890.

Страница: http://challs.bcactf.com:32268 [4]

Решение

Из задания ясно, что ждет игра в кости! Если покликать на кнопки, можно понять, как устроена система.

  • Нажатие на Roll Dice выдает новое значение на костях и записывает сумму выпавших значений.
  • Нажатие на Subtract Dice меняет результат с суммы значений костей на разность.
  • Нажатие на Add Number добавляет результат броска в текст-бокс.
  • Нажатие на Submit отправляет результат на бэкенд, который проверяет значения.

В задании указан номер 1234567890. Вероятно, для получения флага необходимо отправить именно его. Важно заметить, что значение текст-бокса не редактируется.

В исходниках страницы доступен код JavaScript. без Попробую на основе данных отправить номер. Для этого необходимо сформировать вбить его в текст-боксе и отправить на бэкенд:

Даже в школе есть безопасники: решаем простые, но интересные CTF-турниры - 10

Далее нужно перехватить запрос. Например, с помощью proxy burpsuite:

Даже в школе есть безопасники: решаем простые, но интересные CTF-турниры - 11

Вижу, что обращение идет к URI /flag, а сформированный номер отправляется в теле запроса. Пробую заменить этот номер на 1234567890 и получаю флаг!

Даже в школе есть безопасники: решаем простые, но интересные CTF-турниры - 12

Флаг: bcactf{PHoN3_num8eR_EntER3D!_17847928}

Sea Scavenger

Задание

Отправьтесь в путешествие по морским глубинам! Исследуйте тайны веб-страниц и найдите спрятанное сокровище. Совет от профессионала: уменьшите масштаб!

Страница: http://challs.bcactf.com:31314 [5]

Решение

Перехожу на страницу и вижу огромную страницу с разрешением 8 000 х 7 400 px. Форм и кнопок не нашел — перехожу в код страницы. Скриптов нет, отключенных элементов тоже. Однако вижу шесть ссылок с картинками:

Даже в школе есть безопасники: решаем простые, но интересные CTF-турниры - 13

Уже есть за что зацепиться, поэтому начинаю переходить по ссылкам.

1. На странице http://challs.bcactf.com:31314 [5]/shark есть подсказка для поиска флага. Иду в код страницы и вижу первую часть флага:

Даже в школе есть безопасники: решаем простые, но интересные CTF-турниры - 14

1/6 флага: bcactf{b3

Погружаюсь глубже. Открываю адрес http://challs.bcactf.com:31314 [5]/squid и в коде страницы втжу подключенный скрипт, внутри которого — вторая часть флага.

console.log("You found it! Here’s the second part of the flag: "t_y0u_d1"");

2/6 флага: bcactf{b3t_y0u_d1

Это только начало… Ничего не остается, кроме как нырять дальше — по адресу http://challs.bcactf.com:31314 [5]/clam.

Даже в школе есть безопасники: решаем простые, но интересные CTF турниры

Сладкое лакомство — похоже на отсылку к кукисам. В консоли выполняю document.cookie:

> document.cookie
< ‘flag part 3:=dnt_fln’

3/6 флага: bcactf{b3t_y0u_d1dnt_f1n

По всей видимости флаг достаточно длинный. Сюжет с морскими приключениями интересный, но уже начинает затягиваться… Иду дальше и начинаю изучать затонувший корабль: http://challs.bcactf.com:31314 [5]/shipwreck.

Даже в школе есть безопасники: решаем простые, но интересные CTF турниры

В коде страницы есть JavaScript с подсказкой:

console.log("Hint: Check the response headers");
console.log("Also make sure to check "/shipwreck"");

Если посмотреть ответ сервера, можно увидеть заголовок с четвертой частью флага:

Даже в школе есть безопасники: решаем простые, но интересные CTF турниры

4/6 флага: bcactf{b3t_y0u_d1dnt_f1nd_th3_tr

Нельзя расслаблять ласты, конец уже близко. На глубине http://challs.bcactf.com:31314 [5]/whale встречает кит:

Даже в школе есть безопасники: решаем простые, но интересные CTF турниры

Здесь ничего интересного: пятая часть флага закомментирована в скрипте страницы.

Даже в школе есть безопасники: решаем простые, но интересные CTF турниры

5/6 флага: bcactf{b3t_y0u_d1dnt_f1nd_th3_tre4sur3

Наконец, по адресу http://challs.bcactf.com:31314 [5]/treasure нахожу сокровище:

Даже в школе есть безопасники: решаем простые, но интересные CTF турниры

Здесь тоже все просто: последняя часть флага находится в robots.txt.

Даже в школе есть безопасники: решаем простые, но интересные CTF турниры

Полный флаг: bcactf{b3t_y0u_d1dnt_f1nd_th3_tre4sur3_t336e3}

Заключение


Как видите, задачи такого уровня тоже могут быть интересными. Если только начинаете участвовать в CTF, подобные турниры точно будут полезными. Посмотрим, что покажут другие организаторы.

Возможно, эти тексты тоже вас заинтересуют:

Как я сделал свою Arduino [6]
Не статья, а позорище какое-то! Sentiment-анализ комментариев из блога Selectel на Хабре [7]
Летние одноплатники: как для любителей DIY-проектов, так и для промышленности [8]

Автор: is113

Источник [9]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/selectel/392111

Ссылки в тексте:

[1] информационной безопасностью: https://selectel.ru/services/is/?utm_source=habr.com&utm_medium=referral&utm_campaign=security_article_ctf6_140624_content

[2] ресурс: https://www.regit.cars/numberplates/mj05x

[3] файле: https://disk.yandex.ru/d/w5WI3RLqXOgBzg

[4] challs.bcactf.com:32268: http://challs.bcactf.com:32268/

[5] challs.bcactf.com:31314: http://challs.bcactf.com:31314/

[6] Как я сделал свою Arduino: https://habr.com/ru/company/selectel/blog/820731

[7] Не статья, а позорище какое-то! Sentiment-анализ комментариев из блога Selectel на Хабре: https://habr.com/ru/company/selectel/blog/812895

[8] Летние одноплатники: как для любителей DIY-проектов, так и для промышленности: https://habr.com/ru/company/selectel/blog/818919

[9] Источник: https://habr.com/ru/companies/selectel/articles/821779/?utm_source=habrahabr&utm_medium=rss&utm_campaign=821779