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

下载本文档

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

文档简介

1、123lWeb网络安全的概念、机制和特点网络安全的概念、机制和特点 lWeb站点的安全隐患站点的安全隐患 l网络安全的一些安全漏洞及测试网络安全的一些安全漏洞及测试 l有利于有利于Web站点安全的技术实现站点安全的技术实现 l防火墙在防火墙在Web站点安全中的应用站点安全中的应用 4l了解了解Web网络安全的概念、机制和特点网络安全的概念、机制和特点 l认识认识Web站点的安全隐患站点的安全隐患l掌握网络安全的一些安全漏洞及测试掌握网络安全的一些安全漏洞及测试 l描述有利于描述有利于Web站点安全的技术实现站点安全的技术实现 l了解防火墙在了解防火墙在Web站点安全中的应用站点安全中的应用 5

2、l国际互联网络国际互联网络Internet Internet 提供的服务可归纳提供的服务可归纳9项项 : 1. 远程登录服务远程登录服务 远程登录是远程登录是Internet最早提供的基本服务功能之一。最早提供的基本服务功能之一。Internet中的用户远程登录使用了中的用户远程登录使用了Telnet命令,命令,Telnet协议是协议是TCP/IP协议的一部分,它详细定义了客户机协议的一部分,它详细定义了客户机与远程服务器之间的交互过程。它的主要优点是能与远程服务器之间的交互过程。它的主要优点是能够解决不同类型的计算机系统之间的互操作问题。够解决不同类型的计算机系统之间的互操作问题。 6l国际

3、互联网络国际互联网络Internet Telnet采用了客户机采用了客户机/服务器模式,其结构如图所示:服务器模式,其结构如图所示:7l国际互联网络国际互联网络Internet 2. 文件传送服务文件传送服务FTP FTP服务由服务由TCP/IP的文件传输协议支持。只要加入的文件传输协议支持。只要加入Internet网的两台计算机都支持网的两台计算机都支持TCP/IP协议,无论它协议,无论它们相距多远,用户都能将一台计算机上的文件传输们相距多远,用户都能将一台计算机上的文件传输到另一台计算机上。到另一台计算机上。 8l国际互联网络国际互联网络Internet FTP在本地和远程文件系统之间传输

4、文件的过程如在本地和远程文件系统之间传输文件的过程如图所示:图所示:9l国际互联网络国际互联网络Internet 3. 电子邮政服务电子邮政服务 电子邮政简称为电子邮政简称为E-mail,是一种通过计算机网络与,是一种通过计算机网络与其他用户进行通信的现代化手段。用户必须向提供其他用户进行通信的现代化手段。用户必须向提供电子邮政服务的机构提出申请,该机构在其与电子邮政服务的机构提出申请,该机构在其与Internet联网的计算机上为用户建立一个电子邮箱,联网的计算机上为用户建立一个电子邮箱,分配一个分配一个E-mail地址。地址。 10l国际互联网络国际互联网络Internet 4.名址服务名址

5、服务 名址服务器可以向用户提供对用户名址,计算机名名址服务器可以向用户提供对用户名址,计算机名址和址和E-mail地址的查询服务。地址的查询服务。 5. 文档查询服务文档查询服务 Internet中有一种被称为文档查询服务器(中有一种被称为文档查询服务器(Archie server)的计算机,用户只要向这种服务器提供希望)的计算机,用户只要向这种服务器提供希望查找的文件的文件名或文件描述说明中包含的字符查找的文件的文件名或文件描述说明中包含的字符串,文档查询服务器就能查找到存放着所需文件的串,文档查询服务器就能查找到存放着所需文件的FTP服务器。服务器。 11l国际互联网络国际互联网络Inte

