从http头的referer参数中去取出来源地址

解决方案 »

  1.   

    问题不明确
    客户端post还是服务器对服务器post?
    如果客户端post无法防范,服务器对服务器可以根据post源的ip限制
      

  2.   

    客户端post的防范的方法目前只有验证码+referer
    不过这两者只能对付入门者,它们都可以伪造任意表单然后提交所以现在只要是接受post的程序,都是建立在假设客户端是老实人的基础上
    我不知道伪造post能造成多大风险,但的确让人不放心,但也无能为力
    如果对安全要求较高,只有细心处理post上来的每一个变量
      

  3.   

    回复人:zairwolfo(君子兰) ( 二级(初级)) 信誉:100  2005-09-22 09:35:00  得分:0

    对来源地址进行检测。
    请问唠叨,这样还怎么伪造?
    =================来源地址?referer??这个太容易伪造了吧。
      

  4.   

    呵呵验证码+referer应该可以防止的呵呵另外自己可以加一些其他的标识用来区分表单
    php程序可以随机出现绝对让他们无法伪造
      

  5.   

    php程序可以制造随机表单变量信息
    出现绝对让他们无法伪造
      

  6.   

    既然REFERE太好伪造,
    那就在FORM中隐藏一个密钥数据。在服务器验证密钥是否合法
    密钥的算法只须你知道,你可以根居日期,客户端IP,等等信息生成密钥
      

  7.   

    表单提交的机制是什么?
    浏览器把表单下载到你的硬盘,然后浏览器分析表单,加上你填写的变量,referer,浏览器版本等提交给服务器
    你觉得这个过程无懈可击吗?
    验证码只能防止机器人自动提交,不能防止人为的提交伪造数据。
      

  8.   

    不论你的form里隐藏多少密钥,它也是明文传送的,必须交给浏览器处理。
    只要伪造者得到密钥数据原样提交给服务器,其他变量还不是一样伪造?
      

  9.   

    https只保证传输过程中是安全的不会被第三者知晓你传递的内容
    但表单中的数据对于客户端和服务器没有任何影响。
    这种情况只能自己开发客户端,其实就是c/s模式
    浏览器只是通用浏览器,它本来或从来就不是为了安全或者电子商务之类设计的
      

  10.   

    客户端是明文,简单的检测接受是不能实现,借用类似https中的握手策略,用以确定来者身份
      

  11.   

    验证码是通过session里的某个值生成的
    表单提交之后服务器要验证提交过来的这个值是否和session里的值相同那么,session可以被伪造吗?
      

  12.   

    session不会被伪造,但随机算法不够强的话会造成session冲突
    我就遇到过,登录后两个人资料混了,session_id相同了“验证码是通过session里的某个值生成的
    表单提交之后服务器要验证提交过来的这个值是否和session里的值相同”验证码当然是输入正确的验证码,但验证码以外的变量可以通过重新构造表单提交给服务器这好像和楼主的问题扯太远了,打住