用户提交的数据

用户提交的数据
52jyhcc
52jyhcc
392
阅读
1
评论
2021年12月03日20:34:11 1 392

用户提交的数据

很多 PHP 程序所存在的重大弱点并不是 PHP 语言本身的问题,而是编程者的安全意识不高而导致的。因此,必须时时注意每一段代码可能存在的问题,去发现非正确数据提交时可能造成的影响。 

Example #1 危险的变量用法

<?php

// 从用户目录中删除一个文件,或者……能删除更多的东西?

unlink ($evil_var);

// 记录用户的登陆,或者……能否在 /etc/passwd 添加数据?

fwrite ($fp, $evil_var);

// 执行一些普通的命令,或者……可以执行 rm -rf * ?

system ($evil_var);

exec ($evil_var);

?>  

必须时常留意你的代码,以确保每一个从客户端提交的变量都经过适当的检查,然后问自己以下一些问题: 

◾ 此脚本是否只能影响所预期的文件?  

◾ 非正常的数据被提交后能否产生作用?  

◾ 此脚本能用于计划外的用途吗?  

◾ 此脚本能否和其它脚本结合起来做坏事?  

◾ 是否所有的事务都被充分记录了?  

在写代码的时候问自己这些问题,否则以后可能要为了增加安全性而重写代码了。注意了这些问题的话,也许还不完全能保证系统的安全,但是至少可以提高安全性。 

还可以考虑关闭 register_globals,magic_quotes 或者其它使编程更方便但会使某个变量的合法性,来源和其值被搞乱的设置。在开发时,可以使用 error_reporting(E_ALL) 模式帮助检查变量使用前是否有被检查或被初始化,这样就可以防止某些非正常的数据的挠乱了。 

打赏 点赞(0)
weinxin
微信客服
问题+文章链接地址,发送到此微信:tourism52咨询处理。
历史上的今天
12月
04
$globals 菜鸟教程

$GLOBALS

$GLOBALS$GLOBALS — 引用全局作用域中可用的全部变量说明一个包含了全部变量的全局组合数组。变量的名字就是数组的键。 范例Example #1 $GLOBA...
2019,年,最好,用的,JavaScript,图表,库,2019,年, 菜鸟教程

2019 年最好用的 JavaScript 图表库

2019 年最好用的 JavaScript 图表库 大数据时代,收集和使用数据的需求正在爆发式增长,数据可视化也变得愈加重要。开发人员在想方设法将不同数据库中的记录整合到仪表板和漂...
WMLScript,compare,函数,WMLScript,compare,函数,比较, 菜鸟教程

WMLScript compare() 函数

WMLScript compare() 函数 compare() 函数比较两个字符串,并返回一个表示比较结果的值。 compare() 函数可返回下列值: -1 (if strin...

评论列表 共有 1 条评论

Bestime 6月前 回复TA

一个知道自己要什么的人他要的一定是符合自己性情秉性的东西因为不知道自己要什么然后看看别人他有我没有就焦虑了唯有内心富有充盈方能从容抵抗世间所有的不安和躁动