源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

需要注意的几个PHP漏洞小结

  • 时间:2021-05-10 04:27 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:需要注意的几个PHP漏洞小结
需要注意的几个PHP漏洞 几个重要的php.ini选项   Register Globals   php>=4.2.0,php.ini的register_globals选项的默认值预设为Off,当register_globals的设定为On时,程序可以接收来自服务器的各种环境变量,包括表单提交的变量,而且由于PHP不必事先初始化变量的值,从而导致很大的安全隐患.   例1:
[u]复制代码[/u] 代码如下:
  //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:
[u]复制代码[/u] 代码如下:
  //ex2.php      if (isset($_SESSION["username"]))   {   do_something();   }   else   {   echo "您尚未登录!";   }   ?>
[u]复制代码[/u] 代码如下:
  //ex1.php      $dir = $_GET["dir"];   if (isset($dir))   {   echo "";   system("ls -al ".$dir);   echo "";   }   ?>
[img]http://files.jb51.net/upload/201202/20120205214753738.jpg[/img]    mixed eval(string code_str) //eval注入一般发生在攻击者能控制输入的字符串的时候   //ex2.php
[u]复制代码[/u] 代码如下:
     $var = "var";   if (isset($_GET["arg"]))   {   $arg = $_GET["arg"];   eval("$var = $arg;");   echo "$var =".$var;   }   ?>
[img]http://files.jb51.net/upload/201202/20120205214753690.jpg[/img]
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部