TO fangwei1(杨威利): 再详细说明一下或举个例子,可以吗? 谢谢!

解决方案 »

  1.   

    不会有什么大的安全问题,管理员说的对,只要程序里写的没问题,不会因为仅仅打开register_globals就有问题,个人认为你要在传递参数时注意特殊字符等等的安全过滤,例如%20 ../等等
      

  2.   

    http://community.csdn.net/Expert/TopicView.asp?id=3699537
      

  3.   

    不管什么变量,都用$_POST,$_GET,$_COOKIE等超全局变量,然后加个检查就没关系了,不要直接用表单过来的变量。比如:传过来xxx.php?username=admin类似的,对以下写法都无效了。
    程序里这么写:
    $username = $_POST['username'];// 就算GET方法传过来也会被重新赋值的
    if (check($username)/*检查一下*/)
    {
    }检查的时候特别要防止SQL注入
      

  4.   

    比如说,我在 a页面中用了 b.php?id=XX 的链接,当打开b.php页面时,首先检查session值,如果session不存在,则不显示页面b.php,这样会不会有安全因素呢?
      

  5.   

    id=xx 与session有什么关系?? 既然是id,那你就限定所接收的值必须都是数字,这样就不那么容易被注入了
      

  6.   

    TO fangwei1(杨威利): 不好意思,是我没表达清楚,我设置了session['name'],在进入b.php?id=xx时,先检查session['name']是否存在,如果不存在,则不显示b.php?id=xx页面内容,这样写有安全问题吗?
      

  7.   

    TO fangwei1(杨威利): 不好意思,是我没表达清楚,我设置了session['name'],在进入b.php?id=xx时,先检查session['name']是否存在,如果不存在,则不显示b.php?id=xx页面内容,这样写有安全问题吗?
    这样做不安全吧?
    如果别人注册是sesion,不管是不是对的都通过,比较不安全
    最好能够对它的session的值进行判断,重新去数据库匹配一下,确认是不是正确的