CTF Кибервызов 2018 writeup

Dr.Lafa

Green Team
30.12.2016
507
1 049
BIT
0
Буквально неделю назад закончилась " " - стф школьного уровня. Таски были довольно интересными и в какой-то степени полезными для новичков, по этому я хочу собрать здесь райтапы.

web
No Comments

Найдите флаг, скрытый в веб-сайте:

Флаг был в html-комментариях сайта на главной странице, по этому его нужно было просто найти
a_003.png


Router
Купил, подключил, а настроить забыл :(
Роутер:


На сайте находится админ-панель роутера, как сказано в задании, не настроенного. Гуглим дефолтные пароли к ZYXEL PRESTIGE 900 (webadmin : 1234), заходим в панель и видим флаг:
a_006.png


Cookie Monster
При посещении вами данного веб-сайта сбор информации может осуществляться посредством cookie-файлов и других технологий. Используя данный веб-сайт, вы даете свое согласие на использование нами cookie-файлов в соответствии с данными Условиями...
Ссылка на сервис:


В задании говорится о куках. Первое, что стоит сделать - посмотреть их значения.
При заходе на страницу сайт присваивает нам куку role=user
a_004.png


Заменяем на role=admin и получаем флаг
a_005.png


Porter
Веб-сервис расположен на каком-то из портов в диапазоне 1000-2000 на сервере 2018.cyberchallenge.ru. Сможешь ли ты найти его?

Сканируем 2018.cyberchallenge.ru на 1000-2000 порты
a_008.png


На порту 1337 находится веб приложение
a_007.png


При переходе на нас редиректит обратно на index.html. Ответ от сервера можно посмотреть в burp-suite или с помощью curl (или просто успеть нажать ctrl+u до редиректа):
a_002.png


Silmaril Store
Мы открыли новый интернет-магазин. Достаточно ли у тебя денег, чтобы купить самый дорогой товар?
Ссылка на наш интернет-магазин:


В первом задании на этом сайте нам нужно купить драгоценный камень за 999999 У.Е, но имеется только 100
a.png


Попробуем купить алмаз, посмотрев при этом запрос:
1537614552520.png


Цена явно указывается в параметре и её можно заменить. Заменив значение price на 0, мы бесплатно получим алмаз и флаг. А если заменить на отрицательное - то ещё и денег накрутим:
1537614653570.png


1537614789760.png


Silmaril Store 2
Мы открыли новый интернет-магазин. Сможешь ли ты найти то, что мы прячем от посторонних глаз?
Ссылка на наш интернет-магазин:


Задание всё на том же сайте. На этот раз нужно найти скрытый товар. Просто перебрав параметр id в запросе для покупки, получаем флаг:
1537615041910.png


JSt Do It
Не дай своим мечтам остаться мечтами.
Каждый день ты говоришь: «Завтра».
Просто сделай это!
Претвори свои мечты (про кавычки) в жизнь.
Просто сделай это!
Ссылка на сервис:


Если зайти на сайт, то он отрикроллит нас (редирект на
). По этому включаем режим Intercept On в burp suite и пропускаем 1 запрос для загрузки сайта. Далее последует запрос к видео, просто останавливаемся на нём
1537615354000.png


На сайте есть 2 обфусцированных javascript кода. Один, очевидно, рикроллит нас. Второй даёт флаг. Смотрим вывод логов в консоли браузера и находим там флаг
1537615492812.png


Kavichka
Необходимо выполнить вход под учетной записью администратора. Обычное такое задание с кавычками. Классика...
Ссылка на сервис:


Классическая sqli в форме авторизации
1537615638150.png


1537615651712.png


Another Day
Поиск уязвимостей в языках программирования является очень интересной темой для исследований в области информационной безопасности. Позвольте мне показать вам один пример...
Ссылка на сервис:


Довольно странное задание. Я решил его случайно, нажав Enter.
В html комментариях нас просят не брутфорсить, и брутфорсить действительно не надо, мы получаем флаг, если войти под логином admin без пароля
1537615853630.png


ImageBox
Стартап ImageBox объявил о запуске нового облачного сервиса для загрузки и хранения изображений. А чтобы загружать было не так скучно, разработчики еще и спрятали флаг на своем сервере. Попробуйте извлечь его.
Ссылка на сервис:


1537616597822.png


file upload vulnerability. Скрипт загрузки файлов проверяет только наличие расширения png в названии файла, по этому мы может загрузить php-shell:
1537616748958.png


После загрузки файла нам показывают, где он находится
1537616779070.png


Переходим по ссылке и получаем флаг
1537616836398.png


Just Add
Знание недостатков языка PHP необходимо начинающему специалисту в области информационной безопасности. Продемонстрируйте мне ваши навыки, и вы получите флаг.
Ссылка на сервис:


Обычная LFI. Попробуем взять index.php в качестве страницы и увидем её код:
1537617187144.png


Видим, что флаг находится на /th1s_1s_the_h1dd3n_fl4g.7x7, но такой путь нельзя использовать, так как фильтруется. Фильтр можно обойти с помощью /./, что по сути является обычным слешем для файлогово менеджера:
1537617486662.png


Octocat
Unnamed repository; edit this file 'description' to name the repository.
Ссылка на сервис:


На сайте находится git репозиторий. Выкачаем его с помощью rip-git rip-git
1537617864374.png


В папку выкачался гит-репозиторий, теперь мы можем работать с ним. В нынешнем коммите нет флага, посмотрим старые:
1537617998406.png


1537618027840.png


Converter
Флаг находится в /flag.txt.
Ссылка на сервис:


Ещё один таск с file upload vulnerability. Здесь уже нет никакой фильтрации. Сайт должен конвертировать файлы в png, но в папке с новой картинкой сохраняются и те, что мы загрузили. Так мы можем загрузить php-код, который покажет нам флаг:
1537618296132.png


Файл загрузился. Вместо названия новой картинки указываем название нашего php-файла:
1537618346408.png


1537618366240.png


ImageBox 2
Разработчики стартапа ImageBox осознали свою ошибку и пересмотрели свой подход к обеспечению безопасности сервиса. По их словам, теперь хостинг неуязвим. Проверим?
Ссылка на сервис:


Это усложнённая версия ImageBox. Теперь фильтруется вхождение ".php" на конце файла и прочих расширений, с помощью которых можно выполнить код. Так же присутствует фильтрация по content-type: сайт пускает только png и jpg.

Если попробовать загрузить файл со словом htaccess в названии, то заметим, что это слово просто отбрасывается:
1537618793508.png


Такая "защита" от перезаписи файла .htaccess играет нам на руку, с помощью неё мы сможем загрузить файл с расширением .php и выполнить код
1537618906090.png


Файл с расширением php загружается, но слова shell_exec или system в теле файла тоже фильтруются, мы не сможем выполнить код с помощью них.
1537619030238.png


Однако мы всё ещё можем заинклудить флаг с помощью require:
1537619126790.png


Переходим по пути и видим заветный флаг:
1537619268076.png
 

TeoFobia

One Level
12.01.2018
2
1
BIT
0
C помощью какого сервиса Вы смотрели ответы сервера?
 

InetTester

Green Team
21.10.2018
308
43
BIT
5
Задания интересные!) Раньше помню была масса таких квестов на Ачате.
Если кому интересно, то на мой взгляд максимально удобный и простой плагин для Chrome для генерации http запросов это Servistate.
1.jpg
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!