您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > WEB应用安全概述.ppt
WEB应用安全概述Web组成部分•服务器端(Web服务器):在服务器结构中规定了服务器的传输设定、信息传输格式及服务器本身的基本开放结构。•客户端(Web浏览器):客户端通常称为Web浏览器,用于向服务器发送资源请求,并将接收到的信息解码显示。•通讯协议(HTTP协议):HTTP(HyperTextTransferProtocol,超文本传输协议)是分布式的Web应用的核心技术协议。它定义了Web浏览器向Web服务器发送索取Web页面请求的格式,以及Web页面在Internet上的传输方式。Web安全问题Web的初始目的是提供快捷服务和直接访问,所以早期的Web没有考虑安全性问题。随着Web广泛应用,Internet中与Web相关的安全事故正成为目前所有事故的主要组成部分.由图中可见,与Web安全有关的网页恶意代码和网站篡改事件占据了所有事件的大部,Web安全面临严重问题。Web安全目标•保护Web服务器及其数据的安全–Web服务器安全是指系统持续不断地稳定地、可靠地运行,保证Web服务器提供可靠的服务;未经授权不得访问服务器,保证服务器不被非法访问;系统文件未经授权不得访问,从而避免引起系统混乱。Web服务器的数据安全是指存储在服务器里的数据和配置信息未经授权不能窃取、篡改和删除;只允许授权用户访问Web发布的信息。•保护web服务器和用户之间传递信息的安全–保护web服务器和用户之间传递信息的安全主要包括三个方面的内容:第一,必须确保用户提供给Web服务器的信息(用户名、密码、财务信息、访问的网页名等)不被第三方所窃听、篡改和破坏;第二,对从Web服务器端发送给用户的信息要加以同样的保护;第三,用户和服务器之间的链路也要进行保护,使得攻击者不能轻易地破坏该链路。•保护终端用户计算机及其他连接入Internet的设备的安全–保护终端用户计算机的安全是指保证用户使用的Web浏览器和安全计算平台上的软件不会被病毒感染或被恶意程序破坏;以及确保用户的隐私和私人信息不会遭到破坏。保护连入Internet设备的安全主要是保护诸如路由器、交换机的正常运行,免遭破坏;同时保证不被黑客安装监控以及后门程序。Web安全技术•Web安全技术主要包括如下三大类:–Web服务器安全技术–Web应用服务安全技术–Web浏览器安全技术Web服务器安全技术Web防护可通过多种手段实现,这主要包括:安全配置web服务器、网页防篡改技术、反向代理技术、蜜罐技术等。•安全配置Web服务器。–充分利用Web服务器本身拥有的如主目录权限设定、用户访问控制、IP地址许可等安全机制,进行合理的有效的配置,确保Web服务的访问安全。•网页防篡改技术。–将网页监控与恢复结合在一起,通过对网站的页面进行实时监控,主动发现网页页面内容是否被非法改动,一旦发现被非法篡改,可立即恢复被篡改的网页。•反向代理技术。–当外网用户访问网站时,采用代理与缓存技术,使得访问的是反向代理系统,无法直接访问Web服务器系统,因此也无法对Web服务器实施攻击。反向代理系统会分析用户的请求,以确定是直接从本地缓存中提取结果,还是把请求转发到Web服务器。由于代理服务器上不需要处理复杂的业务逻辑,代理服务器本身被入侵的机会几乎为零。•蜜罐技术。–蜜罐系统通过模拟Web服务器的行为,可以判别访问是否对应用服务器及后台数据库系统有害,能有效地防范各种已知及未知的攻击行为。对于通常的网站或邮件服务器,攻击流量通常会被合法流量所淹没。而蜜罐进出的数据大部分是攻击流量。因而,浏览数据、查明攻击者的实际行为也就容易多了。Web应用服务安全技术主要包括身份认证技术、访问控制技术、数据保护技术、安全代码技术。•身份认证技术。–身份认证作为电子商务、网络银行应用中最重要的安全技术,目前主要有三种形式:简单身份认证(帐号/口令)、强度身份认证(公钥/私钥)、基于生物特征的身份认证。•访问控制技术。–指通过某种途径,准许或者限制访问能力和范围的一种方法。通过访问控制,可以限制对关键资源和敏感数据的访问,防止非法用户的入侵和合法用户的误操作导致的破坏。•数据保护技术。–主要采用的是数据加密技术。•安全代码技术。–指的是在应用服务代码编写过程中引入安全编程的思想,使得编写的代码免受隐藏字段攻击、溢出攻击、参数篡改攻击的技术。Web浏览器安全技术•浏览器实现升级-用户应该经常使用最新的补丁升级浏览器。•Java安全限制-Java在最初设计时便考虑了安全。如Java的安全沙盒模型(securitysandboxmodel)可用于限制哪些安全敏感资源可被访问,以及如何被访问。•SSL加密(SecureSocketsLayer安全套接层)-SSL可内置于许多Web浏览器中,从而使能在Web浏览器和服务器之间的安全传输。在SSL握手阶段,服务器端的证书可被发送给Web浏览器,用于认证特定服务器的身份。同时,客户端的证书可被发送给Web服务器,用于认证特定用户的身份。常见Web应用安全漏洞•已知弱点包括Web应用使用的操作系统和第三方应用程序中的所有程序错误或者可以被利用的漏洞。这个问题也涉及到错误配置,包含有不安全的默认设置或管理员没有进行安全配置的应用程序。一个很好的例子就是你的Web服务器被配置成可以让任何用户从系统上的任何目录路径通过,这样可能会导致泄露存储在Web服务器上的一些敏感信息,如口令、源代码或客户信息等。已知弱点和错误配置•在许多应用中,隐藏的HTML格式字段被用来保存系统口令或商品价格。尽管其名称如此,但这些字段并不是很隐蔽的,任何在网页上执行“查看源代码”的人都能看见。许多Web应用允许恶意的用户修改HTML源文件中的这些字段,为他们提供了以极小成本或无需成本购买商品的机会。这些攻击行动之所以成功,是因为大多数应用没有对返回网页进行验证;相反,它们认为输入数据和输出数据是一样的。隐藏字段•开发人员常常建立一些后门并依靠调试来排除应用程序的故障。在开发过程中这样做可以,但这些安全漏洞经常被留在一些放在Internet上的最终应用中。一些常见的后门使用户不用口令就可以登录或者访问允许直接进行应用配置的特殊URL。后门和调试漏洞•XSS又叫CSS(CrossSiteScript),跨站脚本攻击。它指的是恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意攻击用户的特殊目的。XSS跨站脚本攻击•参数篡改包括操纵URL字符串,以检索用户的以其他方式得不到的信息。访问Web应用的后端数据库是通过常常包含在URL中的SQL调用来进行的。恶意的用户可以操纵SQL代码,以便将来有可能检索一份包含所有用户、口令、信用卡号的清单或者储存在数据库中的任何其他数据。参数篡改•更改cookie指的是修改存储在cookie中的数据。网站常常将一些包括用户ID、口令、帐号等的cookie存储到用户系统上。通过改变这些值,恶意的用户就可以访问不属于他们的帐户。攻击者也可以窃取用户的cookie并访问用户的帐户,而不必输入ID和口令或进行其他验证。更改cookie•输入信息检查包括能够通过控制由CGI(CommonGatewayInterface通用网关接口)脚本处理的HTML格式中的输入信息来运行系统命令。例如,使用CGI脚本向另一个用户发送信息的形式可以被攻击者控制来将服务器的口令文件邮寄给恶意的用户或者删除系统上的所有文件。输入信息控制•缓冲区溢出是恶意的用户向服务器发送大量数据以使系统瘫痪的典型攻击手段。该系统包括存储这些数据的预置缓冲区。如果所收到的数据量大于缓冲区,则部分数据就会溢出到堆栈中。如果这些数据是代码,系统随后就会执行溢出到堆栈上的任何代码。Web应用缓冲区溢出攻击的典型例子也涉及到HTML文件。如果HTML文件上的一个字段中的数据足够的大,它就能创造一个缓冲器溢出条件。缓冲区溢出•直接访问浏览指直接访问应该需要验证的网页。没有正确配置的Web应用程序可以让恶意的用户直接访问包括有敏感信息的URL或者使提供收费网页服务的公司丧失收入。直接访问浏览Web攻击事件Web攻击事件-篡改网页针对Web网站和应用的攻击•非法上传网页•非法篡改网页•非法篡改数据库•非法执行命令•跨站提交信息•网站资源盗链•窃取脚本源程序•窃取系统信息•窃取用户信息•绕过身份认证•拒绝服务攻击•……常见Web攻击类型威胁手段后果注入式攻击通过构造SQL语句对数据库进行非法查询黑客可以访问后端数据库,偷窃和修改数据跨站脚本攻击通过受害网站在客户端显不正当的内容和执行非法命令黑客可以对受害者客户端进行控制,盗窃用户信息上传假冒文件绕过管理员的限制上传任意类型的文件黑客可以篡改网页、图片和下载文件等不安全本地存储偷窃cookie和sessiontoken信息黑客获取用户关键资料,冒充用户身份非法执行脚本执行系统默认的脚本或自行上传的WebShell脚本等黑客完全控制服务器非法执行系统命令利用Web服务器漏洞上执行Shell命令Execute等黑客获得服务器信息源代码泄漏利用Web服务器漏洞或应用漏洞获得脚本源代码黑客分析源代码从而更有针对性的对网站攻击URL访问限制失效黑客可以访问非授权的资源连接黑客可以强行访问一些登陆网页、历史网页统计数据1网站篡改情况(资料来源:国家计算机网络应急技术处理协调中心)115720591363524477612280100002000030000400005000060000700002003年2004年2005年2006年2007年统计数据2网络安全事件类型分布Web攻击分析黑客攻击Web应用的动机和目的•纯粹炫耀黑客技术•增加自己网站点击率•加入木马和病毒程序•发布虚假信息获利•窃取用户资料•政治性的宣传产生原因-客观•Web平台的复杂性–操作系统漏洞–Web服务器软件漏洞–运行于WEB服务器上的各种商业软件的漏洞–Web应用程序自身的漏洞•修补漏洞–第三方软件:补丁的发布远远滞后于黑客发现并利用漏洞–Web应用程序:检测、修补应用漏洞费时费力•现有技术架构下,网站漏洞长期存在产生原因-主观•密码管理–合格密码:8位以上,定期改变–35%的人与其他人共享密码–67%的人用同一密码访问多个程序•不安全的配置–权限控管不当–信息泄露•漏洞修补–定期进行漏洞扫描–第一时间更新第三方软件–新的应用上线之前进行严格的安全测试•上网控制–钓鱼、木马、间谍软件Web安全全貌防火墙数据库服务器Web服务器应用服务器IPS/IDSWeb应用DoS攻击端口扫描网络层模式攻击已知Web服务器漏洞跨站攻击注入式攻击非法上传篡改网页??????web服务器和web应用对所有的http请求照单全收。并不能区分请求的友善。WEB应用价值的破坏与损失信息泄露拒绝服务监管部门投诉网页篡改非法入侵网站访问者服务提供者+基础网络提供者社会公信力下降名誉受损用户流失经济损失追责网页被篡改非法内容用户信息泄露个人信息丢失个人信息被篡改恶意程序下载网站无法访问传统网络安全设备•防火墙–限制地址和端口访问–验证和加固网络协议•入侵检测–基于网络层的数据包检查•问题–Web/80端口谁来保护?–应用数据谁来保护?–如何保证公众浏览到的信息是原始的?对网络、通信协议、操作系统、数据库等通用内容的防护,传统的安全设备,如防火墙、安全网关、IDS/IPS、审计产品、终端防护产品等,作为网站整体安全策略中不可缺少的重要模块,其防护效果是比较有效的。针对WEB特定应用的脆弱性以及产生的安全问题是个性化和不通用的,以上这些传统的技术手段就显得力不从心了,不能有效的防范和检测网站特定的威胁和攻击:跨站脚本信息泄露SQL注入越权操作DDOS攻击传统防护手段的弊端风险和
本文标题:WEB应用安全概述.ppt
链接地址:https://www.777doc.com/doc-2404588 .html