6、rnet 6. 网络新闻服务网络新闻服务 网络新闻(网络新闻(Network News)是由一些)是由一些Internet用户为用户为了讨论共同感兴趣的问题而组成的一种逻辑上的用了讨论共同感兴趣的问题而组成的一种逻辑上的用户交流网络。用户可以通过户交流网络。用户可以通过Internet随时阅读服务器随时阅读服务器提供的消息,并能把自己的观点提供给服务器,作提供的消息,并能把自己的观点提供给服务器,作为消息在组内发布。为消息在组内发布。 7. Gopher 服务服务 Gopher是基于菜单驱动的是基于菜单驱动的Internet信息查询工具,它信息查询工具,它能将用户的请求自动转换为能将用户的请求

7、自动转换为FTP 或或Telnet命令。命令。 12l国际互联网络国际互联网络Internet 8. WAIS服务服务 广域信息服务(广域信息服务(Wide Area Information Service)基)基于文件内容(关键字)于文件内容(关键字) 的自动搜索服务,通常被图的自动搜索服务,通常被图书管理员、医学研究员等一些专业人士使用。书管理员、医学研究员等一些专业人士使用。 9. www服务服务 13lWorld Wide Web简介简介 1. Web的产生和发展的产生和发展 World Wide Web 简写为简写为WWW或或Web,是是Tim Berners-Lee在在CERN发明

8、的。发明的。 Web实际上是世界范实际上是世界范围内相互联系的文件的大集合。围内相互联系的文件的大集合。14lWorld Wide Web简介简介 2. Web的工作原理的工作原理 1)客户机)客户机/服务器模式服务器模式 所有的所有的C/S系统都可以分为系统都可以分为3部分:客户机、中间件部分:客户机、中间件和服务器。和服务器。 客户机涉及软件的用户前端部分,常常使用图形用客户机涉及软件的用户前端部分,常常使用图形用户界面。中间件位于客户机与服务器中间,通常对户界面。中间件位于客户机与服务器中间,通常对用户是透明的。服务器通常是作为核心的程序或机用户是透明的。服务器通常是作为核心的程序或机器

9、,提供对客户机的服务。器,提供对客户机的服务。 15lWorld Wide Web简介简介 2)超文本模式)超文本模式 Web在在Internet上基于超文本置标语言上基于超文本置标语言(HTML)、 超超 文本传输协议(文本传输协议(HTTP)和统一资源定位器()和统一资源定位器(URL)。 超文本可以简单定义为收集、存储和浏览离散信息,超文本可以简单定义为收集、存储和浏览离散信息, 以及建立和表示信息之间关系的技术。以及建立和表示信息之间关系的技术。 超文本赋予了超文本赋予了Web一种强有力的功能,使得用户以一种强有力的功能,使得用户以同一种方式来访问所有的同一种方式来访问所有的Inter

10、net资源。资源。 16lWorld Wide Web简介简介 3)HTML语言语言 Web信息服务系统使用的超文本是用信息服务系统使用的超文本是用HTML语言编语言编写的。当用户使用写的。当用户使用Web服务客户浏览程序通过服务客户浏览程序通过Internet阅读这些超文本时,客户浏览程序负责解释阅读这些超文本时,客户浏览程序负责解释文本中嵌入的文本中嵌入的HTML,并按照,并按照HTML命令将文本中命令将文本中的信息显示给用户。的信息显示给用户。 17lWorld Wide Web简介简介 4)超文本传输通信协议)超文本传输通信协议HTTP HTTP协议是一种很简单的通信协议,其实现基础是

11、协议是一种很简单的通信协议,其实现基础是通过网络查询的文件包含着可以实现进一步查询的通过网络查询的文件包含着可以实现进一步查询的链接。链接。 HTTP定义浏览器和服务器如何通信并传递信息。定义浏览器和服务器如何通信并传递信息。 18lWorld Wide Web简介简介 5)SQL语言语言 SQL是高级的非过程化编程语言,允许用户在高层是高级的非过程化编程语言,允许用户在高层数据结构上工作。具有不同底层结构的不同数据库数据结构上工作。具有不同底层结构的不同数据库系统可以使用相同的系统可以使用相同的SQL语言作为数据输入与管理语言作为数据输入与管理的接口。的接口。 SQL语言包含语言包含4个部分

