• 技术文章 >后端开发 >php教程

    PHP漏洞详解_PHP教程

    2016-07-13 17:43:19原创683
      几个重要的php.ini选项

      Register Globals

      php>=4.2.0,php.ini的register_globals选项的默认值预设为Off,当register_globals的设定为On时,程序可以接收来自服务器的各种环境变量,包括表单提交的变量,而且由于PHP不必事先初始化变量的值,从而导致很大的安全隐患.

      例1:

      //check_admin()用于检查当前用户权限,如果是admin设置$is_admin变量为true,然后下面判断此变量是否为true,然后执行管理的一些操作

      //ex1.php

      

      if (check_admin())

      {

      $is_admin = true;

      }

      if ($is_admin)

      {

      do_something();

      }

      ?>

      这一段代码没有将$is_admin事先初始化为Flase,如果register_globals为On,那么我们直接提交 http://www.sectop.com/ex1.php?is_admin=true,就可以绕过check_admin()的验证

      例2:

      //ex2.php

      

      if (isset($_SESSION["username"]))

      {

      do_something();

      }

      else

      {

      echo "您尚未登录!";

      }

      ?>

      //ex1.php

      

      $dir = $_GET["dir"];

      if (isset($dir))

      {

      echo "

    ";

      system("ls -al ".$dir);

      echo "

    ";

      }

      ?>

      

    \

      mixed eval(string code_str) //eval注入一般发生在攻击者能控制输入的字符串的时候

      //ex2.php

      

      $var = "var";

      if (isset($_GET["arg"]))

      {

      $arg = $_GET["arg"];

      eval("$var = $arg;");

      echo "$var =".$var;

      }

      ?>

      

    \

    www.bkjia.comtruehttp://www.bkjia.com/PHPjc/486002.htmlTechArticle几个重要的php.ini选项 Register Globals php=4.2.0,php.ini的register_globals选项的默认值预设为Off,当register_globals的设定为On时,程序可以接收来自服务器...

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:PHP 漏洞 详解 几个 重要的 php.ini 选项 Register Globals php 4.2.0 reg
    上一篇:PHP获取IP、IP所在地址与连接数实例代码_PHP教程 下一篇:PHP操作MongoDB时的整数问题及对策_PHP教程
    20期PHP线上班

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• PHP如何使用xlswriter进行大数据的导入导出?(详解)• 自动跳转中英文页面_PHP教程• PHP5的XML新特性_PHP教程• 深入浅析php json 格式控制• PHP开发经验总结
    1/1

    PHP中文网