如何防止模拟的http的恶意请求?
我有一串URL www.abc.com?para=xxx
在页面中点击按钮后用ajax执行此URL后,后台会执行一些操作,页面通过ajax的响应结果继续完成接下来的操作。这里是没登录的情况下,没有用户标志这种session的。
但是如果遇到懂程序的人,如果发现了这个接口的调用方法,就可以使用一些Http模拟提交的工具来请求这个接口,从而引发系统安全问题。
我不想通过IP进行访问次数和访问时间的限制,同样不想使用验证码,这样很影响用户使用的体验。
用HTTP_REFERER来判断HTTP来路,也不可靠,有没有什么更好的办法比较有效地阻止这种行为?
Shiina氏
11 years, 12 months ago
Answers
之前写过一篇文章《 CSRF: 不要低估了我的危害和攻击能力 》,比较长,就不贴过来了,需要的自己过去看~
大致总结如下,总体来说,预防CSRF主要从2个方面入手,分别是:
1、正确使用GET,POST和Cookie;
2、在non-GET请求中使用Security token;
传说中的神ID
answered 11 years, 12 months ago