Разбираем девятую задачку из нашего соревнования CTF. Задание называется silmarill store 2, дают 500 баллов за флаг.
Подсказка гласит, что в уже пройденном нами задании есть ещё один флаг:
Ссылки
Решение
Снова возвращаемся к нашему интернет-магазину. Задачка оказалась для меня непростой. Решение классическое — методом перебора. Брутфорс обыкновенный.
Брутфорс (происходит от английского словосочетания: brute force) - разновидность хакерской атаки или способ взлома учётных записей в компьютерных системах, платёжных/банковских сервисах и на веб-сайтах посредством автоматизированного подбора комбинаций паролей и логинов.
Перебирать можно не только логины и пароли.
Посмотрим, нет ли скрытого товара за идентификатором, отличным от 0 и 1. Попробуем купить товар под id=2.
Нет такого товара. Пробуем 3, 4, 5... В реальных системах достаточно сложно найти руками что-то скрытое, для этого пишутся скрипты. Но у нас песочница, демонстрационная система, на id=7 мы видим:
Флаг найден!
evoctf{when_in_doubt_follow_your_nose}
Безопасность
- Не пытайтесь спрятать данные за идентификаторами, которые можно подобрать.
- Используйте случайные идентификаторы.