12、:数据定义语言个部分:数据定义语言 、数据操作语、数据操作语言、数据查询语言言、数据查询语言 、数据控制语言、数据控制语言 。 19lWorld Wide Web简介简介 6)统一资源定位器)统一资源定位器URL URL是一种统一格式的是一种统一格式的Internet信息资源地址表达方信息资源地址表达方法,它将法,它将Internet提供的各类服务统提供的各类服务统编址,以便用编址,以便用户通过户通过Web客户程序进行查询。客户程序进行查询。 20lWorld Wide Web简介简介 7)Web浏览器浏览器 Web浏览器是一种功能强大的用于在Web上阅读文件的工具,常见的功能如表所示:21l

13、Web的特点的特点 1)Web是图形化的和易于导航的是图形化的和易于导航的 Web具有将图形、音频、视频信息集合于一体的特具有将图形、音频、视频信息集合于一体的特性。同时,性。同时,Web是非常易于导航的,只需要从一个是非常易于导航的,只需要从一个链接跳到另一个链接,就可以在各页各站点之间进链接跳到另一个链接,就可以在各页各站点之间进行浏览了。行浏览了。 2)Web与平台无关与平台无关 浏览浏览WWW对用户系统平台没有什么限制。对用户系统平台没有什么限制。 22lWeb的特点的特点 3)Web是分布式的是分布式的 Web能使物理上并不一定在一个站点的信息在逻辑能使物理上并不一定在一个站点的信息

14、在逻辑上一体化。上一体化。 4)Web是动态的是动态的 信息的提供者可以经常对站上的信息进行更新。信息的提供者可以经常对站上的信息进行更新。 5)Web是交互的是交互的 Web的交互性表现在它的超连接上;此外,用户可的交互性表现在它的超连接上;此外,用户可通过填写通过填写FORM向服务器提交请求,服务器根据用向服务器提交请求,服务器根据用户的请求返回相应信息。户的请求返回相应信息。23l常见的常见的Web应用程序攻击应用程序攻击 1. Cookie毒害毒害 网站常常将一些包括用户网站常常将一些包括用户 ID、口令、账号等的、口令、账号等的Cookie存储到用户系统上。通过改变这些值,恶意存储到

15、用户系统上。通过改变这些值,恶意的用户就可以访问不属于他们的账号。的用户就可以访问不属于他们的账号。 2. 强行浏览强行浏览 黑客通过改变程序流程,能够强行访问一些正常情黑客通过改变程序流程,能够强行访问一些正常情况下无法获得的信息和程序,例如日志文件、管理况下无法获得的信息和程序,例如日志文件、管理工具以及工具以及Web应用程序的源代码。应用程序的源代码。 24l常见的常见的Web应用程序攻击应用程序攻击 3跨站脚本执行跨站脚本执行 跨站脚本执行漏洞的成因是因为跨站脚本执行漏洞的成因是因为CGI程序没有对用程序没有对用户提交的变量中的户提交的变量中的HTML代码进行过滤或转换。代码进行过滤或

16、转换。 导致的威胁包括获取其他用户导致的威胁包括获取其他用户Cookie中的敏感数据、中的敏感数据、屏蔽页面特定信息、伪造页面信息、拒绝服务攻击、屏蔽页面特定信息、伪造页面信息、拒绝服务攻击、突破外网内网不同安全设置、与其它漏洞结合、修突破外网内网不同安全设置、与其它漏洞结合、修改系统设置、查看系统文件和执行系统命令等。改系统设置、查看系统文件和执行系统命令等。 25l常见的常见的Web应用程序攻击应用程序攻击 4. 参数篡改参数篡改 参数篡改包括操纵参数篡改包括操纵URL字符串来检索用户用正常方字符串来检索用户用正常方式得不到的信息。导致该漏洞的主要原因是式得不到的信息。导致该漏洞的主要原因

