CSRF освобождается для размещения на iphone на сайте Django - PullRequest
0 голосов
/ 15 июня 2011

У меня есть веб-форма, которую пользователи используют для публикации на моем сайте.Я хотел бы использовать то же представление django для обработки почтовых запросов, сделанных iPhone.Так как в Django установлено промежуточное программное обеспечение CSRF, приложение для iPhone не может публиковать сообщения.Я прочитал несколько постов, и они упоминают, чтобы сделать csrf освобожденным для конкретного вида.Это стандартное решение?Означает ли это, что все сайты, которые позволяют пользователям размещать сообщения через iphone, уязвимы для атак csrf?

1 Ответ

2 голосов
/ 15 июня 2011

Любая форма, которую может опубликовать машина (например, приложение для iOS), подвержена CSRF.

Обойти это невозможно.Если вы можете закодировать его в Objective-C, кто-то другой может закодировать его в JS.

«Стандартный» способ решить эту проблему - создать отдельный API для iPhone.Пользователи заполняют форму и отправляют ее.IPhone общается напрямую с выделенным API и полностью обходит форму.

Чтобы защитить iPhone от несанкционированного доступа, у вас есть два основных варианта:

1) Отправлять запросы API через HTTPS и парользащитите их

2) Вставьте SSL-сертификат в ваше приложение и выполните SSL-рукопожатие с двусторонней аутентификацией между устройством и сервером.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...