- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PPT研究院 POWERPOINT ACADEMY * * 《PHP程序设计》 --教师姓名 */15 第15讲 PHP安全与加密技术 教师姓名 教研室名称 2012年01月01日 机械工业出版社 1. PHP漏洞与防护措施 2. PHP数据加密技术 内容要点 CONTENTS 在网络系统中,最容易遭到攻击的就是文件系统,虽然PHP的目录,以及文件安全机制非常完善,但是有关于路径或操作文件的动作,还是可以被利用。本节将介绍一些关于文件系统的安全问题,并提出解决方案。 1. PHP漏洞与防护措施 1) 文件系统 如果代码中关于文件系统的操作不够安全,就会被利用来删除服务器上的文件,下面演示的是一段不安全的代码,如果在脚本中使用了这段代码,很可能被利用来操作服务器上的文件,演示代码如清单所示。 //不安全的代码 ?php //处理表单变量 $dir = $_POST[dirName]; $file = $_POST[fileName]; unlink($dir.“/”.$file); //删除指定文件夹下的文件 echo 删除文件成功! ; ? 2) 外部变量产生的安全问题 1. PHP漏洞与防护措施 使用包含文件功能,对于编写代码来说有很多好处,但是如果不正确的使用,也能带来安全方面的问题,下面演示一段代码,用于说明包含文件带来的安全问题,代码如清单所示。 //特殊字符攻击 ?php //处理外部变量 $file = $_GET[fileName]; //检查文件是否存在 if(file_exists(c:/www/home/.$file./.php)) { //如果文件存在,就包含这个文件 include c:/www/home/.$file./.php; } ? 3) 特殊字符攻击 1. PHP漏洞与防护措施 使用数据库的超级用户帐号,可以任意执行数据操作,例如:删除数据,清空表,删除表,删除数据库等。这些操作都是非常危险的,都会直接影响到数据库中存储的数据。 在实际应用中,尽量不要使用超级用户来操作数据库,推荐新建受限用户,来管理对应的数据库。如果使用受限用用户操作数据库,即使非法用户通过代码取得了这个用户的操作权限,也不会产生大的损失。 受限用户的权限,可以根据程序的要求来设置,如果程序只是用来查询数据,那么受限用户的权限只设置为查询权限,就可以满足要求了。 4) 数据库权限与安全 1. PHP漏洞与防护措施 在代码中操作数据库,都是通过SQL语句完成的,通常SQL语句都是在编写代码时,写在了脚本中,以此来看SQL语句不会产生安全问题。但许多关于数据库方面的安全问题,都是由SQL引起的。SQL注入是非法用户最经常使用的侵入手段,在一些需要变量组成的SQL语句中,如果不采取防范措施,很容易被非法用户利用,下面演示一段不安全的代码,代码如清单所示。 5) SQL注入与防范 1. PHP漏洞与防护措施 PHP注入的基本原理 程序员的水平及经验也参差不齐,相当大一部分程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据库查询代码,根据程序返回的结果,获得某些他想得知的数据,这就是所谓的SQL Injection,即SQL注入。 受影响的系统:对输入的参数不进行检查和过滤的系统 SQL注入过程 正常来讲,我们通过地址接收一些必要的参数如: PHP100.php?id=2 页面中我们会使用 2 写入到SQL语句中 正常情况:Select * From Table where id=2 如果我们对SQL语句熟悉,就知道2 我们可以替换成我们需要的SQL语句 如:and exists (select id from admin) 1. PHP漏洞与防护措施 5) SQL注入与防范 2、防止注入的几种办法 其实原来就是我们需要过滤一些我们常见的关键字和符合如: Select,insert,update,delete,and,*,等等 例子 function inject_check($sql_str) { return eregi(select|insert|update|delete|\|\/\*|\*|\.\.\/|\.\/|union|into|load_file |outfile, $sql_str); // 进行过滤 } 或者是通过系统函数间的过滤特殊符号 Addslashes(需要被过滤的内容) 1. PHP漏洞与防护措施 5) SQL注入与防范 PHP语言本身,以及数据库软件,在安全方面的措施已经很全面了,而产生安全问题最多的,就在于代码本身。
您可能关注的文档
- PHP+MySQL网站开发技术项目式唐俊6.1诚信管理论坛用户管理模块设计与实现课件教学.ppt
- PHP编程基础与实例教程工业和信息化普通高等教育“十二五”规划教材立项项孔祥盛1课件教学.ppt
- PHP编程基础与实例教程工业和信息化普通高等教育“十二五”规划教材立项项孔祥盛2课件教学.ppt
- PHP编程基础与实例教程工业和信息化普通高等教育“十二五”规划教材立项项孔祥盛3课件教学.ppt
- PHP编程基础与实例教程工业和信息化普通高等教育“十二五”规划教材立项项孔祥盛4课件教学.ppt
- PHP编程基础与实例教程工业和信息化普通高等教育“十二五”规划教材立项项孔祥盛5课件教学.ppt
- PHP编程基础与实例教程工业和信息化普通高等教育“十二五”规划教材立项项孔祥盛6课件教学.ppt
- PHP编程基础与实例教程工业和信息化普通高等教育“十二五”规划教材立项项孔祥盛7课件教学.ppt
- PHP编程基础与实例教程工业和信息化普通高等教育“十二五”规划教材立项项孔祥盛8课件教学.ppt
- PHP编程基础与实例教程工业和信息化普通高等教育“十二五”规划教材立项项孔祥盛9课件教学.ppt
- PHP和MySQLWeb应用开发刘乃琦李忠第1章课件教学.ppt
- PHP和MySQLWeb应用开发刘乃琦李忠第2章课件教学.ppt
- PHP和MySQLWeb应用开发刘乃琦李忠第3章课件教学.ppt
- PHP和MySQLWeb应用开发刘乃琦李忠第4章课件教学.ppt
- PHP和MySQLWeb应用开发刘乃琦李忠第5章课件教学.ppt
- PHP和MySQLWeb应用开发刘乃琦李忠第6章课件教学.ppt
- PHP和MySQLWeb应用开发刘乃琦李忠第7章课件教学.ppt
- PHP和MySQLWeb应用开发刘乃琦李忠第8章课件教学.ppt
- PHP和MySQLWeb应用开发刘乃琦李忠第9章课件教学.ppt
- PHP和MySQLWeb应用开发刘乃琦李忠第10章课件教学.ppt
最近下载
- 海尔精密空调样册20230310.pdf
- 长沙理工大学大学物理练习册答案(全解)平台原因,预览不清楚,下载后保证可以清楚的阅读.pdf VIP
- 六味和正早餐糊手册内容定稿.pdf VIP
- 主变压器安装监理实施细则.doc VIP
- 海尔水冷磁悬浮样册20241109.pdf
- 安徽—夏凯月—课件—直线的倾斜角与斜率.pptx VIP
- 中级茶艺师操作技能考核评分记录表(20200810075301).pdf VIP
- 中级茶艺师操作技能考核评分学习记录标准表格格.docx VIP
- 中级茶艺师操作技能考核评分记录表.docx VIP
- 中考生物总复习 七上 第1单元 第5章 生物的分类和鉴别教材考点梳理课件 冀教版.pptx VIP
文档评论(0)