php开发安全问题总结-编程小技巧

php开发安全问题总结-编程小技巧

ID:30789854

大小:105.50 KB

页数:3页

时间:2019-01-03

php开发安全问题总结-编程小技巧_第1页
php开发安全问题总结-编程小技巧_第2页
php开发安全问题总结-编程小技巧_第3页
资源描述:

《php开发安全问题总结-编程小技巧》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、PHP开发安全问题总结php给了开发者极大的灵活性,但是这也为安全问题带來了潜在的隐患,近期需要总结一下以往的问题,在这里借翻译一篇文章同时加上自己开发的一些感触总结一下。简介当开发一个互联网服务的时候,必须时刻牢记安全观念,并在开发的代码中体现。P11P脚本语言对安全问题并不关心,特别是对大多数没有经验的开发者来说。每当你讲任何涉及到钱财事务等交易问题时,需要特别注意安全问题的考虑,例如开发一个论坛或者是一个购物车等。安全保护一般性要点•不相信表单对于一般的Javascript前台验证,由于无法得知用户的彳亍为

2、,例如关闭了浏览器的javascript引擎,这样通过POST恶意数据到服务器。需要在服务器端进行验证,对每个php脚木验证传递到的数据,防止XSS攻击和SQL注入•不相信用户要假设你的网站接收的每一条数据都是存在恶意代码的,存在隐藏的威胁,要对每一条数据都进行清理•关闭全局变量在php.ini文件中进行以下配置:registerglobals=Off如果这个配置选项打开之后,会出现很大的安全隐患。例如有一个process,php的脚木文件,会将接收到的数据插入到数据库,接收用户输入数据的表单可能如下:

3、tname=,,username"type二"text"size二〃15〃maxlength二〃64">这样,当提交数据到process,phpZ后,php会注册一个$username变量,将这个变量数据提交到process,php,同时对丁•任何POST或GET请求参数,都会设置这样的变量。如果不是显示进行初始化那么就会岀现下面的问题:

4、二true;}?>此处,假设authenticateduser函数就是判断$authorized变量的值,如果开Yregister_globals配冒,那么任何用户都可以发送一个请求,来设置$authorized变量的值为任意值从而就能绕过这个验证。所有的这些提交数据都应该通过PHP预定义内置的全局数组来获取,包括$_POST、$_GET、$_F1LES>$_SERVER、$_REQUEST等,其中$_REQUEST是一个$_GET/$_POST/$_COOKIE三个数组的联合变量,默认的顺序是$_COOKIE、

5、$_POST、$_GETo•推荐的安全配置选项crror_rcporting设置为Off:不要暴露错谋信息给用户,开发的时候可以设置为0"safemode设置为Offregister_globals设置为Off将以卜函数禁用:system、exec、passthru>shell_exec>proc_open^popenopen_basedir设置为/tmp,这样可以让session信息有存储权限,同吋设置单独的网站根目录cxposc_php设置为Offallowurlfopen设置为Offallowurlincl

6、ude设置为OffSQL注入攻击对于操作数据库的SQL语句,需要特别注意安全性,因为用户可能输入特定语句使得原有的SQL语句改变了功能。类似下面的例子:

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。