17、是Web应应用程序没有对客户端提交的参数进行严格的检验。用程序没有对客户端提交的参数进行严格的检验。 5. 输入信息控制输入信息控制 输入信息控制包括通过控制由输入信息控制包括通过控制由 CGI 脚本处理的脚本处理的 HTML 格式中的输入信息来运行系统命令。能将服格式中的输入信息来运行系统命令。能将服务器的口令文件邮寄给恶意的用户或者删除系统上务器的口令文件邮寄给恶意的用户或者删除系统上的所有文件。的所有文件。 26l常见的常见的Web应用程序攻击应用程序攻击 6. 缓冲区溢出缓冲区溢出 缓冲区溢出是指当计算机程序向缓冲区内填充的数缓冲区溢出是指当计算机程序向缓冲区内填充的数据位数超过了缓冲

18、区本身的容量,溢出的数据覆盖据位数超过了缓冲区本身的容量,溢出的数据覆盖在合法数据上。在合法数据上。 如果相关数据里包含了恶意代码,那么溢出的恶意如果相关数据里包含了恶意代码,那么溢出的恶意代码就会改写应用程序返回的指令,使其指向包含代码就会改写应用程序返回的指令,使其指向包含恶意代码的地址,使其被恶意代码的地址,使其被 CPU 编译而执行。编译而执行。 27l常见的常见的Web应用程序攻击应用程序攻击 7. 调试选项及后门调试选项及后门 程序开发人员常常建立一些后门,并依靠调试选项程序开发人员常常建立一些后门,并依靠调试选项来排除应用程序的故障,这些安全漏洞经常被留在来排除应用程序的故障,这

19、些安全漏洞经常被留在一些放在一些放在Internet上的最终应用中。上的最终应用中。 一些常见的后门使攻击者不用口令就可以登录或者访一些常见的后门使攻击者不用口令就可以登录或者访问允许直接进行应用配置的特殊问允许直接进行应用配置的特殊URL。 28l常见的常见的Web应用程序攻击应用程序攻击 8. 不安全的配置不安全的配置 许多操作系统和应用程序的缺省配置是非常不安全许多操作系统和应用程序的缺省配置是非常不安全的。这些缺省配置有:开放了大量不必要的服务、的。这些缺省配置有:开放了大量不必要的服务、安装某些不安全的第三方软件、使用缺省口令、缺安装某些不安全的第三方软件、使用缺省口令、缺省例子程序

20、、不正确的文件访问许可设置等。省例子程序、不正确的文件访问许可设置等。 为了避免被攻击者利用,在程序启用之前应该被重为了避免被攻击者利用,在程序启用之前应该被重新配置。新配置。 29l常见的常见的Web应用程序攻击应用程序攻击 9. 管理缺失管理缺失 许多操作系统和第三方应用软件都存在一些已知漏许多操作系统和第三方应用软件都存在一些已知漏洞,如果管理员不及时对洞,如果管理员不及时对Web站点进行维护,安装站点进行维护,安装已经发布了的软件补丁,这些漏洞就很可能被黑客已经发布了的软件补丁,这些漏洞就很可能被黑客利用。利用。 30l漏洞扫描器的基本原理如图漏洞扫描器的基本原理如图 : Web应用程

21、序的安全漏洞包括由应用程序的安全漏洞包括由Web站点中的编程站点中的编程错误引起的用户详细信息被暴露、恶意用户执行任错误引起的用户详细信息被暴露、恶意用户执行任意的数据库查询、通过远程命令行访问服务器等非意的数据库查询、通过远程命令行访问服务器等非安全行为。漏洞扫描器的基本原理如图所示:安全行为。漏洞扫描器的基本原理如图所示: 31l常见的基于网络扫描常见的基于网络扫描Web应用程序漏洞的过应用程序漏洞的过程大致分为四步程大致分为四步 : 1)确定检测目标,确定)确定检测目标,确定Web服务器的服务器的IP地址或域名地址或域名地址。地址。 2)从)从Web应用程序漏洞库列表中提取检测漏洞,或应

