Задача о поиске флага на видеосервере - Академия Selectel

Задача о поиске флага на видеосервере

Иван Коробов
Иван Коробов Ведущий инженер по ИБ
26 июня 2025

Эта задача для тех, кто любит сложности и не боится искать верное решение, перебирая разные подходы. И особенно полезна тем, кто готовится к CTF-турнирам. Мы подготовили ее по следам соревнования Selectel для специалистов по информационной безопасности.

Изображение записи

Условие

На видеосервере находятся очень ценные изображения, но для их просмотра необходимо пройти авторизацию! А для этого вам понадобится флаг — строка в формате slcctf{}.

Задача

Найдите флаг. Чтобы выполнить задание, перейдите на страницу http://watcher.slcctf.fun/.

Решение

Переходим на страницу задания. Видим форму авторизации и пробуем подставить кавычку в поле для пароля — получаем ошибку сервера:

Страница с ошибкой сервера.

Используем SQL-инъекцию: в поле логина вводим admin, в поле пароля:


    ‘ OR 1=1 ; -- -

Открывается страница с изображением:

Страница, на ней изображение дома изнутри — с мебелью и растениями).

Переходим в исходный код страницы, видим выпадающий список со свойством display:none.

Открываем в консоли код страницы и видим списк.

В выпадающем списке видим два логина:

  • admin — под которым был выполнен вход;
  • user0014.

Вернемся на страницу входа http://watcher.slcctf.fun/ и заполним форму авторизации:

  • в поле логина вводим user0014;
  • а в поле пароля — следущее:

    ‘ OR 1=1 ; -- -

Открывается страница:

Страница, на ней текст «Video Stream».

Добавим /FileServer_b514ir в URL и переходим на страницу:

Вновь видим страницу с изображением дома.

Обращаем внимание на URL: 


    http://watcher.slcctf.fun/FileServer_b514ir/310b86e0b62b828562fc91c7be5380a992b2786a.jpg

Видим имя изображения:


    310b86e0b62b828562fc91c7be5380a992b2786a.jpg

Определяем кодировку имени файла без расширения, например, на сайте hashes.com/.

Открыли сайт и увидели нужные данные.

Определяем, что используется алгоритм SHA1.

Декодируем строку 310b86e0b62b828562fc91c7be5380a992b2786a:

Открыли сервис, чтобы декодировать строку.

Получаем значение 100.

Пробуем посчитать хэш для строки «101»: dbc0f004854457f59fb16ab863a3a1722cef553f.

Перейдем на http://watcher.slcctf.fun/FileServer_b514ir/dbc0f004854457f59fb16ab863a3a1722cef553f.jpg:

Оказываемся на новой странице с изображением камер видеонаблюдения.

Пробуем посчитать хэш для строки «102»: c8306ae139ac98f432932286151dc0ec55580eca.

Перейдем на http://watcher.slcctf.fun/FileServer_b514ir/c8306ae139ac98f432932286151dc0ec55580eca.jpg:

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

В итоге получили флаг: slcctf{comics-c86cddd72510}.

Другие задачи CTF-турнира