需要注意的几个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预定义常量
Dec 25 PHP
PHP5中的时间相差8小时的解决办法
Mar 28 PHP
php cache类代码(php数据缓存类)
Apr 15 PHP
php设计模式 Singleton(单例模式)
Jun 26 PHP
php获取文件内容最后一行示例
Jan 09 PHP
php遍历文件夹和文件列表示例分享
Mar 11 PHP
php简单统计中文个数的方法
Sep 30 PHP
php基于单例模式封装mysql类完整实例
Oct 18 PHP
PHP仿微信发红包领红包效果
Oct 30 PHP
php 遍历目录,生成目录下每个文件的md5值并写入到结果文件中
Dec 12 PHP
laravel 5.3中自定义加密服务的方案详解
May 09 PHP
PHP连续签到功能实现方法详解
Dec 04 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
Protoss兵种对照表
2020/03/14 星际争霸
Apache设置虚拟WEB
2006/10/09 PHP
PHP脚本的10个技巧(1)
2006/10/09 PHP
PHP实现网上点歌(二)
2006/10/09 PHP
增加反向链接的101个方法 站长推荐
2007/01/31 PHP
解决MySQL中文输出变成问号的问题
2008/06/05 PHP
php实现的用户查询类实例
2015/06/18 PHP
Thinkphp5.0自动生成模块及目录的方法详解
2017/04/17 PHP
PHP培训要多少钱
2017/06/06 PHP
js中格式化日期时间型数据函数代码
2010/11/08 Javascript
将json当数据库一样操作的javascript lib
2013/10/28 Javascript
JSuggest自动匹配下拉框使用方法(示例代码)
2013/12/27 Javascript
理解JS事件循环
2016/01/07 Javascript
谈一谈javascript中继承的多种方式
2016/02/19 Javascript
JQuery插件Marquee.js实现无缝滚动效果
2016/04/26 Javascript
ECMAScript6快速入手攻略
2016/07/18 Javascript
带你快速理解javascript中的事件模型
2017/08/14 Javascript
JS实现的视频弹幕效果示例
2018/08/17 Javascript
jQuery实现合并表格单元格中相同行操作示例
2019/01/28 jQuery
vue iview的菜单组件Mune 点击不高亮的解决方案
2019/11/01 Javascript
解决Vue在Tomcat8下部署页面不加载的问题
2019/11/12 Javascript
基于jQuery实现可编辑的表格
2019/12/11 jQuery
Python 数据结构之旋转链表
2017/02/25 Python
浅谈python 导入模块和解决文件句柄找不到问题
2018/12/15 Python
Python实现对特定列表进行从小到大排序操作示例
2019/02/11 Python
libreoffice python 操作word及excel文档的方法
2019/07/04 Python
PyCharm 配置远程python解释器和在本地修改服务器代码
2019/07/23 Python
属性与 @property 方法让你的python更高效
2020/09/21 Python
web页面录屏实现
2019/02/12 HTML / CSS
阻止移动设备(手机、pad)浏览器双击放大网页的方法
2014/06/03 HTML / CSS
HTML5中meta属性的使用方法
2016/02/29 HTML / CSS
50道外企软件测试面试题
2014/08/18 面试题
就业推荐自我鉴定
2013/10/06 职场文书
驻村工作先进事迹
2014/08/14 职场文书
员工担保书范本
2015/09/22 职场文书
会议开幕致辞怎么写
2016/03/03 职场文书