22、用程序漏洞库列表中提取检测漏洞,或者从插件组中选取检测插件。者从插件组中选取检测插件。 3)发送检测请求,根据响应信息判断是否存在漏洞。)发送检测请求,根据响应信息判断是否存在漏洞。 4)返回)返回Web应用程序存在的漏洞类别。应用程序存在的漏洞类别。32l确定目标后,检测过程如图确定目标后,检测过程如图 : 33l常见的常见的Web应用程序漏洞应用程序漏洞 1. 物理路径泄露漏洞物理路径泄露漏洞 提供提供Web、Ftp等公共服务的服务器都可能出现物理等公共服务的服务器都可能出现物理路径泄露的问题。路径泄露的问题。 Web服务器路径泄露漏洞通常是由服务器路径泄露漏洞通常是由Web服务器处理服务

23、器处理用户请求出错导致的,返回结果时将网站本身所在用户请求出错导致的,返回结果时将网站本身所在的物理路径暴露出来,从而被攻击者利用。的物理路径暴露出来,从而被攻击者利用。 34l常见的常见的Web应用程序漏洞应用程序漏洞 2. 源代码泄露漏洞源代码泄露漏洞 源代码泄露漏洞的产生是由输入验证错误引起的。源代码泄露漏洞的产生是由输入验证错误引起的。 3. 目录遍历漏洞目录遍历漏洞 目录遍历攻击指的是恶意用户找到受限文件的位置目录遍历攻击指的是恶意用户找到受限文件的位置并且浏览或者执行它们。主要通过猜测文件是否存并且浏览或者执行它们。主要通过猜测文件是否存在的方法进行。在的方法进行。 35l常见的常

24、见的Web应用程序漏洞应用程序漏洞 4. 执行任意命令执行任意命令 攻击的思想是运行自己输入的命令,而不是按照开攻击的思想是运行自己输入的命令,而不是按照开发人员预期的那样,执行某个指定的程序。攻击这发人员预期的那样,执行某个指定的程序。攻击这种漏洞的目标是发送到服务器上的操作系统命令或种漏洞的目标是发送到服务器上的操作系统命令或者可执行程序的户输入。者可执行程序的户输入。 36l常见的常见的Web应用程序漏洞应用程序漏洞 5. 缓冲区溢出漏洞缓冲区溢出漏洞 缓冲区溢出是针对缓冲区溢出是针对Web应用最严重的一种攻击。恶应用最严重的一种攻击。恶意的输入会侵占其他程序堆栈的内存空间,使得内意的输

25、入会侵占其他程序堆栈的内存空间,使得内存中原有的其他数据被覆盖。存中原有的其他数据被覆盖。 37l常见的常见的Web应用程序漏洞应用程序漏洞 6拒绝服务攻击拒绝服务攻击 拒绝服务攻击的思想是代码执行总是需要时间的,拒绝服务攻击的思想是代码执行总是需要时间的,每次由每次由Web服务器、应用程序或数据库调用的函数,服务器、应用程序或数据库调用的函数,其执行过程总要耗费一定的处理器周期。其执行过程总要耗费一定的处理器周期。 如果将大量的请求快速提交到如果将大量的请求快速提交到Web服务器上,并且服务器上,并且都是很多耗时的服务,就可以阻止其他用户正常访都是很多耗时的服务,就可以阻止其他用户正常访问问

26、Web站点。站点。38l常见的常见的Web应用程序漏洞应用程序漏洞 7. CGI漏洞攻击漏洞攻击 CGI程序是交互性的,当攻击者提交了一些非正常程序是交互性的,当攻击者提交了一些非正常的数据,那么服务器在解释这些数据时可能会绕过的数据,那么服务器在解释这些数据时可能会绕过 IIS 对文件名所作的安全检查。对文件名所作的安全检查。39l常见的常见的Web应用程序漏洞应用程序漏洞 8. 跨站脚本攻击跨站脚本攻击 利用页面进行利用页面进行XSS攻击的方法主要有两种攻击的方法主要有两种 : 1)将脚本直接输入到被攻击的站点的表格域中。)将脚本直接输入到被攻击的站点的表格域中。 2)将脚本嵌入到)将脚本

