排除1:HTTP_REFERER
原因:可以进行伪造,而且只能用于herf='#',可用性实在不高排除2:加入SESSION和隐藏域随机key
原因:例如打开第一个A页面,A页面的SESSION=1以及INPUT的value=1。
      再次打开第二个A页面,A页面的SESSION=2以及INPUT的value=2。
      结果第一次打开的A页面SESSION=2了,也就代表了第一次打开的A页面已经失效排除3:并行会话加入隐藏域随即key
原因:并行会话可以每次打开A页面都产生一个SESSION[name]或者COOKIES[name],比如每个用户打开5个相同的类似页面,就会产生5个不同的SESSION或者COOKIES,浪费资源。排除4:验证码
原因:用户体验不够好除了以上方法之外..还有更好的解决办法吗?

解决方案 »

  1.   

    amani11 ++,说的很在理,还是没明白lz说的外部提交什么个含义,是指类似curl这种模拟提交方式么?
    感觉你的几个排除跟外部提交没什么关系哦...
      

  2.   

    CSRF 还是做SESSION TOKEN吧
      

  3.   

    没有很好的办法 如amani11 所说服务器端的安全最重要
    HTTP Watch   Fiddler 等工具能轻易的改变发向服务端的数据
    我在你本站正常提交一次 分析下数据 然后就可以用工具模拟了