Блог пользователя Nurseiit

Автор Nurseiit, 7 лет назад, По-русски

Добрый день, Codeforces!

Совсем недавно, во время раунда Tinkoff Challenge — Финал, случайным образом я наткнулся на очень интересный баг в системе. Интересный потомучто простым смертным контестантам с помощью него можно в каком-то роде почуствовать себя менеджерами!

Разумеется я сразу же написал Михаилу MikeMirzayanov. Но к большому сожалению, он еще не прочитал мое сообщение. И вот решил с вами поделиться ею.
Ну и конечно, делюсь не потомучто хочу чтобы пользовались, а наоборот чтобы побыстрее исправили его!

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

Во первых, в основной странице контеста в группе появились какие-то странные красные надписи, на которые я сразу не обратил внимания.

Лишь потом понял что система кларов раунда, и моего контеста конфликтуют — решил разобраться в чем дело и за одно повеселиться.
Первым делом, хотел сделать общее оповещение — не вышло, так как можно только по определенной задаче оповещать и у меня задач с раунда в списке не было. Думал что на этом все и лишь клары читать могу. Но нет! Оказалось что и публиковать/скрывать клары можно.


И вот результат:

А дальше, любопытный я сразу же хотел попробовать проверить ответить на клар — к сожалению или к счастью, как бы я тщательно не пытался кнопка отправить никак не нажималась.


За несколько секунд до конца контеста я вернул все как было, т.е. скрыл все клары которые я публиковал. И к моему удивлению, после контеста все вышесказанные баги/фичи остались как есть.
Как я и говорил в начале поста, я сразу решил что лучше написать Михаилу. А чтобы он мне поверил, я опубликовал единственный клар в котором говорится что кто-то кого-то подозрительно взламывает. На этом мои исследования подошли к концу, хотя все еще могу покопаться в том что осталось после раунда.

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

Всем добра!

Обновление: эта уязвимость больше не актуальна. По крайней мере мне не удалось воссоздать предыдущие обстоятельства. К моему удивлению не смотря на то что клар, мною ранее опубликованный, все еще виден, все вышесказанные возможности теперь не доступны.

Чтож, кажется это все же долгожданный конец моего поста.
Я искренне рад что мне посчастливилось еще больше улучшить нашу всеми любимую систему codeforces!

Всем удачи!

  • Проголосовать: нравится
  • +171
  • Проголосовать: не нравится

»
7 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

УПД. Как я и думал, оповещения были не только локальными, как можно заметить по этому комменту.

»
7 лет назад, # |
Rev. 2   Проголосовать: нравится +84 Проголосовать: не нравится

Я рекомендую скрыть пост в черновики.

Реагировать за сутки-двое на любое сообщение, приходящее в личку (а их, я думаю, конкретно Майку приходит очень много), мне кажется, нереалистично.

Подождите хотя бы неделю, а лучше — несколько месяцев (у Google политика — 90 дней); в это время пробуйте связаться другими способами. Например, через ВК/Facebook/других сотрудников Codeforces/координаторов раундов...

  • »
    »
    7 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится +17 Проголосовать: не нравится

    Да, пожалуй вы правы, но по моему баг этот не слишком уж и критичен.
    Тем более ближайший контест не является рейтинговым.

  • »
    »
    7 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    Хз что тебя заминусовали, по-моему всё правильно сказал. Надо делать как принято.

    • »
      »
      »
      7 лет назад, # ^ |
        Проголосовать: нравится +11 Проголосовать: не нравится

      Тоже не понял почему минусуют, но уже как-бы поздно: как минимум 70 людей про это уже знают. Надо теперь быстрей исправлять :-P

»
7 лет назад, # |
  Проголосовать: нравится +12 Проголосовать: не нравится

Кодфорсец не усвоил урок прошлого лета....

пы-сы кто не понел тот поймет