WEB安全及PHP安全基础详解课件.ppt

  1. 1、本文档共29页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
WEB安全;Web安全定义;攻击手段 1、SQL注入:即通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令,比如先前的很多影视网站泄露VIP会员密码大多就是通过WEB表单递交查询字符暴出的,这类表单特别容易受到SQL注入式攻击。 2、跨站脚本攻击(也称为XSS):指利用网站漏洞从用户那里恶意盗取信息。用户在浏览网站、使用即时通讯软件、甚至在阅读电子邮件时,通常会点击其中的链接。攻击者通过在链接中插入恶意代码,就能够盗取用户信息。 3、网页挂马:把一个木马程序上传到一个网站里面然后用木马生成器生一个网马,再上到空间里面,再加代码使得木马在打开网页里运行。 4、DNS攻击:黑客使用常见的洪水攻击,阻击DNS服务器,导致DNS服务器无法正常工作,从而达到域名解析失败,造成网站无法访问。 ;应用攻击 1、缓冲区溢出——攻击者利用超出缓冲区大小的请求和构造的二进制代码让服务器执行溢出堆栈中的恶意指令。 2、Cookie假冒——精心修改cookie数据进行用户假冒。 3、认证逃避——攻击者利用不安全的证书和身份管理。 4、非法输入——在动态网页的输入中使用各种非法数据,获取服务器敏感数据。 5、强制访问——访问未授权的网页。 6、隐藏变量篡改——对网页中的隐藏变量进行修改,欺骗服务器程序。 7、拒绝服务攻击——构造大量的非法请求,使Web服务器不能响应正常用户的访问。 8、跨站脚本攻击——提交非法脚本,其他用户浏览时盗取用户帐号等信息。 9、SQL注入——构造SQL代码让服务器执行,获取敏感数据。 10、URL 访问限制失效——黑客可以访问非授权的资源连接强行访问一些登陆网页、历史网页。 11、被破坏的认证和 Session 管理——Session token 没有被很好的保护 在用户推出系统后,黑客能够盗窃 session。 12、DNS攻击——黑客利用DNS漏洞进行欺骗DNS服务器,从而达到使DNS解析不正常,IP地址被转向导致网站服务器无法正常打开。;章;2、原则 深度防范 坚持深度防范原则要求您时刻有一个备份方案。如果一个安全措施失效了,必须有另外一个提供一些保护。尽管深度防范是一个合理的原则,但是过度地增加安全措施只能增加成本和降低价值。 最小权限 不必要的授权会加大你的风险,即使是增加了很小权限也会如此。风险最小化是安全程序开发的主要组成部分。 简单就是美 复杂容易滋生错误,错误能导致安全漏洞。能很简单明了的,就不要写的太复杂。 暴露的最小化 数据暴露不一定就意味着安全风险。可是数据暴露必须尽量最小化。为了降低对敏感数据的暴露率,你必须确认什么数据是敏感的,同时跟踪它,并消除所有不必要的数据暴露。;3、方法 平衡风险与可用性 用户操作的友好性与安全措施是一对矛盾,在提高安全性的同时,通常会降低可用性。在你为不合逻辑的使用者写代码时,必须要考虑到符合逻辑的正常使用者。要达到适当的平衡的确很难,但是你必须去做好它。 跟踪数据 在审核PHP代码是否有安全漏洞时,主要检查代码中与外部系统交互的部分,最重要的一件事就是随时跟踪数据。不只是要知道它是什么和它在哪里,还要知道它从哪里来,要到哪里去。 过滤输入 过滤是Web应用安全的基础。它是你验证数据合法性的过程。通过在输入时确认对所有的数据进行过滤,你可以避免被污染(未过滤)数据在你的程序中被误信及误用。大多数流行的PHP应用的漏洞最终都是因为没有对输入进行恰当过滤造成的。 输入转义 输出转义具体分为三步: l ? ? ? ?识别输出 l ? ? ? ?输出转义 l ? ? ? ?区分已转义与未转义数据;章;1、表单与数据 任何来自远程数据源的数据都是输入,而所有的输入数据都是被污染的,必须在要在使用前对其进行过滤。 2、语义url攻击 这类攻击主要包括对URL进行编辑以至发现一些有趣的事情。 例如,如果用户chris点击了你的软件中的一个链接并到达了页面/private.php?user=chris, 很自然地他可能会试图改变user的值,看看会发生什么。例如,他可能访问/private.php?user=admin来看一下他是否能看到其他人的信息。对用户输入的不信任做法是防止你的应用产生漏洞的关键。;3、文件上传攻击 比如:隐藏的表单变量MAX_FILE_SIZE告诉了浏览器最大允许上传的文件大小。与很多客户端限制相同,这一限制很容易被攻击者绕开,但它可以为合法用户提供向导。在服务器上进行该限制才是可靠的。 它可以让访问者在服务器上放置(即上传)文件。这会造成例如,删除服务器文件、数据库,获取用户信息等一系列问题。你可以使用PHP来禁止文件上传,或编写更安全的代码(如检验用户输入,只允许上传png、gif这

您可能关注的文档

文档评论(0)

laolingdao1a + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档