ЧатГПТ в гостях

Занимаюсь сейчас кешированием на сайте — одна из тех вещей, которую стоит отложить до реального использования движка. По мониторингу обнаружил, что у меня всё время растёт кеш одних и тех же страниц, хотя предполагалось, что для каждой страницы будет создаваться только одна копия.
Оказалось, что навайбкоженый кеш содержит один недостаток — любые GET-параметры порождают новую копию. Это, конечно, существенный дефект, который пришлось поправить, но интереснее другое — откуда берутся эти параметры?

Оказалось, что ко мне в гости захаживает бот нейросети ЧатГПТ, который обходит все ссылки, включая ссылку «ответить» в дереве комментариев. В норме она открывает при помощи ДжаваСкрипта форму ввода комментариев, но ЧатГПТ скрипты не выполняет, для него это обычная ссылка, у которой есть параметры — кому мы отвечаем, на какой комментарий и так далее. ЧатГПТ нажимает на каждую, засоряя мой кеш.
А поскольку ходит он с бешеной интенсивностью, сайт ещё и постоянно под нагрузкой — трудится, создавая кучу ненужных кешированных страниц. А я всё никак не мог понять почему у кеша такой низкий процент срабатываний.
HTTP-заголовки бота ChatGPT, посещавшего блог и оставлявшего следы в кеше сайта.
Бот нейросети «ChatGPT» у меня в гостях

Читайте также

Посещал ли пользователь сайт?
Атака не работает — в браузерах давно реализована защита, у меня идея «сработала» в силу того, что я не выполнил все необходимые проверки. В прошлом было достаточно много методов определить ходил ли пользовать на какой-то сайт или нет.
2024

Комментарии 6

SiMMmr E16/NR04δ13 № 1
В норме она открывает при помощи ДжаваСкрипта форму ввода комментариев, но ЧатГПТ скрипты не выполняет, для него это обычная ссылка, у которой есть параметры — кому мы отвечаем, на какой комментарий и так далее.

а JS их тоже GET'ом передаёт?
PS: в новомодно отформатированных текстах телеграм не имеет возможности использовать частичное цитирование 🤷🏻‍♂️
Евгений Степанищев автор № 3
В JS их просто нет, зачем они? Это же fallback на случай, если js не сработал
SiMMmr E16/NR04δ13 № 5
как-то же надо передать эти параметры по нажатию «отправить» — либо POST'ом, либо добавить к URI 🤷‍♂️
ЧатГПТ скрипты не выполняет, для него это обычная ссылка, у которой есть параметры

вообще это был намёк — а чего бы эти параметры POST'ом не передать, ежели в них есть необходимость? пауки, насколько понимаю, не POSTят, правда после POST понадобится редирект — и тогда уже будет вопрос не о поддержке на клиенте JS, а о включенных куках )
Евгений Степанищев автор № 6
Отправка самого комментария постом идёт, а если тут пост сделать — будет костыль.

Решилось очень просто — во-первых, на все подряд GET-параметры реагировать не надо вообще, так любой атакующий мне диск переполнит, а во-вторых, тут ещё кеши писать вообще не нужно — контент-то не меняется вовсе
Fedir Ustynov № 2
Для информации — на гмейл ссылка не приходит.
Евгений Степанищев автор № 4
Так-так… Я что-то смутно помню, что и раньше они туда не приходили, пришлось почту на сайте поменять. Надо бы разобраться с этой проблемой, если это возможно.