Безопасность PHP с использованием POST вместо GET для защиты от XSRF?

У меня есть несколько URL-адресов, например http://mysite.com/module/45/set_name/new-name в моем приложении, которые предназначены для доступа с использованием ajax.

Чтобы предотвратить XSRF Я заставляю такой запрос быть запросом POST . С GET тривиально сгенерировать XSRF, используя следующее:

<img src="http://mysite.com/module/45/set_name/new-name"/>

Использование POST предотвращает эту конкретную атаку, но действительно ли это более безопасно, чем использование GET ? Если нет, что еще можно / нужно сделать?

Спасибо.


Изменить: Я использую CodeIgniter, и в моей конфигурации есть следующее:

$config['csrf_protection'] = TRUE;
$config['csrf_token_name'] = 'csrf_test_name';
$config['csrf_cookie_name'] = 'csrf_cookie_name';
$config['csrf_expire'] = 3600;

Я в безопасности? Есть ли недостатки в использовании CSRF? Кроме форм, срок действия которых истекает через час?

5
задан Matthew 13 March 2011 в 03:17
поделиться