27、嵌入到URL的地址的的地址的CGI参数中。参数中。 40l常见的常见的Web应用程序漏洞应用程序漏洞 跨站点脚本攻击过程如图所示:跨站点脚本攻击过程如图所示: 41l常见的常见的Web应用程序漏洞应用程序漏洞 9. SQL 注入攻击注入攻击 很多很多Web站点都会利用用户输入的参数动态的生成站点都会利用用户输入的参数动态的生成SQL查询要求,攻击者通过在查询要求,攻击者通过在 URL、表格域或其他、表格域或其他的输入域中输入自己的的输入域中输入自己的SQL命令,以此改变查询属命令,以此改变查询属性骗过应用程序,从而对数据库进行不受限的访问。性骗过应用程序,从而对数据库进行不受限的访问。 42l

28、常见的常见的Web应用程序漏洞应用程序漏洞 SQL 注入攻击流程如图所示:注入攻击流程如图所示: 43l常见的常见的Web应用程序漏洞应用程序漏洞 10. 未验证的输入未验证的输入 Web应用程序一般是根据应用程序一般是根据HTTP请求中用户的输入决请求中用户的输入决定如何响应,定如何响应, 黑客能够利用黑客能够利用HTTP请求中的任何一请求中的任何一部分,包括部分,包括URL、请求字符串、请求字符串、Cookie头部、表单头部、表单项或隐含参数传递代码来发动攻击。使用编码技术项或隐含参数传递代码来发动攻击。使用编码技术可以绕过可以绕过Web应用程序的验证与过滤机制。应用程序的验证与过滤机制。

29、 44l常见的常见的Web应用程序漏洞应用程序漏洞 11. 被破坏的认证和会话管理被破坏的认证和会话管理 在网络中,通常的用户授权包括在网络中,通常的用户授权包括UserID和密码的使和密码的使用。大多数的账户和会话管理漏洞可能破坏用户或用。大多数的账户和会话管理漏洞可能破坏用户或系统管理员账号。系统管理员账号。 网络应用程序必须建立会话来跟踪每个用户的请求网络应用程序必须建立会话来跟踪每个用户的请求数据流,如果会话标记没有能够妥善保存,攻击者数据流,如果会话标记没有能够妥善保存,攻击者就可能截获一个处在激活态的会话并且假扮成这个就可能截获一个处在激活态的会话并且假扮成这个用户的身份标识。用户

30、的身份标识。45l常见的常见的Web应用程序漏洞应用程序漏洞 12.不当异常处理不当异常处理 不当的异常处理可能给网站带来各种各样的安全问不当的异常处理可能给网站带来各种各样的安全问题。最常见的问题是向用户显示内部出错信息,如题。最常见的问题是向用户显示内部出错信息,如果这些出错信息不加选择地展现到用户面前,就可果这些出错信息不加选择地展现到用户面前,就可能公开了本不应该公开的细节。能公开了本不应该公开的细节。 46l常见的常见的Web应用程序漏洞应用程序漏洞 13. 不安全的存储不安全的存储 Web应用程序通常使用加密技术来保护敏感信息。应用程序通常使用加密技术来保护敏感信息。在加密技术和应

31、用程序的结合时,容易出现一些错在加密技术和应用程序的结合时,容易出现一些错误,从而给系统带来严重的安全隐患。误,从而给系统带来严重的安全隐患。 经常出错的几个地方包括经常出错的几个地方包括: 1)未对关键数据进行加密;)未对关键数据进行加密; 2)密钥、证书和密码的不安全存放;)密钥、证书和密码的不安全存放; 3)在内存中不恰当地保存关键信息;)在内存中不恰当地保存关键信息;47l常见的常见的Web应用程序漏洞应用程序漏洞 4)不当的随机资源;)不当的随机资源; 5)不当的算法选择;)不当的算法选择; 6)一种新开发的加密算法;)一种新开发的加密算法; 7)当密钥更改或者其它必备的维护过程发生

