Недавно я обнаружил огромную проблему безопасности в моей системе PM, которая позволяет пользователи могут отправлять сообщения столько, сколько они хотят с помощью цикла для
в адресной строке. Кто-то поместил это в адресную строку:
javascript:for(x=0;x<10000;x++){ $('#compose form').submit(); }
И сообщение было отправлено мне 1000 раз, и мой почтовый ящик был заполнен того же сообщения, и моя база данных была настолько заполнена, что phpMyAdmin очень тормозил.
Мой вопрос: как я могу предотвратить это? Это серьезная проблема.
Кроме того, форма имеет вид отправлено с помощью AJAX.
Изменить:
Я использую PHP, как мне этого избежать? Например, как я могу добраться туда, где сообщение может быть отправлено только каждые 5 минут или около того, и если они отправят более одного в течение 5 минут, он отобразит ошибку (или вообще не покажет никаких отзывов пользователей и просто остановит их отправку. )?