Web应用安全技术课件_第1页
Web应用安全技术课件_第2页
Web应用安全技术课件_第3页
Web应用安全技术课件_第4页
Web应用安全技术课件_第5页
已阅读5页,还剩129页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Web应用安全技术WebApplication(In)security2023/1/4Web应用安全技术WebApplication(In)s1戴银涛

•daiytbit@本课程涵盖Web核心技术,如HTTP、客户与服务器端技术、数据编码等;涉及Web应用的主要核心功能,如客户端控件、会话管理、访问控制、应用程序逻辑与体系架构、Web服务器等;详细分析各种类型的漏洞,如代码注入、路径遍历、跨站点脚本、重定向攻击、跨站点请求伪造、会话劫持、会话固定、缓冲区溢出、整数漏洞、格式化漏洞等2023/1/4戴银涛•daiytbit@本课程涵盖W2Web应用安全互联网的确是人类历史上最伟大的发明之一,它彻底地改变了人们的工作和生活。现在,可以毫不怀疑的说,人类生活的各个方面都已经和互联网息息相关。2023/1/4Web应用安全互联网的确是人类历史上最伟大的发明之一,它彻底3Web应用安全互联网最引人瞩目的部分就是各式各样的Web应用,它们使现实世界中的形形色色的业务都搬到了网络上,人们可以足不出户地购物、娱乐、处理各种日常事务。IT人可以自豪地夸耀自己引领了业务,超越商业界创造了一种生产、销售、服务的新形式2023/1/4Web应用安全互联网最引人瞩目的部分就是各式各样的Web应用4Web应用安全比如今天的商业活动依靠Web生存已经是无法回避的事实。从银行到书店,从拍卖到游戏,大部分公司都在Web上进行交易如美国接近50%的音乐零售业业务发生在网上,2010年网游中的虚拟交易市场超过15亿美元,美国超过一半的成年人使用互联网进行自己的银行业务2023/1/4Web应用安全比如今天的商业活动依靠Web生存已经是无法回避5Web应用安全随着智能手机的流行,现在大部分的网络商务活动对消费者来说在任何时间,任何地点都可以进行。不管如何估算,Web上的业务都是经济的重要组成部分,而且正在以前所未有的速度发展2023/1/4Web应用安全随着智能手机的流行,现在大部分的网络商务活动对6Web应用安全但同时,承载着丰富功能与用途的Web应用程序也成为恶意用户与黑客等攻击者的主要攻击目标。尽管近年来不断发展的平台技术在安全上有了巨大的进步,但是对于扩张如此迅速的Web应用所面对的越来越广泛的威胁仍然无能为力。2023/1/4Web应用安全但同时,承载着丰富功能与用途的Web应用程序也7Web应用安全互联网架构本身的特点,决定了Web安全不再只是通过防火墙、防病毒软件和安全补丁就能完成的任务而是涉及到开发人员,安全管理人员以及整个企业的所有部门乃至网上所有用户的巨大项目。因此,如何确保Web应用的安全已成为政府、企业,特别是银行等金融机构所面临的主要挑战2023/1/4Web应用安全互联网架构本身的特点,决定了Web安全不再只是8Web应用安全古语云:知己知彼,百战不殆。只有充分了解攻击者所采用的攻击方法以及Web应用程序中存在的可供攻击者利用的各种漏洞,我们才能针对这些漏洞采取行之有效的防御方法。2023/1/4Web应用安全古语云:知己知彼,百战不殆。2022/12/29这里的"Web应用程序",是指通过使用Web浏览器与Web服务器进行通信,从而加以访问的应用程序如前所述,Web应用安全无疑是当务之急,对相关各方而言,这一问题都至关重要2023/1/4这里的"Web应用程序",是指通过使用Web浏览器与Web服10这里的各个方面包括:互联网业务收入日益增长的公司向Web程序托付敏感信息的用户通过窃取支付信息或入侵银行账户盗窃资金的犯罪分子2023/1/4这里的各个方面包括:2022/12/2711Web应用发展历程在互联网发展初期,万维网(WorldWideWeb)仅由Web站点构成,这些站点基本上都是包含静态文档的信息库。随后人们发明了Web浏览器,通过它来提取和显示这些文档。2023/1/4Web应用发展历程在互联网发展初期,万维网(WorldWi122023/1/42022/12/2713此时相关的信息流仅由服务器向浏览器单向传送。多数站点并不验证用户的合法性,因为根本没有必要这样做所有用户同等对待,收取同样的信息2023/1/4此时相关的信息流仅由服务器向浏览器单向传送。2022/12/14创建一个Web站点所带来的安全威胁主要与Web服务器的软件漏洞有关攻击者入侵Web站点并不能获取任何敏感信息,因为服务器上的保存的所有信息都可以公开查看此时入侵者往往会修改服务器上的文件以歪曲Web站点的内容,或利用服务器的存储容量和带宽传播“非法软件”2023/1/4创建一个Web站点所带来的安全威胁主要与Web服务器的软件漏15如今的WWW与早期的已经完全不同,Web上的大多数站点实际是应用程序。它们功能强大,在服务器和浏览器之间进行双向信息传送。2023/1/4如今的WWW与早期的已经完全不同,Web上的大多数站点实际是162023/1/42022/12/2717这些应用程序支持注册与登录、金融交易、搜索以及用户创作的内容用户获取的内容以动态形式生成,并且往往能满足每个用户的特殊要求。它们处理的许多信息属于私密和高度敏感的信息。2023/1/4这些应用程序支持注册与登录、金融交易、搜索以及用户创作的内容18所以安全问题至关重要如果用户认为Web应用会将他们的信息泄露给未授权的访问者,他们就会拒绝使用该程序2023/1/4所以安全问题至关重要2022/12/2719Web应用带来了新的重大安全威胁。应用不同,所包含的漏洞也各不相同许多应用是由开发人员独立开发的,还有许多开发人员几乎对他们所编写的代码可能引起的安全问题一无所知。2023/1/4Web应用带来了新的重大安全威胁。应用不同,所包含的漏洞也各20为了实现核心功能,Web应用通常需要与内部计算机系统建立连接,这些系统中保存着高度敏感的数据,并能执行强大的业务功能十年前,如果需要转账必须去银行,让银行职员帮你完成交易今天,你可以访问银行的Web应用程序,自己完成转账交易从而进入Web应用程序的攻击者能够窃取个人信息,进行金融欺诈或执行针对其他用户的恶意行为2023/1/4为了实现核心功能,Web应用通常需要与内部计算机系统建立连接21Web应用的常见功能创建Web应用的目的是执行可以在线完成的任何有用功能。常见的一些功能有购物(Amazon)社交网络(Facebook)银行服务(网上银行)Web搜索(Google)博客,微博(Blog,Twitter)Web邮件(Gmail)交互信息(Wikipedia)2023/1/4Web应用的常见功能创建Web应用的目的是执行可以在线完成的22除了可以使用计算机浏览器访问外,同时还可以被智能手机或平板电脑访问的应用正快速增长大多数移动应用或使用浏览器访问,或由专门开发的客户端使用基于HTTP的API与服务器通信此时不同的用户平台和访问界面共享该应用的功能和数据2023/1/4除了可以使用计算机浏览器访问外,同时还可以被智能手机或平板电23除了上述的公共互联网外,许多组织内部也广泛采用Web应用执行一些关键业务,许多程序设计高度敏感数据和功能:HR(人力资源)应用允许用户访问收入信息,给出和得到工作表现反馈,管理招聘和奖惩程序。作为关键设备的管理界面如Web服务器和Mail服务器,用户工作站以及虚拟机管理。协同软件,用于共享文件,管理工作流和项目,并跟踪问题。这些类型的功能往往经常涉及重要的安全和治理问题,并且组织完全依靠内置的Web应用来管理和控制。2023/1/4除了上述的公共互联网外,许多组织内部也广泛采用Web应用执行24商业应用,如企业资源计划(ERP)软件,以前使用专有的(厚)客户端应用程序访问,现在则可以使用web浏览器访问软件服务如电子邮件,原本需要一个单独的邮件客户端,现在可以通过诸如OutlookWebAccess来进行Web访问。传统的桌面办公应用,如文字处理器和Excel表等已迁移到Web应用程序服务,如谷歌Apps和微软OfficeLive。2023/1/4商业应用,如企业资源计划(ERP)软件,以前使用专有的(厚)25在所有这些例子中,被视为“内部”的应用越来越多的被组织转移到外部服务提供商实行外部托管以削减成本。在这些所谓的“云计算”解决方案中,组织内部的关键业务功能和数据被广泛暴露在潜在的攻击者面前,并且组织越来越依赖于外部的,完全在他们的控制之外的整体安全防御体系。2023/1/4在所有这些例子中,被视为“内部”的应用越来越多的被组织转移26这样的时代正在快速迫近:大多数计算机用户所需要的唯一客户端就是一个Web浏览器用户使用一组共享的协议和技术就能实现各种业务功能,但随之也会得到不同范围的共同安全漏洞2023/1/4这样的时代正在快速迫近:2022/12/2727Web应用的优点Web应用越来越流行的原因显而易见,若干技术因素以及与主要的商业动机相结合,从而引发了互联网使用方式上的重大变革HTTP是用于访问互联网的核心通信协议,它是轻量级的,无需连接。这一点提供了对通信错误的容错性。应用HTTP,许多传统client-server(CS架构)应用程序中的服务器无需向每一个用户开放网络连接。HTTP还可以通过代理和其它协议传输,允许在任何网络配置下进行安全通信2023/1/4Web应用的优点Web应用越来越流行的原因显而易见,若干技术28Web应用的优点每个Web用户都在其计算机或智能移动终端上安装了浏览器,Web应用为浏览器动态部署用户界面,不再像以前那样需要发布和管理单独的客户端软件,界面的变化只需在服务器上更改一次,即可立即生效。如今的浏览器功能非常强大,可构建内容丰富并且令人满意的用户界面。Web界面使用标准导航和输入控件,可保证用户即时熟悉这些功能,而不需要学习使用各种程序。应用程序可通过客户端脚本功能将部分功能处理交由客户端完成,必要时,可使用厚客户端组件任意扩展浏览器的功能。flash,ActiveX。。。2023/1/4Web应用的优点每个Web用户都在其计算机或智能移动终端上安29Web应用的优点用于开发Web应用的核心技术和语言相对简单。即使是初学者,也可以使用现有的各种平台和开发工具,开发出强大的应用程序,还有大量开源代码和其它资源可供整合到定制的应用程序中2023/1/4Web应用的优点用于开发Web应用的核心技术和语言相对简单。30Web应用安全与任何新兴技术一样,Web应用程序也会带来一系列新的安全方面的漏洞。这些常见的缺陷也在“与时俱进”,出现了一些开发人员在开发现有应用程序时未曾考虑到的攻击方式。由于安全意识的加强,一些问题已经得到解决。但新技术的使用会引入新的漏洞。Web浏览器自身软件的改进基本上消除了某些缺陷2023/1/4Web应用安全与任何新兴技术一样,Web应用程序也会带来一系31Web应用安全对Web应用程序最严重的袭击事件是那些暴露敏感数据或获得了不受限制地访问应用程序运行的后端系统的权限。此类倍受瞩目的危机继续频频发生。另外,对于许多组织来说,任何攻击导致系统宕机是一个重大事件。可使用应用程序级的拒绝服务攻击来达到过去传统的针对基础设施所实施的资源枯竭攻击相同的结果。但现在实施这些攻击的技术和目的更加微妙,比如他们可能被用于在金融领域的服务交易,游戏,网上招标,机票预订等领域中来中断特殊的用户或服务来获得针对同行的竞争优势。2023/1/4Web应用安全对Web应用程序最严重的袭击事件是那些暴露敏感32Web应用安全在整个发展过程中,不时有知名的网站被攻破的新闻报道。情况似乎没有好转,也没有迹象表明这些安全问题已经得到解决可以说,如今的Web应用安全领域是攻击者与计算机资源和数据防御者之间最重要的战场,在可预见的将来,这种情况可能仍将持续2023/1/4Web应用安全在整个发展过程中,不时有知名的网站被攻破的新闻33“本站点是安全的”目前人们已经普遍认识到,对Web应用而言,安全确实是个问题。浏览某些网站时,他们会向你保证该网站确实是安全的。大多数网站会强调他们是安全的,因为他们采用了SSL技术,如:“本站点绝对安全,因为我们使用了128位安全套阶层(SecureSocketLayer,SSL)技术设计,可防止未授权用户查看您的任何信息。您可以放心使用本站点,我们绝对保证您的数据安全。”站点常常要求用户核实站点证书,并想法设法让用户相信其所采用的先进加密协议无懈可击,从而说服用户放心地向其提供个人信息2023/1/4“本站点是安全的”目前人们已经普遍认识到,对Web应用而言,34越来越多的组织还举出他们遵守支付卡行业(PCI)标准,以保证用户,他们是安全的。例如:我们对安全非常重视,每天扫描以确保我们的网站保持PCI兼容从而免受黑客攻击。你可以在下面的标志下看到最新的扫描日期,从而保证我们的网站是安全的。2023/1/4越来越多的组织还举出他们遵守支付卡行业(PCI)标准,以保证35事实上,大多数Web应用并不安全,尽管有SSL技术以及常规PCI扫描被广泛使用。下面是对2007-2011年间测试的Web应用受一些常见类型的漏洞影响的比例:2023/1/4事实上,大多数Web应用并不安全,尽管有SSL技术以及常规P36常见Web应用漏洞不完善的身份验证措施(62%):这类漏洞包括应用程序登陆机制中的各种缺陷,可能会使攻击者破解保密性不强的密码,暴力猜解或完全避开登陆。不完善的访问控制措施(71%):这一类问题涉及的情况包括:应用程序无法为数据和功能提供全面保护,攻击者可以查看其他用户保存在服务器中的敏感信息,或者执行特权操作。SQL注入(32%):攻击者可通过这一漏洞提交专门设计的输入,干扰应用程序与后端数据库的交互活动。攻击者能从应用程序中提取任何数据、破坏其业务逻辑结构,或者在数据库服务器上执行命令2023/1/4常见Web应用漏洞不完善的身份验证措施(62%):2022/37常见Web应用漏洞信息泄露(78%):这一问题包括应用程序泄露敏感信息,攻击者利用这些敏感信息通过有缺陷的错误处理或其他行为攻击应用程序。跨站脚本(94%):攻击者可以利用该漏洞攻击应用程序的其他用户、访问其信息、代表他们执行未授权操作,或者向其发起其他攻击。2023/1/4常见Web应用漏洞信息泄露(78%):2022/12/27382023/1/42022/12/2739SSL协议SSL协议,英文SecureSocketLayerProtocol,中文称为安全套接层协议SSL协议最初由Internet的应用先驱Netscape公司1995年设计开发,该协议是一种利用公共密钥技术的工业标准,目前已广泛应用于互联网,成为事实上的工业标准,主流浏览器及许多服务器都支持SSL协议目的是通过在收发双方建立安全通道来提高应用程序间交换数据的安全性,从而实现浏览器和服务器(通常是Web服务器)之间的安全通信2023/1/4SSL协议SSL协议,英文SecureSocketLay40凡是支持送SSL协议的网页,都会以https://作为URL的开头客户在与服务器进行SSL会话中,如果使用的是微软的IE浏览器,可以在右下方状态栏中看到一只金黄色的锁形安全标志,用鼠标双击该标志,就会弹出服务器证书信息一台支持SSL的典型网络主机接收SSL连接的默认端口是4432023/1/4凡是支持送SSL协议的网页,都会以https://作为URL41但SSL并不能抵御直接针对某个应用程序的服务器或客户组件的攻击,而许多成功的攻击都恰恰属于这种类型。特别需要指出的是,SSL并不能阻止上述任何漏洞或许多其他使应用程序受到威胁的漏洞,无论是否使用SSL,大多数Web应用程序仍然存在安全漏洞2023/1/4但SSL并不能抵御直接针对某个应用程序的服务器或客户组件的攻42核心安全问题:用户可提交任意输入与许多大量使用的应用程序一样,为确保安全,Web应用程序必须解决一个根本问题。由于应用程序无法控制用户,用户几乎可向服务器端应用程序提交任意输入应用程序必须假设所有输入的信息都是恶意的输入,并必须采取措施确保攻击者无法使用专门设计的输入破坏应用程序、干扰业务逻辑或非法访问数据及功能2023/1/4核心安全问题:用户可提交任意输入与许多大量使用的应用程序一样43核心安全问题:用户可提交任意输入这个核心问题表现在许多方面:用户可干预客户与服务器间传送的所有数据,包括请求参数,cookie和HTTP信息头。可轻易避开客户端执行的任何安全控件,如输入确认验证。用户可按任何顺序发送请求,并可在应用程序要求之外的不同阶段不止一次提交或根本不提交参数。用户的操作可能与开发人员对用户和应用程序交互方式作出的任何假设完全不同用户并不限于仅使用一种Web浏览器访问应用程序。大量各种各样的工具可以协助攻击Web应用程序,这些工具既可整合在浏览器中,也可独立于浏览器运作。这些工具能够提出普通浏览器无法提交的请求,并能够迅速生成大量的请求,查找和利用安全问题达到自己的目的。2023/1/4核心安全问题:用户可提交任意输入这个核心问题表现在许多方面:44核心安全问题:用户可提交任意输入绝大多数针对Web应用程序的攻击都涉及向服务器提交输入,旨在引起一些应用程序设计者无法预料或不希望出现的事件。以下例子说明为实现这种目的而提交的专门设计的输入:更改以隐藏的HTML表单字段提交的产品价格,以更低廉的价格欺诈性地购买东西修改在HTTPcookies中传送的会话令牌,劫持另一个验证用户的会话利用应用程序处理过程中的逻辑错误删除某些正常提交的参数改变由后端数据库处理的某个输入,从而注入一个恶意数据库查询以访问敏感数据。2023/1/4核心安全问题:用户可提交任意输入绝大多数针对Web应用程序的45核心安全问题:用户可提交任意输入毋庸置疑,SSL无法阻止攻击者向服务器提交专门设计的输入。应用程序使用SSL仅仅表示网络上的其他用户无法查看或修改攻击者传送的数据。因为攻击者控制着SSL通道的终端,能够通过这条通道向服务器传送任何内容。如果前面提到的任何攻击成功实现,那么不论其如何声称其站点如何安全,该应用程序都很容易受到攻击2023/1/4核心安全问题:用户可提交任意输入毋庸置疑,SSL无法阻止攻击46关键问题因素任何情况下,如果一个应用程序必须接受并处理可能为恶意的未经验证的数据,就会产生Web应用程序面临的核心安全问题但是,对Web应用程序而言,几种因素的结合使得问题更加严重,这也解释了当今互联网上许多Web应用无法很好解决这一问题的原因。2023/1/4关键问题因素任何情况下,如果一个应用程序必须接受并处理可能为471:不成熟的安全意识与网络和操作系统这些发展时间更长的领域相比,人们对Web应用安全问题的意识还远远不够成熟。虽然大多数IT安全人员掌握了相当多的网络安全与主机强化基础知识,但他们对与Web应用安全有关的许多核心概念仍然不甚了解,甚至存有误解。即使是经验丰富的Web应用程序开发人员也会经常遇到一些对他们而言完全陌生的基本缺陷类型2023/1/41:不成熟的安全意识与网络和操作系统这些发展时间更长的领域相482:独立开发大多数Web应用程序都由企业自己的员工或合作公司独立开发。即使应用程序采用第三方组件,通常也是使用新代码将第三方组件进行自定义或拼凑在一起。在这种情况下,每个应用程序都各不相同,并且可能包含其独有的缺陷。这种情形与组织购买业内一流产品并按照行业标准指南安装的典型基础架构部署形成鲜明对照。2023/1/42:独立开发大多数Web应用程序都由企业自己的员工或合作公司493:欺骗性的简化使用今天的Web应用程序和开发工具,一个程序员新手也可能在短期内从头开始创建一个强大的应用程序。但是,在编写功能性代码和编写安全代码之间存在着巨大的差异。许多有问题的Web应用程序也是由善意的个人创建,他们只是缺乏发现安全问题的知识与经验2023/1/43:欺骗性的简化使用今天的Web应用程序和开发工具,一个程序503:欺骗性的简化近年来的一个突出的趋势是使用能提供现成的代码组件的应用程序框架来处理众多共有的功能,如身份验证,页面模板,留言板等,然后与常见的后端基础组件集成。这些框架的例子包括Liferay和AppFuse企业架构等。这些产品使得建立应用工作变得快速方便,而且不需要技术上理解应用是如何工作的以及其可能包含的潜在漏洞风险。但这同时也意味着许多公司使用相同的架构,因而,一旦发现了某个安全漏洞,将影响许多不相干的应用2023/1/43:欺骗性的简化近年来的一个突出的趋势是使用能提供现成的代码514:迅速发展的威胁形势Web应用程序攻击与防御研究发展相对不成熟,是一个正在蓬勃发展的领域,其中新概念与威胁出现的速度比传统的技术要快得多。在项目开始之初就完全了解了当前威胁的开发团队,很可能到应用程序开发完成并部署后也会面临许多未知的威胁2023/1/44:迅速发展的威胁形势Web应用程序攻击与防御研究发展相对不525:资源与时间限制由于独立、一次性开发的影响,许多Web应用程序的开发项目会受到严格的时间与资源限制。通常,设计或开发团队不可能雇用专职的安全专家,而且由于项目进程的拖延,往往要等到项目周期的最后阶段才由专家进行安全测试。为了兼顾各种要素,按期开发出稳定而实用的应用程序的要求往往使开发团队忽视不明显的安全问题。小型组织一般不愿多花时日评估一个新的应用程序。快速渗透测试通常只能发现明显的安全漏洞,而往往会遗漏比较细微、需要时间和耐心来发现的漏洞2023/1/45:资源与时间限制由于独立、一次性开发的影响,许多Web应用536:技术上强其所难Web应用程序使用的许多核心技术出现于与目前十分不同的万维网(WWW)早期阶段,从那以后,其功能已经远远超越最初的设想。例如,在许多基于Ajax的应用程序中使用Javascript进行数据传输。随着对Web应用程序功能要求的变化,用于执行这种功能的技术已经远远落后于发展要求,而开发人员还是沿用原有的技术来满足新的需求。因此,这种做法造成的安全漏洞与无法预料的负面影响也就不足为奇了2023/1/46:技术上强其所难Web应用程序使用的许多核心技术出现于与目54新的安全边界在Web应用程序出现之前,主要在网络边界上抵御外部攻击。保护这个边界需要对其提供的服务进行强化、打补丁,并在用户访问之间设置防火墙。Web应用程序改变了这一切。用户要访问应用程序,边界防火墙必须允许其通过HTTP/S连接内部服务器;应用程序要实现其功能,必须允许其连接服务器以支持后端系统,如数据库、大型主机以及金融与后勤系统。这些系统通常处于组织运营的核心部分,并由几层网络级防御保护2023/1/4新的安全边界在Web应用程序出现之前,主要在网络边界上抵御外55新的安全边界如果Web应用程序存在漏洞,那么公共互联网上的攻击者只需从Web浏览器提交专门设计的数据就可攻破组织的核心后端系统。这些数据会像传送至Web应用程序的正常、良性数据流一样,穿透组织的所有网络防御2023/1/4新的安全边界如果Web应用程序存在漏洞,那么公共互联网上的攻56新的安全边界Web应用程序的广泛应用使得典型组织的安全边界发生了变化。部分安全边界仍旧关注防火墙与防御主机。但大部分安全边界更加关注组织所使用的Web应用程序。Web应用程序接收用户输入的方式多种多样,将这些数据传送至敏感后端系统的方式也多种多样,这些都是一系列攻击的潜在关口,因此必须在应用程序内部执行防御措施以阻挡这些攻击。即使某个Web应用程序的某一行代码存在缺陷,也会使组织的内部系统易于遭受攻击。2023/1/4新的安全边界Web应用程序的广泛应用使得典型组织的安全边界发57新的安全边界Web应用程序安全边界发生变化的另一原因,在于用户本身在访问一个易受攻击的应用程序时面临的威胁。恶意攻击者可能会利用一个良性但易受攻击的Web应用程序攻击访问它的用户。如果用户位于企业网内部,攻击者可能会控制用户的浏览器,并从用户的可信位置向本地网络发动攻击。如果攻击者心存恶意,他不需要用户的任何合作,就可以代表用户执行任何行为。2023/1/4新的安全边界Web应用程序安全边界发生变化的另一原因,在于用58新的安全边界网管清楚如何防止其用户访问恶意的Web站点,终端用户也逐渐意识到这种威胁。但是,鉴于Web应用程序漏洞的本质,与一个全然恶意的Web站点相比,易受攻击的应用程序至少给用户及其组织带来了一种威胁因此,新的安全边界要求应用程序所有人承担保护其用户的责任,使他们免受通过应用程序传送的攻击2023/1/4新的安全边界网管清楚如何防止其用户访问恶意的Web站点,终端59Web应用安全的未来虽然经过十几年的广泛应用,目前互联网上的Web应用程序依然充满漏洞。在了解Web应用程序面临的安全威胁以及如何有效应对这些威胁方面,整个行业尚未形成成熟的意识。目前几乎没有迹象表明上述问题能够在不远的将来得到解决2023/1/4Web应用安全的未来虽然经过十几年的广泛应用,目前互联网上的60Web应用安全的未来Web应用程序安全形势的细节并非是静止不变的尽管SQL注入等熟悉的传统漏洞还在不断出现,但已不是主要问题。而且,现有的漏洞也变得更难以发现和利用。几年前只需使用浏览器就能够轻易探测与利用的小漏洞,现在需要花费大量精力开发先进技术来发现。2023/1/4Web应用安全的未来Web应用程序安全形势的细节并非是静止不61Web应用安全的未来Web应用程序安全的另一个突出趋势为:攻击目标已由传统的服务器端应用程序转向其他用户应用程序。后一类攻击仍然需要利用应用程序本身的缺陷,但这类攻击一般要求与其他用户进行某种形式的交互,以达到破坏用户与易受攻击的应用程序之间交易的目的。其他软件安全领域也同样存在这种趋势。随着安全威胁意识的增强,服务器端存在的缺陷首先为人们所理解并得到解决,从而可以在进一步的研究过程中将注意力集中在客户端。2023/1/4Web应用安全的未来Web应用程序安全的另一个突出趋势为:攻62Web应用安全的未来最近的各种技术趋势已经开始对Web应用产生变化,对这些流行趋势存在着相当的舆论误导,其中最突出的是:Web2.0-该术语指的是大量使用允许用户生成内容和信息共享的功能(UGC),并通过使用各种技术来广泛支持这些功能,包括异步HTTP请求和跨域整合等云计算-该术语是指对系列技术的各个部分更多地利用外部服务提供商,包括应用软件,应用平台,Web服务器软件,数据库,硬件等。它也指在托管环境里增加使用虚拟技术2023/1/4Web应用安全的未来最近的各种技术趋势已经开始对Web应用产63Web应用安全的未来像技术的大多数变化一样,这些趋势带来了与已知攻击不同的新型攻击。尽管有炒作的成分,所提出的问题也不尽是像他们最初出现的那样充满革命性。随着课程的进展,我们将结合其他流行趋势来研究这些安全问题2023/1/4Web应用安全的未来像技术的大多数变化一样,这些趋势带来了与64Web应用安全的未来尽管Web应用发生了这些变化,一些“传统的”漏洞并未有消失的迹象。它们依然像Web诞生的初期那样不时出现。这包括业务逻辑缺陷,不完善的访问控制以及其他设计问题。2023/1/4Web应用安全的未来尽管Web应用发生了这些变化,一些“传统65小结短短几年时间,万维网已由纯粹的静态信息仓库发展为功能强大的应用程序,能够处理敏感的数据并执行用于输出实际结果的高度功能化的应用程序。在这个发展过程中,多种因素造成了当前绝大多数Web应用程序所面临的安全保护不足的状况多数应用程序都面临一个核心安全问题,即用户可提交任意输入。用户与应用程序交互的每一个方面都可能是恶意的,而且在未能证明其并无恶意之前应该被认定为是恶意的。如果这个问题处理不当,应用程序就有可能受到各种形式的攻击2023/1/4小结短短几年时间,万维网已由纯粹的静态信息仓库发展为功能强大66小结当前Web应用程序安全状况的所有证据表明,这个问题尚未得到很好的解决。而且不管是对部署Web应用程序的组织还是对访问它们的用户而言,针对Web应用程序的攻击都是一个严重的威胁。2023/1/4小结当前Web应用程序安全状况的所有证据表明,这个问题尚未得67Web应用安全技术WebApplication(In)security2023/1/4Web应用安全技术WebApplication(In)s68戴银涛

•daiytbit@本课程涵盖Web核心技术,如HTTP、客户与服务器端技术、数据编码等;涉及Web应用的主要核心功能,如客户端控件、会话管理、访问控制、应用程序逻辑与体系架构、Web服务器等;详细分析各种类型的漏洞,如代码注入、路径遍历、跨站点脚本、重定向攻击、跨站点请求伪造、会话劫持、会话固定、缓冲区溢出、整数漏洞、格式化漏洞等2023/1/4戴银涛•daiytbit@本课程涵盖W69Web应用安全互联网的确是人类历史上最伟大的发明之一,它彻底地改变了人们的工作和生活。现在,可以毫不怀疑的说,人类生活的各个方面都已经和互联网息息相关。2023/1/4Web应用安全互联网的确是人类历史上最伟大的发明之一,它彻底70Web应用安全互联网最引人瞩目的部分就是各式各样的Web应用,它们使现实世界中的形形色色的业务都搬到了网络上,人们可以足不出户地购物、娱乐、处理各种日常事务。IT人可以自豪地夸耀自己引领了业务,超越商业界创造了一种生产、销售、服务的新形式2023/1/4Web应用安全互联网最引人瞩目的部分就是各式各样的Web应用71Web应用安全比如今天的商业活动依靠Web生存已经是无法回避的事实。从银行到书店,从拍卖到游戏,大部分公司都在Web上进行交易如美国接近50%的音乐零售业业务发生在网上,2010年网游中的虚拟交易市场超过15亿美元,美国超过一半的成年人使用互联网进行自己的银行业务2023/1/4Web应用安全比如今天的商业活动依靠Web生存已经是无法回避72Web应用安全随着智能手机的流行,现在大部分的网络商务活动对消费者来说在任何时间,任何地点都可以进行。不管如何估算,Web上的业务都是经济的重要组成部分,而且正在以前所未有的速度发展2023/1/4Web应用安全随着智能手机的流行,现在大部分的网络商务活动对73Web应用安全但同时,承载着丰富功能与用途的Web应用程序也成为恶意用户与黑客等攻击者的主要攻击目标。尽管近年来不断发展的平台技术在安全上有了巨大的进步,但是对于扩张如此迅速的Web应用所面对的越来越广泛的威胁仍然无能为力。2023/1/4Web应用安全但同时,承载着丰富功能与用途的Web应用程序也74Web应用安全互联网架构本身的特点,决定了Web安全不再只是通过防火墙、防病毒软件和安全补丁就能完成的任务而是涉及到开发人员,安全管理人员以及整个企业的所有部门乃至网上所有用户的巨大项目。因此,如何确保Web应用的安全已成为政府、企业,特别是银行等金融机构所面临的主要挑战2023/1/4Web应用安全互联网架构本身的特点,决定了Web安全不再只是75Web应用安全古语云:知己知彼,百战不殆。只有充分了解攻击者所采用的攻击方法以及Web应用程序中存在的可供攻击者利用的各种漏洞,我们才能针对这些漏洞采取行之有效的防御方法。2023/1/4Web应用安全古语云:知己知彼,百战不殆。2022/12/276这里的"Web应用程序",是指通过使用Web浏览器与Web服务器进行通信,从而加以访问的应用程序如前所述,Web应用安全无疑是当务之急,对相关各方而言,这一问题都至关重要2023/1/4这里的"Web应用程序",是指通过使用Web浏览器与Web服77这里的各个方面包括:互联网业务收入日益增长的公司向Web程序托付敏感信息的用户通过窃取支付信息或入侵银行账户盗窃资金的犯罪分子2023/1/4这里的各个方面包括:2022/12/2778Web应用发展历程在互联网发展初期,万维网(WorldWideWeb)仅由Web站点构成,这些站点基本上都是包含静态文档的信息库。随后人们发明了Web浏览器,通过它来提取和显示这些文档。2023/1/4Web应用发展历程在互联网发展初期,万维网(WorldWi792023/1/42022/12/2780此时相关的信息流仅由服务器向浏览器单向传送。多数站点并不验证用户的合法性,因为根本没有必要这样做所有用户同等对待,收取同样的信息2023/1/4此时相关的信息流仅由服务器向浏览器单向传送。2022/12/81创建一个Web站点所带来的安全威胁主要与Web服务器的软件漏洞有关攻击者入侵Web站点并不能获取任何敏感信息,因为服务器上的保存的所有信息都可以公开查看此时入侵者往往会修改服务器上的文件以歪曲Web站点的内容,或利用服务器的存储容量和带宽传播“非法软件”2023/1/4创建一个Web站点所带来的安全威胁主要与Web服务器的软件漏82如今的WWW与早期的已经完全不同,Web上的大多数站点实际是应用程序。它们功能强大,在服务器和浏览器之间进行双向信息传送。2023/1/4如今的WWW与早期的已经完全不同,Web上的大多数站点实际是832023/1/42022/12/2784这些应用程序支持注册与登录、金融交易、搜索以及用户创作的内容用户获取的内容以动态形式生成,并且往往能满足每个用户的特殊要求。它们处理的许多信息属于私密和高度敏感的信息。2023/1/4这些应用程序支持注册与登录、金融交易、搜索以及用户创作的内容85所以安全问题至关重要如果用户认为Web应用会将他们的信息泄露给未授权的访问者,他们就会拒绝使用该程序2023/1/4所以安全问题至关重要2022/12/2786Web应用带来了新的重大安全威胁。应用不同,所包含的漏洞也各不相同许多应用是由开发人员独立开发的,还有许多开发人员几乎对他们所编写的代码可能引起的安全问题一无所知。2023/1/4Web应用带来了新的重大安全威胁。应用不同,所包含的漏洞也各87为了实现核心功能,Web应用通常需要与内部计算机系统建立连接,这些系统中保存着高度敏感的数据,并能执行强大的业务功能十年前,如果需要转账必须去银行,让银行职员帮你完成交易今天,你可以访问银行的Web应用程序,自己完成转账交易从而进入Web应用程序的攻击者能够窃取个人信息,进行金融欺诈或执行针对其他用户的恶意行为2023/1/4为了实现核心功能,Web应用通常需要与内部计算机系统建立连接88Web应用的常见功能创建Web应用的目的是执行可以在线完成的任何有用功能。常见的一些功能有购物(Amazon)社交网络(Facebook)银行服务(网上银行)Web搜索(Google)博客,微博(Blog,Twitter)Web邮件(Gmail)交互信息(Wikipedia)2023/1/4Web应用的常见功能创建Web应用的目的是执行可以在线完成的89除了可以使用计算机浏览器访问外,同时还可以被智能手机或平板电脑访问的应用正快速增长大多数移动应用或使用浏览器访问,或由专门开发的客户端使用基于HTTP的API与服务器通信此时不同的用户平台和访问界面共享该应用的功能和数据2023/1/4除了可以使用计算机浏览器访问外,同时还可以被智能手机或平板电90除了上述的公共互联网外,许多组织内部也广泛采用Web应用执行一些关键业务,许多程序设计高度敏感数据和功能:HR(人力资源)应用允许用户访问收入信息,给出和得到工作表现反馈,管理招聘和奖惩程序。作为关键设备的管理界面如Web服务器和Mail服务器,用户工作站以及虚拟机管理。协同软件,用于共享文件,管理工作流和项目,并跟踪问题。这些类型的功能往往经常涉及重要的安全和治理问题,并且组织完全依靠内置的Web应用来管理和控制。2023/1/4除了上述的公共互联网外,许多组织内部也广泛采用Web应用执行91商业应用,如企业资源计划(ERP)软件,以前使用专有的(厚)客户端应用程序访问,现在则可以使用web浏览器访问软件服务如电子邮件,原本需要一个单独的邮件客户端,现在可以通过诸如OutlookWebAccess来进行Web访问。传统的桌面办公应用,如文字处理器和Excel表等已迁移到Web应用程序服务,如谷歌Apps和微软OfficeLive。2023/1/4商业应用,如企业资源计划(ERP)软件,以前使用专有的(厚)92在所有这些例子中,被视为“内部”的应用越来越多的被组织转移到外部服务提供商实行外部托管以削减成本。在这些所谓的“云计算”解决方案中,组织内部的关键业务功能和数据被广泛暴露在潜在的攻击者面前,并且组织越来越依赖于外部的,完全在他们的控制之外的整体安全防御体系。2023/1/4在所有这些例子中,被视为“内部”的应用越来越多的被组织转移93这样的时代正在快速迫近:大多数计算机用户所需要的唯一客户端就是一个Web浏览器用户使用一组共享的协议和技术就能实现各种业务功能,但随之也会得到不同范围的共同安全漏洞2023/1/4这样的时代正在快速迫近:2022/12/2794Web应用的优点Web应用越来越流行的原因显而易见,若干技术因素以及与主要的商业动机相结合,从而引发了互联网使用方式上的重大变革HTTP是用于访问互联网的核心通信协议,它是轻量级的,无需连接。这一点提供了对通信错误的容错性。应用HTTP,许多传统client-server(CS架构)应用程序中的服务器无需向每一个用户开放网络连接。HTTP还可以通过代理和其它协议传输,允许在任何网络配置下进行安全通信2023/1/4Web应用的优点Web应用越来越流行的原因显而易见,若干技术95Web应用的优点每个Web用户都在其计算机或智能移动终端上安装了浏览器,Web应用为浏览器动态部署用户界面,不再像以前那样需要发布和管理单独的客户端软件,界面的变化只需在服务器上更改一次,即可立即生效。如今的浏览器功能非常强大,可构建内容丰富并且令人满意的用户界面。Web界面使用标准导航和输入控件,可保证用户即时熟悉这些功能,而不需要学习使用各种程序。应用程序可通过客户端脚本功能将部分功能处理交由客户端完成,必要时,可使用厚客户端组件任意扩展浏览器的功能。flash,ActiveX。。。2023/1/4Web应用的优点每个Web用户都在其计算机或智能移动终端上安96Web应用的优点用于开发Web应用的核心技术和语言相对简单。即使是初学者,也可以使用现有的各种平台和开发工具,开发出强大的应用程序,还有大量开源代码和其它资源可供整合到定制的应用程序中2023/1/4Web应用的优点用于开发Web应用的核心技术和语言相对简单。97Web应用安全与任何新兴技术一样,Web应用程序也会带来一系列新的安全方面的漏洞。这些常见的缺陷也在“与时俱进”,出现了一些开发人员在开发现有应用程序时未曾考虑到的攻击方式。由于安全意识的加强,一些问题已经得到解决。但新技术的使用会引入新的漏洞。Web浏览器自身软件的改进基本上消除了某些缺陷2023/1/4Web应用安全与任何新兴技术一样,Web应用程序也会带来一系98Web应用安全对Web应用程序最严重的袭击事件是那些暴露敏感数据或获得了不受限制地访问应用程序运行的后端系统的权限。此类倍受瞩目的危机继续频频发生。另外,对于许多组织来说,任何攻击导致系统宕机是一个重大事件。可使用应用程序级的拒绝服务攻击来达到过去传统的针对基础设施所实施的资源枯竭攻击相同的结果。但现在实施这些攻击的技术和目的更加微妙,比如他们可能被用于在金融领域的服务交易,游戏,网上招标,机票预订等领域中来中断特殊的用户或服务来获得针对同行的竞争优势。2023/1/4Web应用安全对Web应用程序最严重的袭击事件是那些暴露敏感99Web应用安全在整个发展过程中,不时有知名的网站被攻破的新闻报道。情况似乎没有好转,也没有迹象表明这些安全问题已经得到解决可以说,如今的Web应用安全领域是攻击者与计算机资源和数据防御者之间最重要的战场,在可预见的将来,这种情况可能仍将持续2023/1/4Web应用安全在整个发展过程中,不时有知名的网站被攻破的新闻100“本站点是安全的”目前人们已经普遍认识到,对Web应用而言,安全确实是个问题。浏览某些网站时,他们会向你保证该网站确实是安全的。大多数网站会强调他们是安全的,因为他们采用了SSL技术,如:“本站点绝对安全,因为我们使用了128位安全套阶层(SecureSocketLayer,SSL)技术设计,可防止未授权用户查看您的任何信息。您可以放心使用本站点,我们绝对保证您的数据安全。”站点常常要求用户核实站点证书,并想法设法让用户相信其所采用的先进加密协议无懈可击,从而说服用户放心地向其提供个人信息2023/1/4“本站点是安全的”目前人们已经普遍认识到,对Web应用而言,101越来越多的组织还举出他们遵守支付卡行业(PCI)标准,以保证用户,他们是安全的。例如:我们对安全非常重视,每天扫描以确保我们的网站保持PCI兼容从而免受黑客攻击。你可以在下面的标志下看到最新的扫描日期,从而保证我们的网站是安全的。2023/1/4越来越多的组织还举出他们遵守支付卡行业(PCI)标准,以保证102事实上,大多数Web应用并不安全,尽管有SSL技术以及常规PCI扫描被广泛使用。下面是对2007-2011年间测试的Web应用受一些常见类型的漏洞影响的比例:2023/1/4事实上,大多数Web应用并不安全,尽管有SSL技术以及常规P103常见Web应用漏洞不完善的身份验证措施(62%):这类漏洞包括应用程序登陆机制中的各种缺陷,可能会使攻击者破解保密性不强的密码,暴力猜解或完全避开登陆。不完善的访问控制措施(71%):这一类问题涉及的情况包括:应用程序无法为数据和功能提供全面保护,攻击者可以查看其他用户保存在服务器中的敏感信息,或者执行特权操作。SQL注入(32%):攻击者可通过这一漏洞提交专门设计的输入,干扰应用程序与后端数据库的交互活动。攻击者能从应用程序中提取任何数据、破坏其业务逻辑结构,或者在数据库服务器上执行命令2023/1/4常见Web应用漏洞不完善的身份验证措施(62%):2022/104常见Web应用漏洞信息泄露(78%):这一问题包括应用程序泄露敏感信息,攻击者利用这些敏感信息通过有缺陷的错误处理或其他行为攻击应用程序。跨站脚本(94%):攻击者可以利用该漏洞攻击应用程序的其他用户、访问其信息、代表他们执行未授权操作,或者向其发起其他攻击。2023/1/4常见Web应用漏洞信息泄露(78%):2022/12/271052023/1/42022/12/27106SSL协议SSL协议,英文SecureSocketLayerProtocol,中文称为安全套接层协议SSL协议最初由Internet的应用先驱Netscape公司1995年设计开发,该协议是一种利用公共密钥技术的工业标准,目前已广泛应用于互联网,成为事实上的工业标准,主流浏览器及许多服务器都支持SSL协议目的是通过在收发双方建立安全通道来提高应用程序间交换数据的安全性,从而实现浏览器和服务器(通常是Web服务器)之间的安全通信2023/1/4SSL协议SSL协议,英文SecureSocketLay107凡是支持送SSL协议的网页,都会以https://作为URL的开头客户在与服务器进行SSL会话中,如果使用的是微软的IE浏览器,可以在右下方状态栏中看到一只金黄色的锁形安全标志,用鼠标双击该标志,就会弹出服务器证书信息一台支持SSL的典型网络主机接收SSL连接的默认端口是4432023/1/4凡是支持送SSL协议的网页,都会以https://作为URL108但SSL并不能抵御直接针对某个应用程序的服务器或客户组件的攻击,而许多成功的攻击都恰恰属于这种类型。特别需要指出的是,SSL并不能阻止上述任何漏洞或许多其他使应用程序受到威胁的漏洞,无论是否使用SSL,大多数Web应用程序仍然存在安全漏洞2023/1/4但SSL并不能抵御直接针对某个应用程序的服务器或客户组件的攻109核心安全问题:用户可提交任意输入与许多大量使用的应用程序一样,为确保安全,Web应用程序必须解决一个根本问题。由于应用程序无法控制用户,用户几乎可向服务器端应用程序提交任意输入应用程序必须假设所有输入的信息都是恶意的输入,并必须采取措施确保攻击者无法使用专门设计的输入破坏应用程序、干扰业务逻辑或非法访问数据及功能2023/1/4核心安全问题:用户可提交任意输入与许多大量使用的应用程序一样110核心安全问题:用户可提交任意输入这个核心问题表现在许多方面:用户可干预客户与服务器间传送的所有数据,包括请求参数,cookie和HTTP信息头。可轻易避开客户端执行的任何安全控件,如输入确认验证。用户可按任何顺序发送请求,并可在应用程序要求之外的不同阶段不止一次提交或根本不提交参数。用户的操作可能与开发人员对用户和应用程序交互方式作出的任何假设完全不同用户并不限于仅使用一种Web浏览器访问应用程序。大量各种各样的工具可以协助攻击Web应用程序,这些工具既可整合在浏览器中,也可独立于浏览器运作。这些工具能够提出普通浏览器无法提交的请求,并能够迅速生成大量的请求,查找和利用安全问题达到自己的目的。2023/1/4核心安全问题:用户可提交任意输入这个核心问题表现在许多方面:111核心安全问题:用户可提交任意输入绝大多数针对Web应用程序的攻击都涉及向服务器提交输入,旨在引起一些应用程序设计者无法预料或不希望出现的事件。以下例子说明为实现这种目的而提交的专门设计的输入:更改以隐藏的HTML表单字段提交的产品价格,以更低廉的价格欺诈性地购买东西修改在HTTPcookies中传送的会话令牌,劫持另一个验证用户的会话利用应用程序处理过程中的逻辑错误删除某些正常提交的参数改变由后端数据库处理的某个输入,从而注入一个恶意数据库查询以访问敏感数据。2023/1/4核心安全问题:用户可提交任意输入绝大多数针对Web应用程序的112核心安全问题:用户可提交任意输入毋庸置疑,SSL无法阻止攻击者向服务器提交专门设计的输入。应用程序使用SSL仅仅表示网络上的其他用户无法查看或修改攻击者传送的数据。因为攻击者控制着SSL通道的终端,能够通过这条通道向服务器传送任何内容。如果前面提到的任何攻击成功实现,那么不论其如何声称其站点如何安全,该应用程序都很容易受到攻击2023/1/4核心安全问题:用户可提交任意输入毋庸置疑,SSL无法阻止攻击113关键问题因素任何情况下,如果一个应用程序必须接受并处理可能为恶意的未经验证的数据,就会产生Web应用程序面临的核心安全问题但是,对Web应用程序而言,几种因素的结合使得问题更加严重,这也解释了当今互联网上许多Web应用无法很好解决这一问题的原因。2023/1/4关键问题因素任何情况下,如果一个应用程序必须接受并处理可能为1141:不成熟的安全意识与网络和操作系统这些发展时间更长的领域相比,人们对Web应用安全问题的意识还远远不够成熟。虽然大多数IT安全人员掌握了相当多的网络安全与主机强化基础知识,但他们对与Web应用安全有关的许多核心概念仍然不甚了解,甚至存有误解。即使是经验丰富的Web应用程序开发人员也会经常遇到一些对他们而言完全陌生的基本缺陷类型2023/1/41:不成熟的安全意识与网络和操作系统这些发展时间更长的领域相1152:独立开发大多数Web应用程序都由企业自己的员工或合作公司独立开发。即使应用程序采用第三方组件,通常也是使用新代码将第三方组件进行自定义或拼凑在一起。在这种情况下,每个应用程序都各不相同,并且可能包含其独有的缺陷。这种情形与组织购买业内一流产品并按照行业标准指南安装的典型基础架构部署形成鲜明对照。2023/1/42:独立开发大多数Web应用程序都由企业自己的员工或合作公司1163:欺骗性的简化使用今天的Web应用程序和开发工具,一个程序员新手也可能在短期内从头开始创建一个强大的应用程序。但是,在编写功能性代码和编写安全代码之间存在着巨大的差异。许多有问题的Web应用程序也是由善意的个人创建,他们只是缺乏发现安全问题的知识与经验2023/1/43:欺骗性的简化使用今天的Web应用程序和开发工具,一个程序1173:欺骗性的简化近年来的一个突出的趋势是使用能提供现成的代码组件的应用程序框架来处理众多共有的功能,如身份验证,页面模板,留言板等,然后与常见的后端基础组件集成。这些框架的例子包括Liferay和AppFuse企业架构等。这些产品使得建立应用工作变得快速方便,而且不需要技术上理解应用是如何工作的以及其可能包含的潜在漏洞风险。但这同时也意味着许多公司使用相同的架构,因而,一旦发现了某个安全漏洞,将影响许多不相干的应用2023/1/43:欺骗性的简化近年来的一个突出的趋势是使用能提供现成的代码1184:迅速发展的威胁形势Web应用程序攻击与防御研究发展相对不成熟,是一个正在蓬勃发展的领域,其中新概念与威胁出现的速度比传统的技术要快得多。在项目开始之初就完全了解了当前威胁的开发团队,很可能到应用程序开发完成并部署后也会面临许多未知的威胁2023/1/44:迅速发展的威胁形势Web应用程序攻击与防御研究发展相对不1195:资源与时间限制由于独立、一次性开发的影响,许多Web应用程序的开发项目会受到严格的时间与资源限制。通常,设计或开发团队不可能雇用专职的安全专家,而且由于项目进程的拖延,往往要等到项目周期的最后阶段才由专家进行安全测试。为了兼顾各种要素,按期开发出稳定而实用的应用程序的要求往往使开发团队忽视不明显的安全问题。小型组织一般不愿多花时日评估一个新的应用程序。快速渗透测试通常只能发现明显的安全漏洞,而往往会遗漏比较细微、需要时间和耐心来发现的漏洞2023/1/45:资源与时间限制由于独立、一次性开发的影响,许多Web应用1206:技术上强其所难Web应用程序使用的许多核心技术出现于与目前十分不同的万维网(WWW)早期阶段,从那以后,其功能已经远远超越最初的设想。例如,在许多基于Ajax的应用程序中使用Javascript进行数据传输。随着对Web应用程序功能要求的变化,用于执行这种功能的技术已经远远落后于发展要求,而开发人员还是沿用原有的技术来满足新的需求。因此,这种做法造成的安全漏洞与无法预料的负面影响也就不足为奇了2023/1/46:技术上强其所难Web应用程序使用的许多核心技术出现于与目121新的安全边界在Web应用程序出现之前,主要在网络边界上抵御外部攻击。保护这个边界需要对其提供的服务进行强化、打补丁,并在用户访问之间设置防火墙。Web应用程序改变了这一切。用户要访问应用程序,边界防火墙必须允许其通过HTTP/S连接内部服务器;应用程序要实现其功能,必须允许其连接服务器以支持后端系统,如数据库、大型主机

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论