32、时,无)当密钥更改或者其它必备的维护过程发生时,无 法提供最新的技术支持。法提供最新的技术支持。 这些薄弱环节会给系统带来严重的安全隐患,受保护这些薄弱环节会给系统带来严重的安全隐患,受保护 的资源也可能因为这些薄弱环节遭受到严重破坏。的资源也可能因为这些薄弱环节遭受到严重破坏。 48l常见的常见的Web应用程序漏洞应用程序漏洞 14.不安全的配置管理不安全的配置管理 Web应用程序服务器的配置对于应用程序服务器的配置对于Web应用程序的安应用程序的安全起到了关键作用。许多服务器的配置问题影响了全起到了关键作用。许多服务器的配置问题影响了安全性:安全性: 1)服务器软件漏洞或者错误的配置允许列

33、出目录和)服务器软件漏洞或者错误的配置允许列出目录和进行目录遍历。进行目录遍历。 2)没必要的缺省、备份或者例子文件。)没必要的缺省、备份或者例子文件。 3)服务器软件未打补丁的漏洞。)服务器软件未打补丁的漏洞。 49l常见的常见的Web应用程序漏洞应用程序漏洞 4)不当的文件和目录访问权限。)不当的文件和目录访问权限。 5)没有必要的服务,包括内容管理和远程管理。)没有必要的服务,包括内容管理和远程管理。 6)使用缺省密码和账号。)使用缺省密码和账号。 7)被激活的、可以被访问的管理或者调试功能。)被激活的、可以被访问的管理或者调试功能。 8)使用缺省证书。)使用缺省证书。 9)通过外部系统

34、的不正确授权。)通过外部系统的不正确授权。 10)错误配置的)错误配置的 SSL 证书和加密设置。证书和加密设置。50l认证机制漏洞检测认证机制漏洞检测 根据根据Web应用程序要求的不同,可以使用基于应用程序要求的不同,可以使用基于HTTP的认证、基于表单的认证以及的认证、基于表单的认证以及Microsoft Passport。无论是哪种验证方式,应用程序都会要求用户输入无论是哪种验证方式,应用程序都会要求用户输入用户名和密码。攻击者用户名和密码。攻击者可以用自动化的攻击方式如可以用自动化的攻击方式如猜测猜测密码密码、破坏、破坏Cookie或旁路认证的方式来绕开认或旁路认证的方式来绕开认证机制

35、。证机制。 1)密码猜测攻击)密码猜测攻击 2)窃取)窃取Cookie 3)结合)结合SQL注入绕过登陆表单注入绕过登陆表单 51l授权机制漏洞检测授权机制漏洞检测 程序开发人员在编写程序开发人员在编写Web应用程序的时候经常犯的应用程序的时候经常犯的一个错误就是使用了不正当的授权。普通用户在登一个错误就是使用了不正当的授权。普通用户在登录系统之后,应该被禁止访问其他用户的信息,而录系统之后,应该被禁止访问其他用户的信息,而不正当的授权会使普通用户通过各种手段来提升自不正当的授权会使普通用户通过各种手段来提升自身的权限,如查看其他用户的信息,甚至得到更高身的权限,如查看其他用户的信息,甚至得到

36、更高级的管理权限。修改查询字符串和修改级的管理权限。修改查询字符串和修改URL是两种是两种常见的攻击授权的注入方式。常见的攻击授权的注入方式。 52l输入验证漏洞检测输入验证漏洞检测 攻击者通过提交应用程序没有意料到的数据进行攻攻击者通过提交应用程序没有意料到的数据进行攻击,这些漏洞的成因是应用程序中没有正确的验证击,这些漏洞的成因是应用程序中没有正确的验证机制。机制。 1)应用程序缓冲区溢出漏洞)应用程序缓冲区溢出漏洞 2)用圆点()用圆点(./.)遍历应用程序的目录)遍历应用程序的目录 3)跨站脚本攻击)跨站脚本攻击 4)边界检查漏洞)边界检查漏洞 5)搜索字段的百分号漏洞)搜索字段的百分

