找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 104|回复: 0
打印 上一主题 下一主题

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

[复制链接]

2647

主题

2647

帖子

7881

积分

论坛元老

Rank: 8Rank: 8

积分
7881
跳转到指定楼层
楼主
发表于 2018-2-14 08:31:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            需要注意的几个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 "";
  }
  ?>



 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;
  }
  ?>


            
            
您可能感兴趣的文章:
  • PHP 小心urldecode引发的SQL注入漏洞
  • PHP代码网站如何防范SQL注入漏洞攻击建议分享
  • PHP漏洞全解(详细介绍)
  • php漏洞之跨网站请求伪造与防止伪造方法
  • php中sql注入漏洞示例 sql注入漏洞修复
  • PHP程序漏洞产生的原因分析与防范方法说明
  • php is_numberic函数造成的SQL注入漏洞
  • php5系列的apache远程执行漏洞攻击脚本
  • 对于ThinkPHP框架早期版本的一个SQL注入漏洞详细分析
  • ThinkPHP框架任意代码执行漏洞的利用及其修复方法
  • PHP编程中的常见漏洞和代码实例
  • php中Y2K38的漏洞解决方法实例分析
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端