"Как повысить траффик на сайт с помощью контеста на CF" или "Вред и польза от картинок в комментариях и постах".

Правка ru7, от Proventus, 2019-01-09 15:39:17

Продолжая ковырять CF(мой прошлый пост), я вспомнил про возможность вложения картинок в посты и комментарии. Первой моей мыслью было — "Откуда codeforces.com их берёт?". Варианта было два — сохраняет на свой сервер, либо делает запрос по url. Выложив на бесплатный хостинг тестовую картинку и прикрепив её к посту, а потом удалив с сайта, я увидел, что изображение пропало. Из этого, я сделал вывод, что картинки берутся из url. Написав небольшой скрипт, который обычно используется для ловли cookie, я начал тест. Создав пост с url картинки, который указывал на мой скрипт с параметром GET cook=test(в этот момент файл на сервере содержал "reset"), и попробовав предпросмотр поста — файл на сервере переписался на "test". Получилось! Эта особенность позволяет нам, к примеру считать количество просмотров на посте.

Пример такого счётчика:

(Картинка-счётчик)

Количество просмотров(перезагрузки страниц и дубликаты картинок тоже считаются)

Однако, это может использоваться в дурных целей — например организации DDoS. Злоумышленник может создать коментарий к разбору задач с 10-20 картинками. Тогда, произойдёт (КоличествоОткрывшихРазбор * КоличествоКартинок)(примерно 30000) запросов на серевер.

Буду рад замечаниям и исправлением, как грамматических, так и технических ошибок.

Теги баг, #codeforces, изображение

История

 
 
 
 
Правки
 
 
  Rev. Язык Кто Когда Δ Комментарий
ru8 Русский Proventus 2019-01-10 15:12:09 18 Возвращено к ru6
ru7 Русский Proventus 2019-01-09 15:39:17 18 Мелкая правка: 'unter.php)\n\n[Коли' -> 'unter.php)(Картинка-счётчик)\n\n[Коли'
ru6 Русский Proventus 2019-01-09 15:17:57 863
ru5 Русский Proventus 2019-01-09 14:30:06 66 (опубликовано)
ru4 Русский Proventus 2019-01-09 14:27:05 16 Мелкая правка: 'в поста.\n![Именно' -> 'в поста.\n\n![Именно'
ru3 Русский Proventus 2019-01-09 14:23:44 342
ru2 Русский Proventus 2019-01-09 13:14:48 41
ru1 Русский Proventus 2019-01-09 13:02:27 1241 Первая редакция (сохранено в черновиках)