Страницу ты подгрузить сможешь из соображений юзер-френдли, но форму или сам токен я тебе просто не отдам
Согласись это равнозначно что:
Страницу ты подгрузить сможешь из соображений юзер-френдли, и даже форму отправишь, но что-то изменить, если мне не понравится реферер, я тебе просто не дам.
teddy пишет:
Эти корсы и фреймопшены
Первый прекрасно везде работает для аякса, второй -- для тех кто умеет, а остальные подтянутся позже.
Но речь не про них.
teddy пишет:
про наличие уязвимости в конечном счете
Токен аналогично уязвим.
teddy пишет:
А реферер - в большинстве CSRF атак обычно известен заранее
И что это дает, когда его не получится подменить?
Ну или расскажи мне историю успеха подмены реферера у аякса, формы, ссылки или фрейма.
teddy пишет:
сервер не должен зависеть от клиента в плане безопасности
Тогда за каким лядом ты прикручиваешь токены?
Нет, не так.
С чего ты взял что есть хоть какая-то клиентозависимая разница между реферером (который даже прописан в спецификации) и неспековым велосипедом (который еще и работает на более высоком уровне) в виде токенов?
Если в спеках сказано -- реферер, значит я в праве его ожидать, и слать лесом если мне что-то не понравилось.
А в вашем случае -- велосипеды, тысячи их.
teddy пишет:
безобидные настройки
ССЗБ.
Но, честное слово.
Если бы я разрабатывал что-то типа банковских платежей, то я бы применил все известные мне методы валидации, включая экзотику типа етагов, маустрекинга и ванпикселей.
Однако в этой вот дискуссии я повторю в сотый раз -- реферер, это все что нужно, т.к. он проще, а эффективность у него такая-же как и у токена.
При ресете попапа удаляй весь список классов, т.к. ты же не знаешь какой из них был установлен ранее.
Ну или записывай в св-во или в атрибут или в дату имя класса который устанавливался ранее.
Или вместо классов сделай кастомный атрибут типа:
Я не учился на программиста и курсы не проходил. По образованию телефонист. Работаю строителем
Да тут 90% форума такие.
Например я.
Неуч, рас.... (а, ну да, нельзя же), 9 кл вечерки, кем я только не работал, но дольше всего сантехником, и приходя вечером домой садился за изучение и мракобесие экспериментов.
Можешь мои первые мессаги почитать -- там же клоунада сплошная.
Какие советы?
Ковыряй и не останавливайся на пол пути.
Назвался груздем -- полезай в короб.
Какая разница куда ты (пост формы, экшн формы, срц фрейма) распихиваешь параметры?
Токен всеравно будет где-то в контексте запроса.
teddy пишет:
одноразовый/многоразовый
Да хоть полуразовый.
teddy пишет:
заголовки - произвольный текст
А токен это (само|недо|пере)произвольный текст?
teddy пишет:
дополнительно шаманить
Не надо ничего шаманить на стороне приложения кроме реферера.
Все остальное шаманицца в конфиге сервера: корс + фреймопшнс (ну ладно, можно и это впилить в приложение ради бомжей селящихся на шаредах)
Кстати, что мне помешает написать проверку реферера и для подгрузки списка пользаков?
(для меня это две строки кода в экшне, а в новой версии я впилю это сразу в базовую форму)
Социальная инженерия сразу обсерится, т.к. придется мазанную форму сначала бросить просто в админку, затем заставить кликнуть на список пользаков, а потом уже что-то делать с пользаком ))
Поделка вообще ни при чем. Не надо на ней заострять внимание.
Надо посмотреть и убедиться, что реферер защищает в той же степени, что и токен, только подход немного иной.
Аааа, так ты совсем о простых вещах.
Ну да, комментатор выше правильно показал -- если требуется вывалить большой кусок хтмл, то он должен быть хтмл, а не эхами.