第8章-Web站点的安全_第1页
第8章-Web站点的安全_第2页
第8章-Web站点的安全_第3页
第8章-Web站点的安全_第4页
第8章-Web站点的安全_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

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

文档简介

1,计算机网络安全课程讲义,清华大学出版社,2,第八章Web站点的安全,3,本章内容,Web网络安全的概念、机制和特点Web站点的安全隐患网络安全的一些安全漏洞及测试有利于Web站点安全的技术实现防火墙在Web站点安全中的应用,4,学习目标,了解Web网络安全的概念、机制和特点认识Web站点的安全隐患掌握网络安全的一些安全漏洞及测试描述有利于Web站点安全的技术实现了解防火墙在Web站点安全中的应用,5,8.1Web基本概念,国际互联网络InternetInternet提供的服务可归纳9项:1.远程登录服务远程登录是Internet最早提供的基本服务功能之一。Internet中的用户远程登录使用了Telnet命令,Telnet协议是TCP/IP协议的一部分,它详细定义了客户机与远程服务器之间的交互过程。它的主要优点是能够解决不同类型的计算机系统之间的互操作问题。,6,8.1Web基本概念,国际互联网络InternetTelnet采用了客户机/服务器模式,其结构如图所示:,7,8.1Web基本概念,国际互联网络Internet2.文件传送服务FTPFTP服务由TCP/IP的文件传输协议支持。只要加入Internet网的两台计算机都支持TCP/IP协议,无论它们相距多远,用户都能将一台计算机上的文件传输到另一台计算机上。,8,8.1Web基本概念,国际互联网络InternetFTP在本地和远程文件系统之间传输文件的过程如图所示:,9,8.1Web基本概念,国际互联网络Internet3.电子邮政服务电子邮政简称为E-mail,是一种通过计算机网络与其他用户进行通信的现代化手段。用户必须向提供电子邮政服务的机构提出申请,该机构在其与Internet联网的计算机上为用户建立一个电子邮箱,分配一个E-mail地址。,10,8.1Web基本概念,国际互联网络Internet4.名址服务名址服务器可以向用户提供对用户名址,计算机名址和E-mail地址的查询服务。5.文档查询服务Internet中有一种被称为文档查询服务器(Archieserver)的计算机,用户只要向这种服务器提供希望查找的文件的文件名或文件描述说明中包含的字符串,文档查询服务器就能查找到存放着所需文件的FTP服务器。,11,8.1Web基本概念,国际互联网络Internet6.网络新闻服务网络新闻(NetworkNews)是由一些Internet用户为了讨论共同感兴趣的问题而组成的一种逻辑上的用户交流网络。用户可以通过Internet随时阅读服务器提供的消息,并能把自己的观点提供给服务器,作为消息在组内发布。7.Gopher服务Gopher是基于菜单驱动的Internet信息查询工具,它能将用户的请求自动转换为FTP或Telnet命令。,12,8.1Web基本概念,国际互联网络Internet8.WAIS服务广域信息服务(WideAreaInformationService)基于文件内容(关键字)的自动搜索服务,通常被图书管理员、医学研究员等一些专业人士使用。9.www服务,13,8.1Web基本概念,WorldWideWeb简介1.Web的产生和发展WorldWideWeb简写为WWW或Web,是TimBerners-Lee在CERN发明的。Web实际上是世界范围内相互联系的文件的大集合。,14,8.1Web基本概念,WorldWideWeb简介2.Web的工作原理1)客户机/服务器模式所有的C/S系统都可以分为3部分:客户机、中间件和服务器。客户机涉及软件的用户前端部分,常常使用图形用户界面。中间件位于客户机与服务器中间,通常对用户是透明的。服务器通常是作为核心的程序或机器,提供对客户机的服务。,15,8.1Web基本概念,WorldWideWeb简介2)超文本模式Web在Internet上基于超文本置标语言(HTML)、超文本传输协议(HTTP)和统一资源定位器(URL)。超文本可以简单定义为收集、存储和浏览离散信息,以及建立和表示信息之间关系的技术。超文本赋予了Web一种强有力的功能,使得用户以同一种方式来访问所有的Internet资源。,16,8.1Web基本概念,WorldWideWeb简介3)HTML语言Web信息服务系统使用的超文本是用HTML语言编写的。当用户使用Web服务客户浏览程序通过Internet阅读这些超文本时,客户浏览程序负责解释文本中嵌入的HTML,并按照HTML命令将文本中的信息显示给用户。,17,8.1Web基本概念,WorldWideWeb简介4)超文本传输通信协议HTTPHTTP协议是一种很简单的通信协议,其实现基础是通过网络查询的文件包含着可以实现进一步查询的链接。HTTP定义浏览器和服务器如何通信并传递信息。,18,8.1Web基本概念,WorldWideWeb简介5)SQL语言SQL是高级的非过程化编程语言,允许用户在高层数据结构上工作。具有不同底层结构的不同数据库系统可以使用相同的SQL语言作为数据输入与管理的接口。SQL语言包含4个部分:数据定义语言、数据操作语言、数据查询语言、数据控制语言。,19,8.1Web基本概念,WorldWideWeb简介6)统一资源定位器URLURL是一种统一格式的Internet信息资源地址表达方法,它将Internet提供的各类服务统编址,以便用户通过Web客户程序进行查询。,20,8.1Web基本概念,WorldWideWeb简介7)Web浏览器Web浏览器是一种功能强大的用于在Web上阅读文件的工具,常见的功能如表所示:,21,8.1Web基本概念,Web的特点1)Web是图形化的和易于导航的Web具有将图形、音频、视频信息集合于一体的特性。同时,Web是非常易于导航的,只需要从一个链接跳到另一个链接,就可以在各页各站点之间进行浏览了。2)Web与平台无关浏览WWW对用户系统平台没有什么限制。,22,8.1Web基本概念,Web的特点3)Web是分布式的Web能使物理上并不一定在一个站点的信息在逻辑上一体化。4)Web是动态的信息的提供者可以经常对站上的信息进行更新。5)Web是交互的Web的交互性表现在它的超连接上;此外,用户可通过填写FORM向服务器提交请求,服务器根据用户的请求返回相应信息。,23,8.2Web面临的安全威胁,常见的Web应用程序攻击1.Cookie毒害网站常常将一些包括用户ID、口令、账号等的Cookie存储到用户系统上。通过改变这些值,恶意的用户就可以访问不属于他们的账号。2.强行浏览黑客通过改变程序流程,能够强行访问一些正常情况下无法获得的信息和程序,例如日志文件、管理工具以及Web应用程序的源代码。,24,8.2Web面临的安全威胁,常见的Web应用程序攻击3跨站脚本执行跨站脚本执行漏洞的成因是因为CGI程序没有对用户提交的变量中的HTML代码进行过滤或转换。导致的威胁包括获取其他用户Cookie中的敏感数据、屏蔽页面特定信息、伪造页面信息、拒绝服务攻击、突破外网内网不同安全设置、与其它漏洞结合、修改系统设置、查看系统文件和执行系统命令等。,25,8.2Web面临的安全威胁,常见的Web应用程序攻击4.参数篡改参数篡改包括操纵URL字符串来检索用户用正常方式得不到的信息。导致该漏洞的主要原因是Web应用程序没有对客户端提交的参数进行严格的检验。5.输入信息控制输入信息控制包括通过控制由CGI脚本处理的HTML格式中的输入信息来运行系统命令。能将服务器的口令文件邮寄给恶意的用户或者删除系统上的所有文件。,26,8.2Web面临的安全威胁,常见的Web应用程序攻击6.缓冲区溢出缓冲区溢出是指当计算机程序向缓冲区内填充的数据位数超过了缓冲区本身的容量,溢出的数据覆盖在合法数据上。如果相关数据里包含了恶意代码,那么溢出的恶意代码就会改写应用程序返回的指令,使其指向包含恶意代码的地址,使其被CPU编译而执行。,27,8.2Web面临的安全威胁,常见的Web应用程序攻击7.调试选项及后门程序开发人员常常建立一些后门,并依靠调试选项来排除应用程序的故障,这些安全漏洞经常被留在一些放在Internet上的最终应用中。一些常见的后门使攻击者不用口令就可以登录或者访问允许直接进行应用配置的特殊URL。,28,8.2Web面临的安全威胁,常见的Web应用程序攻击8.不安全的配置许多操作系统和应用程序的缺省配置是非常不安全的。这些缺省配置有:开放了大量不必要的服务、安装某些不安全的第三方软件、使用缺省口令、缺省例子程序、不正确的文件访问许可设置等。为了避免被攻击者利用,在程序启用之前应该被重新配置。,29,8.2Web面临的安全威胁,常见的Web应用程序攻击9.管理缺失许多操作系统和第三方应用软件都存在一些已知漏洞,如果管理员不及时对Web站点进行维护,安装已经发布了的软件补丁,这些漏洞就很可能被黑客利用。,30,8.3针对Web应用程序漏洞的攻击,漏洞扫描器的基本原理如图:Web应用程序的安全漏洞包括由Web站点中的编程错误引起的用户详细信息被暴露、恶意用户执行任意的数据库查询、通过远程命令行访问服务器等非安全行为。漏洞扫描器的基本原理如图所示:,31,8.3针对Web应用程序漏洞的攻击,常见的基于网络扫描Web应用程序漏洞的过程大致分为四步:1)确定检测目标,确定Web服务器的IP地址或域名地址。2)从Web应用程序漏洞库列表中提取检测漏洞,或者从插件组中选取检测插件。3)发送检测请求,根据响应信息判断是否存在漏洞。4)返回Web应用程序存在的漏洞类别。,32,8.3针对Web应用程序漏洞的攻击,确定目标后,检测过程如图:,33,8.3针对Web应用程序漏洞的攻击,常见的Web应用程序漏洞1.物理路径泄露漏洞提供Web、Ftp等公共服务的服务器都可能出现物理路径泄露的问题。Web服务器路径泄露漏洞通常是由Web服务器处理用户请求出错导致的,返回结果时将网站本身所在的物理路径暴露出来,从而被攻击者利用。,34,8.3针对Web应用程序漏洞的攻击,常见的Web应用程序漏洞2.源代码泄露漏洞源代码泄露漏洞的产生是由输入验证错误引起的。3.目录遍历漏洞目录遍历攻击指的是恶意用户找到受限文件的位置并且浏览或者执行它们。主要通过猜测文件是否存在的方法进行。,35,8.3针对Web应用程序漏洞的攻击,常见的Web应用程序漏洞4.执行任意命令攻击的思想是运行自己输入的命令,而不是按照开发人员预期的那样,执行某个指定的程序。攻击这种漏洞的目标是发送到服务器上的操作系统命令或者可执行程序的户输入。,36,8.3针对Web应用程序漏洞的攻击,常见的Web应用程序漏洞5.缓冲区溢出漏洞缓冲区溢出是针对Web应用最严重的一种攻击。恶意的输入会侵占其他程序堆栈的内存空间,使得内存中原有的其他数据被覆盖。,37,8.3针对Web应用程序漏洞的攻击,常见的Web应用程序漏洞6拒绝服务攻击拒绝服务攻击的思想是代码执行总是需要时间的,每次由Web服务器、应用程序或数据库调用的函数,其执行过程总要耗费一定的处理器周期。如果将大量的请求快速提交到Web服务器上,并且都是很多耗时的服务,就可以阻止其他用户正常访问Web站点。,38,8.3针对Web应用程序漏洞的攻击,常见的Web应用程序漏洞7.CGI漏洞攻击CGI程序是交互性的,当攻击者提交了一些非正常的数据,那么服务器在解释这些数据时可能会绕过IIS对文件名所作的安全检查。,39,8.3针对Web应用程序漏洞的攻击,常见的Web应用程序漏洞8.跨站脚本攻击利用页面进行XSS攻击的方法主要有两种:1)将脚本直接输入到被攻击的站点的表格域中。2)将脚本嵌入到URL的地址的CGI参数中。,40,8.3针对Web应用程序漏洞的攻击,常见的Web应用程序漏洞跨站点脚本攻击过程如图所示:,41,8.3针对Web应用程序漏洞的攻击,常见的Web应用程序漏洞9.SQL注入攻击很多Web站点都会利用用户输入的参数动态的生成SQL查询要求,攻击者通过在URL、表格域或其他的输入域中输入自己的SQL命令,以此改变查询属性骗过应用程序,从而对数据库进行不受限的访问。,42,8.3针对Web应用程序漏洞的攻击,常见的Web应用程序漏洞SQL注入攻击流程如图所示:,43,8.3针对Web应用程序漏洞的攻击,常见的Web应用程序漏洞10.未验证的输入Web应用程序一般是根据HTTP请求中用户的输入决定如何响应,黑客能够利用HTTP请求中的任何一部分,包括URL、请求字符串、Cookie头部、表单项或隐含参数传递代码来发动攻击。使用编码技术可以绕过Web应用程序的验证与过滤机制。,44,8.3针对Web应用程序漏洞的攻击,常见的Web应用程序漏洞11.被破坏的认证和会话管理在网络中,通常的用户授权包括UserID和密码的使用。大多数的账户和会话管理漏洞可能破坏用户或系统管理员账号。网络应用程序必须建立会话来跟踪每个用户的请求数据流,如果会话标记没有能够妥善保存,攻击者就可能截获一个处在激活态的会话并且假扮成这个用户的身份标识。,45,8.3针对Web应用程序漏洞的攻击,常见的Web应用程序漏洞12.不当异常处理不当的异常处理可能给网站带来各种各样的安全问题。最常见的问题是向用户显示内部出错信息,如果这些出错信息不加选择地展现到用户面前,就可能公开了本不应该公开的细节。,46,8.3针对Web应用程序漏洞的攻击,常见的Web应用程序漏洞13.不安全的存储Web应用程序通常使用加密技术来保护敏感信息。在加密技术和应用程序的结合时,容易出现一些错误,从而给系统带来严重的安全隐患。经常出错的几个地方包括:1)未对关键数据进行加密;2)密钥、证书和密码的不安全存放;3)在内存中不恰当地保存关键信息;,47,8.3针对Web应用程序漏洞的攻击,常见的Web应用程序漏洞4)不当的随机资源;5)不当的算法选择;6)一种新开发的加密算法;7)当密钥更改或者其它必备的维护过程发生时,无法提供最新的技术支持。这些薄弱环节会给系统带来严重的安全隐患,受保护的资源也可能因为这些薄弱环节遭受到严重破坏。,48,8.3针对Web应用程序漏洞的攻击,常见的Web应用程序漏洞14.不安全的配置管理Web应用程序服务器的配置对于Web应用程序的安全起到了关键作用。许多服务器的配置问题影响了安全性:1)服务器软件漏洞或者错误的配置允许列出目录和进行目录遍历。2)没必要的缺省、备份或者例子文件。3)服务器软件未打补丁的漏洞。,49,8.3针对Web应用程序漏洞的攻击,常见的Web应用程序漏洞4)不当的文件和目录访问权限。5)没有必要的服务,包括内容管理和远程管理。6)使用缺省密码和账号。7)被激活的、可以被访问的管理或者调试功能。8)使用缺省证书。9)通过外部系统的不正确授权。10)错误配置的SSL证书和加密设置。,50,8.4Web应用程序的安全漏洞检测,认证机制漏洞检测根据Web应用程序要求的不同,可以使用基于HTTP的认证、基于表单的认证以及MicrosoftPassport。无论是哪种验证方式,应用程序都会要求用户输入用户名和密码。攻击者可以用自动化的攻击方式如猜测密码、破坏Cookie或旁路认证的方式来绕开认证机制。1)密码猜测攻击2)窃取Cookie3)结合SQL注入绕过登陆表单,51,8.4Web应用程序的安全漏洞检测,授权机制漏洞检测程序开发人员在编写Web应用程序的时候经常犯的一个错误就是使用了不正当的授权。普通用户在登录系统之后,应该被禁止访问其他用户的信息,而不正当的授权会使普通用户通过各种手段来提升自身的权限,如查看其他用户的信息,甚至得到更高级的管理权限。修改查询字符串和修改URL是两种常见的攻击授权的注入方式。,52,8.4Web应用程序的安全漏洞检测,输入验证漏洞检测攻击者通过提交应用程序没有意料到的数据进行攻击,这些漏洞的成因是应用程序中没有正确的验证机制。1)应用程序缓冲区溢出漏洞2)用圆点(./.)遍历应用程序的目录3)跨站脚本攻击4)边界检查漏洞5)搜索字段的百分号漏洞,53,8.5IIS和ASP技术构造Web站点,IIS自身的安全防护IIS检验登录用户是否合法的过程包含五个步骤:1.IP地址限制IIS能够授予或拒绝特定IP地址对其访问,在IIS4.0中这种授予或拒绝可以细化为对Web站点、虚拟目录、目录和文件的访问控制。,54,8.5IIS和ASP技术构造Web站点,IIS自身的安全防护2.用户许可检查IIS支持4种Web身份验证模型:匿名、基本、WindowsNT请求/应答、客户凭证映射。利用IIS的用户许可检查,将某些资源的访问权限限定为必须是特定的WindowsNT的合法用户,禁止匿名访问,以此来保护Web应用程序的重要部分。,55,8.5IIS和ASP技术构造Web站点,IIS自身的安全防护3.IIS许可检查一旦用户被授予访问权,服务器就检查URL和请求类型,并检查许可和SSL客户身份验证凭证。IIS还支持对文件操作的许可控制。,56,8.5IIS和ASP技术构造Web站点,IIS自身的安全防护4.自定义的身份验证自定义的身份验证意味着必须创建自己的身份验证机制。在系统中最常用的方法是执行一个用户名称和口令的数据库查询。,57,8.5IIS和ASP技术构造Web站点,IIS自身的安全防护5.NTFS文件系统许可通过使用验证身份方式的用户安全性背景,IIS可以获得对特定资源(基于URL)的访问权。IIS的安全登录检查在很大程度上依赖于NTFS文件系统,所以最好将虚拟目录都建立在NTFS驱动器上。只有当上述五个步骤的检查全部通过时,该登录用户才会被允许访问所请求的资源。,58,8.5IIS和ASP技术构造Web站点,ASP的安全编程ASP编程中可以使用必要的安全措施以提高站点的安全性,主要包括:1.密码的保护密码是系统中极敏感、关键的信息。密码的提交最好不要采用明文形式,以防被截取。,59,8.5IIS和ASP技术构造Web站点,ASP的安全编程2.对Session对象的利用利用Session对象,当用户通过安全登录的检查后,把SessionID属性作为一个Session变量存储起来。每当用户试图导航到要求有效连接的页面时,就可以比较当前的SessionID与存储在Session对象中的ID。如果它们不匹配,就可以采取适当的行动拒绝访问。,60,8.5IIS和ASP技术构造Web站点,ASP的安全编程3.控制

温馨提示

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

评论

0/150

提交评论