37、号漏洞 53lIIS自身的安全防护自身的安全防护 IIS检验登录用户是否合法的过程包含五个步骤:检验登录用户是否合法的过程包含五个步骤: 1. IP地址限制地址限制 IIS能够授予或拒绝特定能够授予或拒绝特定IP地址对其访问,在地址对其访问,在IIS4.0中这种授予或拒绝可以细化为对中这种授予或拒绝可以细化为对Web站点、虚拟目站点、虚拟目录、目录和文件的访问控制。录、目录和文件的访问控制。 54lIIS自身的安全防护自身的安全防护 2. 用户许可检查用户许可检查 IIS支持支持4种种Web身份验证模型:匿名、基本、身份验证模型:匿名、基本、Windows NT请求请求/应答、客户凭证映射。应

38、答、客户凭证映射。 利用利用IIS的用户许可检查,将某些资源的访问权限限的用户许可检查,将某些资源的访问权限限定为必须是特定的定为必须是特定的Windows NT的合法用户,禁止匿的合法用户,禁止匿名访问,以此来保护名访问,以此来保护Web应用程序的重要部分。应用程序的重要部分。 55lIIS自身的安全防护自身的安全防护 3. IIS许可检查许可检查 一旦用户被授予访问权,服务器就检查一旦用户被授予访问权,服务器就检查URL和请求和请求类型,并检查许可和类型,并检查许可和SSL客户身份验证凭证。客户身份验证凭证。 IIS还还支持对文件操作的许可控制。支持对文件操作的许可控制。 56lIIS自身

39、的安全防护自身的安全防护 4. 自定义的身份验证自定义的身份验证 自定义的身份验证意味着必须创建自己的身份验证自定义的身份验证意味着必须创建自己的身份验证机制。在系统中最常用的方法是执行一个用户名称机制。在系统中最常用的方法是执行一个用户名称和口令的数据库查询。和口令的数据库查询。57lIIS自身的安全防护自身的安全防护 5. NTFS文件系统许可文件系统许可 通过使用验证身份方式的用户安全性背景,通过使用验证身份方式的用户安全性背景,IIS可以可以获得对特定资源(基于获得对特定资源(基于URL)的访问权。)的访问权。IIS的安全的安全登录检查在很大程度上依赖于登录检查在很大程度上依赖于NTF

40、S文件系统,所以文件系统,所以最好将虚拟目录都建立在最好将虚拟目录都建立在NTFS驱动器上。驱动器上。 只有当上述五个步骤的检查全部通过时,该登录用只有当上述五个步骤的检查全部通过时,该登录用户才会被允许访问所请求的资源。户才会被允许访问所请求的资源。58lASP的安全编程的安全编程 ASP编程中可以使用必要的安全措施以提高站点的安编程中可以使用必要的安全措施以提高站点的安全性,主要包括:全性,主要包括: 1.密码的保护密码的保护 密码是系统中极敏感、关键的信息。密码的提交最密码是系统中极敏感、关键的信息。密码的提交最好不要采用明文形式,以防被截取。好不要采用明文形式,以防被截取。 59lASP的安全编程的安全编程 2. 对对Session对象的利用对象的利用 利用利用Session对象,当用户通过安全登录的检查后,对象,当用户通过安全登录的检查后,把把Session ID属性作为一个属性作为一个Session变量存储起来。每变量存储起来。每当用户试图导航到要求有效连接的页面时,就可以当用户试图导航到要求有效连接的页面时,就可以比较当前的比较当前的Session ID与存储在与存储在Session对象中的对象中的ID。如果它们不匹配,就可以采取适当的行动拒绝访问。如果它们不匹配,就可以采取适当的行动拒绝访问。 60lASP的安全编程的安全编

温馨提示

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

评论

0/150

提交评论