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


Posted in PHP onFebruary 05, 2012

需要注意的几个PHP漏洞
几个重要的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 ""; 

} 

?>

需要注意的几个PHP漏洞小结 
 mixed eval(string code_str) //eval注入一般发生在攻击者能控制输入的字符串的时候

//ex2.php

$var = "var"; 

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

{ 

$arg = $_GET["arg"]; 

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

echo "$var =".$var; 

} 

?>

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

PHP 相关文章推荐
php下使用以下代码连接并测试
Apr 09 PHP
PHP5.2中date()函数显示时间与北京时间相差8小时的解决办法
May 28 PHP
php 批量生成html,txt文件的实现代码
Jun 26 PHP
php比较相似字符串的方法
Jun 05 PHP
PHP实现自动识别原编码并对字符串进行编码转换的方法
Jul 13 PHP
PHP大神的十大优良习惯
Sep 14 PHP
php文件类型MIME对照表(比较全)
Oct 07 PHP
遍历指定目录,并存储目录内所有文件属性信息的php代码
Oct 28 PHP
Yii2框架BootStrap样式的深入理解
Nov 07 PHP
Yii2中使用asset压缩js,css文件的方法
Nov 24 PHP
PHP检查文件是否存在,不存在自动创建及读取文件内容操作示例
Jan 23 PHP
PHP如何使用array_unshift()在数组开头插入元素
Sep 01 PHP
PHP的可变变量名的使用方法分享
Feb 05 #PHP
PHP中如何判断AJAX提交的数据
Feb 05 #PHP
用PHP书写安全的脚本代码
Feb 05 #PHP
PHP中register_globals参数为OFF和ON的区别(register_globals 使用详解)
Feb 05 #PHP
PHP中使用数组实现堆栈数据结构的代码
Feb 05 #PHP
PHP使用数组实现队列
Feb 05 #PHP
mysql数据库差异比较的PHP代码
Feb 05 #PHP
You might like
ThinkPHP路由详解
2015/07/27 PHP
Prototype PeriodicalExecuter对象 学习
2009/07/19 Javascript
一个JS小玩意 几个属性相加不能超过一个特定值.
2009/09/29 Javascript
js自定义事件代码说明
2011/01/31 Javascript
JavaScript调用后台的三种方法实例
2013/10/17 Javascript
Node.js(安装,启动,测试)
2014/06/09 Javascript
用js通过url传参把数据从一个页面传到另一个页面
2014/09/01 Javascript
jQuery实现鼠标滑过Div层背景变颜色的方法
2015/02/17 Javascript
vue2手机APP项目添加开屏广告或者闪屏广告
2017/11/28 Javascript
jQuery NProgress.js加载进度插件的简单使用方法
2018/01/31 jQuery
vue+vant-UI框架实现购物车的复选框全选和反选功能
2019/11/05 Javascript
vue自定义正在加载动画的例子
2019/11/14 Javascript
JavaScript实现弹出窗口效果
2020/12/09 Javascript
vue实现登录功能
2020/12/31 Vue.js
python复制文件代码实现
2013/12/23 Python
Python中os和shutil模块实用方法集锦
2014/05/13 Python
python爬虫之urllib库常用方法用法总结大全
2018/11/14 Python
python 画三维图像 曲面图和散点图的示例
2018/12/29 Python
python实现感知器算法(批处理)
2019/01/18 Python
linux安装python修改默认python版本方法
2019/03/31 Python
如何用Python破解wifi密码过程详解
2019/07/12 Python
python+OpenCV实现图像拼接
2020/03/05 Python
CSS3轻松实现清新 Loading 效果的简单实例
2016/06/06 HTML / CSS
一款纯css3实现的tab选项卡的实列教程
2014/12/11 HTML / CSS
CSS3 :not()选择器实现最后一行li去除某种css样式
2016/10/19 HTML / CSS
英国精品买手店:Browns Fashion
2016/09/29 全球购物
VICHY薇姿英国官网:全球专业敏感肌护肤领先品牌
2017/07/04 全球购物
同程旅游英文网站:LY.com
2018/11/13 全球购物
上海奥佳笔试题面试题
2016/11/16 面试题
优秀学生获奖感言
2014/02/15 职场文书
企业文化标语大全
2014/06/10 职场文书
计生办班子群众路线教育实践活动个人对照检查材料思想汇报
2014/10/04 职场文书
亮剑精神观后感
2015/06/05 职场文书
浅谈pytorch中stack和cat的及to_tensor的坑
2021/05/20 Python
MySQL 存储过程的优缺点分析
2021/05/20 MySQL
vue实现滑动解锁功能
2022/03/03 Vue.js