欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    [互联网]网络安全 第7章 Web的安全.ppt

    • 资源ID:4602693       资源大小:542.50KB        全文页数:70页
    • 资源格式: PPT        下载积分:10金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要10金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    [互联网]网络安全 第7章 Web的安全.ppt

    第7章Web的安全,7.1Web安全概述 7.1.1Internet的脆弱性 Web是建立在Internet上的典型服务,所以,Internet的安全是web安全的前提和基础。Internet的安全隐患主要表现在:(1)Internet的无边界性为黑客进行跨国攻击提供了有利的条件,他们足不出户就可以对世界上任何角落的主机进行攻击和破坏。(2)Internet虚拟的“自由、民主、平等”观念容易使人轻易接受,不同的社会意识形态很容易相互渗透。这些因素为Internet的应用埋下了安全隐患。,7.1.1Internet的脆弱性,(3)Internet没有确定用户真实身份的有效方法,通过IP地址识别和管理网络用户的机制是不可靠的,存在着严重的安全漏洞,容易被欺骗。(4)Internet是分布式的网络,不存在中央监控管理机制,也没有完善的法律和法规,因此无法对Internet犯罪进行有效地处理。(5)Internet本身没有审计和记录功能,对发生的事情没有记录,这本身也是一个安全隐患。(6)Internet从技术上来讲是开放的,是基于可信、友好的前提设计的,是为君子设计而不防小人的。,7.1.2Web的安全问题,1影响Web安全的因素(1)由于Web服务器存在的安全漏洞和复杂性,使得依赖这些服务器的系统经常面临一些无法预测的风险。Web站点的安全问题可能涉及与它相连的内部局域网,如果局域网和广域网相连,还可能影响到广域网上其他的组织。另外,Web站点还经常成为黑客攻击其他站点的跳板。随着Internet的发展,缺乏有效安全机制的Web服务器正面临着成千上万种计算机病毒的威胁。Web使得服务器的安全问题显得更加重要。,1影响Web安全的因素,(2)Web程序员由于工作失误或者程序设计上的漏洞,也可能造成Web系统的安全缺陷,这些缺陷可能被一些心怀不满的员工、网络间谍或入侵者所利用。因此,在Web脚本程序的设计上,提高网络编程质量,也是提高Web安全性的重要方面。(3)用户是通过浏览器和Web站点进行交互的,由于浏览器本身的安全漏洞,使得非法用户可以通过浏览器攻击Web站点,这也是需要警惕的一个重要方面。,(1)未经授权的存取动作。由于操作系统等方面的漏洞,使得未经授权的用户可以获得Web服务器上的秘密文件和数据,甚至可以对数据进行修改、删除,这是Web站点的一个严重的安全问题。(2)窃取系统的信息。用户侵入系统内部,获取系统的一些重要信息,并利用这些系统信息,达到进一步攻击系统的目的。(3)破坏系统。指对网络系统、操作系统、应用程序进行非法使用,使得他们能够修改或破坏系统。(4)病毒破坏。目前,Web站点面临着各种各样病毒的威胁,使得本不平静的网络变得更加动荡不安。,2Web中的安全问题,7.2.1Web服务器存在的漏洞 Web服务器存在的主要漏洞包括物理路径泄露,目录遍历,执行任意命令,缓冲区溢出,拒绝服务,SQL注入,条件竞争和CGI漏洞。无论是什么漏洞,都体现着安全是一个整体,考虑Web服务器的安全性,必须要考虑到与之相配合的操作系统。,7.2Web服务器的安全,1.物理路径泄露,物理路径泄露一般是由于Web服务器处理用户请求出错导致的,如通过提交一个超长的请求,或者是某个精心构造的特殊请求,或是请求一个Web服务器上不存在的文件。这些请求都有一个共同特点,那就是被请求的文件肯定属于CGI脚本,而不是静态HTML页面。还有一种情况,就是Web服务器的某些显示环境变量的程序错误的输出了Web服务器的物理路径,这通常是设计上的问题。,2.目录遍历,目录遍历对于Web服务器来说并不多见,通过对任意目录附加“./”,或者是在有特殊意义的目录附加“./”,或者是附加“./”的一些变形,如“.”或“./”甚至其编码,都可能导致目录遍历。前一种情况并不多见,但是后面的几种情况就常见得多,曾经非常流行的IIS二次解码漏洞和Unicode解码漏洞都可以看作是变形后的编码。,3.执行任意命令,执行任意命令即执行任意操作系统命令,主要包括两种情况:一是通过遍历目录,如前面提到的二次解码和UNICODE解码漏洞,来执行系统命令。另外一种就是Web服务器把用户提交的请求作为SSI指令解析,因此导致执行任意命令。,4.缓冲区溢出,缓冲区溢出漏洞是非常常见的,通常是Web服务器没有对用户提交的超长请求没有进行合适的处理,这种请求可能包括超长URL,超长HTTP Header域,或者是其它超长的数据。这种漏洞可能导致执行任意命令或者是拒绝服务,这一般取决于构造的数据。,5.SQL注入,SQL注入的漏洞是在编程过程中造成的。后台数据库允许动态SQL语句的执行。前台应用程序没有对用户输入的数据或者页面提交的信息(如 GET)进行必要的安全检查。这是由于数据库自身的特性,与web程序的编程语言无关。几乎所有的关系数据库系统和相应的SQL语言都面临SQL注入的潜在威胁。,6.拒绝服务,拒绝服务产生的原因多种多样,主要包括超长URL,特殊目录,超长HTTP Header域,畸形HTTP Header域或者是DOS设备文件等。由于Web服务器在处理这些特殊请求时不知所措或者是处理方式不当,因此出错终止或挂起。,7.条件竞争,这里的条件竞争主要针对一些管理服务器而言,这类服务器一般是以System或Root身份运行的。当它们需要使用一些临时文件,而在对这些文件进行写操作之前,却没有对文件的属性进行检查,一般可能导致重要系统文件被重写,甚至获得系统控制权。,8.CGI漏洞,通过CGI脚本存在的安全漏洞,比如暴露敏感信息、缺省提供的某些正常服务未关闭、利用某些服务漏洞执行命令、应用程序存在远程溢出、非通用CGI程序的编程漏洞等。,1Windows2000 Server下Web服务器的安全配置(1)目录规划与安装 安装前要对Web目录进行规划,系统文件和应用文件要分别放在不同的分区上,而且不要以默认的方式安装;在安装的过程中系统文件不要安装在安装时显示的默认路径上。由于IIS存在许多漏洞,容易受到黑客的攻击,所以不要把IIS安装到(主)域控制器上。,7.2.2Web服务器的安全配置,1.Windows2000 Server下Web服务器的安全配置,(2)用户控制 对于普通用户来讲其安全性可以通过相应的“安全策略”来加强对他们的管理,约束其属性和行为。值得注意的是在IIS安装完以后会自动生成一个匿名账号IUSE_Computer_name,而匿名访问Web服务器应该被禁止,否则会带来一定的安全隐患。禁止的方法:启动“Internet服务管理器”;在Web站点属性页的“目录安全性”选项卡中单击“匿名访问和验证”;然后单击“编辑(E)”按钮打开“验证方法”对话框(如下图所示);在该对话框中去掉“匿名访问”前的“”即可。,1.Windows2000 Server下Web服务器的安全配置,(3)登录认证 IIS服务器提供了匿名访问、基本验证和集成Windows验证三种登录方式。其中匿名访问是被禁止的。在实际应用中,用户可以根据不同的安全需求选择不同的IIS登录认证方式。(4)访问权限控制 1)NTFS文件系统的访问控制 Web服务应建立在NTFS格式之上,一方面可以容易实现其访问权限的控制,对不同的用户和组授予不同的访问权限;另一方面还可以有效利用NTFS文件系统的审核功能,如下图所示。,1.Windows2000 Server下Web服务器的安全配置,1.Windows2000 Server下Web服务器的安全配置,2)Web目录的访问权限控制 对Web目录的文件夹,可以通过操作Web站点属性页实现对Web目录访问权限的控制,而该目录下的所有文件和文件夹都将继承这些安全性设置。在“Internet服务管理器”中,打开“Web站点”的属性对话框,如下图所示。Web服务除了提供NTFS权限外,还提供读取权限和执行权限。读取权限允许用户读取或下载Web目录中的文件,执行权限允许用户运行Web目录中的程序和脚本。,1.Windows2000 Server下Web服务器的安全配置,1.Windows2000 Server下Web服务器的安全配置,(5)IP地址控制IIS可以设置允许或拒绝从特定IP地址发来的服务请求,有选择地允许特定节点的用户访问Web服务。在Web站点属性页的“目录安全性”选项卡中单击“IP地址及域名限制”中的“编辑(I)”按钮打开如下图所示的“IP地址及域名限制”对话框,即可对限制的情况进行设置。,1.Windows2000 Server下Web服务器的安全配置,1.Windows2000 Server下Web服务器的安全配置,(6)端口控制 对于IIS服务来讲,无论是Web服务、FTP服务,还是SMTP服务,都有各自的TCP端口号用来监听和接收用户浏览器发出的请求。在实际应用中可以通过修改默认端口号的方法来提高IIS服务器的安全性。修改Web站点TCP端口号的方法为:如下图所示,打开默认Web站点的属性对话框,可以直接把“TCP端口(T)”选项后面的输入框中的内容“80”改为其它的数值。,1.Windows2000 Server下Web服务器的安全配置,1.Windows2000 Server下Web服务器的安全配置,1.Windows2000 Server下Web服务器的安全配置,(7)安全通信机制 IIS身份认证方式除了匿名用户、基本验证、集成Windows验证以外,还有一种安全性更高的认证方式数字证书。在“目录安全性”对话框中单击“服务器证书”按钮,按向导提示就可以很容易地申请到数字证书。,Apache音译为阿帕奇,是北美印第安人的一个部落,叫阿帕奇族,在美国的西南部。相传有一个武士阿帕奇,他英勇善战,且战无不胜,被印第安人奉为勇敢和胜利的代表,因此后人便用他的名字为部落命名,而阿帕奇族在印第安史上也以强悍著称。1975年,美国休斯直升机公司研制的反坦克武装直升机,也命名为阿帕奇武装直升机。Apache软件基金会(Apache Software Foundation,简称为ASF),是专门为运作一个开源软件项目的 Apache 的团体提供支持的非盈利性组织,这个开源软件项目就是 Apache 项目,他们推出的Web服务器很出名。Apache是世界使用排名第一的Web服务器软件,它可以运行在几乎所有广泛使用的计算机平台上,其特点是简单、速度快、性能稳定,并可做代理服务器来使用。,2Linux下Web服务器的安全配置,2Linux下Web服务器的安全配置,Apache Serve的前身是NCSA的httpd,曾经在1995年成为最为流行的万维网的服务器。因为强大的功能和灵活的设置及平台移植性,Apache Server取得了广泛的信赖。Apache Server的主要功能有:支持最新的HTTP1.1协议(RFC2616)。极强的可配置和可扩展性,充分利用第三方模快的功能。提供全部的源代码和不受限制的使用许可(License)。广泛应用于Windows 2000/NT/9x、Netware 5.x,OS/2 和UNIX家族及其他操作系统,所支持的平台多达17余种。,2Linux下Web服务器的安全配置,Apache Server功能强大,涵盖了用户的各种需求,包括:认证中的DBM数据库支持;错误和问题的可定制响应的目录导向功能;不受限的灵活的URL别名机制和重定向功能;虚拟主机(多宿主主机)支持多个域主页共存一台主机;超强的日志文件功能;利用站点的分析;拓展与维护等等。正因为这些强大的优势,使Apache Server与其他的Web服务器相比,充分展示了高效、稳定及功能丰富的特点。Apache Server 已用于超过600万个Internet站点。,2Linux下Web服务器的安全配置,(1)Apache 服务器的安全特性1)采用自主访问控制和强制性访问控制的安全策略从Apache 或Web的角度来讲,选择性访问控制DAC(Discretionary Access Control)仍是基于用户名和密码的,强制性访问控制MAC(Mandatory Access Control)则是依据发出请求的客户端的IP地址或所在的域号来进行界定的。对于DAC方式,如输入错误,那么用户还有机会更正,从新输入正确的的密码;如果用户通过不了MAC关卡,那么用户将被禁止做进一步的操作,除非服务器作出安全策略调整,否则用户的任何努力都将无济于事。,2Linux下Web服务器的安全配置,2)Apache 的安全模块Apache 的一个优势便是其灵活的模块结构,其设计思想也是围绕模块(Modules)概念而展开的。安全模块是Apache Server中的极其重要的组成部分。这些安全模块负责提供Apache Server的访问控制和认证、授权等一系列至关重要的安全服务。mod_access模块能够根据访问者的IP地址(或域名,主机名等)来控制对Apache服务器的访问,是基于主机的访问控制。mod_auth模块用来控制用户和组的认证授权(Authentication)。用户名和口令存于纯文本文件中。mod_auth_db和mod_auth_dbm模块则分别将用户信息(如名称、组属和口令等)存于Berkeley-DB及DBM型的小型数据库中,便于管理及提高应用效率。,2Linux下Web服务器的安全配置,mod_auth_digest模块则采用MD5数字签名的方式来进行用户的认证,但它相应的需要客户端的支持。mod_auth_anon模块的功能和mod_auth的功能类似,只是它允许匿名登录,将用户输入的E-mail地址作为口令。SSL(Secure Socket Lager),被Apache所支持的安全套接字层协议,提供Internet上安全交易服务,如电子商务中的安全措施。通过对通讯字节流的加密来防止敏感信息的泄漏。但是,Apache的这种支持是建立在对Apache的API扩展来实现的,相当于一个外部模块,通过与第三方程序的结合提供安全的网上交易支持。,2Linux下Web服务器的安全配置,(2)Apache服务器的安全配置1)以Nobody用户运行一般情况下,Apache是由Root 来安装和运行的。如果Apache Server进程具有Root用户特权,那么它将给系统的安全构成很大的威胁,应确保Apache Server进程以最可能低的权限用户来运行。通过修改httpd.conf文件中的选项,以Nobody用户运行Apache 达到相对安全的目的。,2Linux下Web服务器的安全配置,2)Server Root目录的权限为了确保所有的配置是适当的和安全的,需要严格控制Apache 主目录的访问权限,使非超级用户不能修改该目录中的内容。Apache 的主目录对应于Apache Server配置文件httpd.conf中的Server Root控制项。,2Linux下Web服务器的安全配置,3)SSI的配置在配置文件access.conf 或httpd.conf中的Options指令处加入Includes Noexec选项,用以禁用Apache Server 中的执行功能。避免用户直接执行Apache 服务器中的执行程序,而造成服务器系统的公开化。,2Linux下Web服务器的安全配置,4)阻止用户修改系统设置在Apache 服务器的配置文件中进行设置,阻止用户建立、修改.htaccess文件,防止用户超越能定义的系统安全特性。5)Apache 服务器的缺省访问特性Apache 的默认设置只能保障一定程度的安全,如果服务器能够通过正常的映射规则找到文件,那么客户端便会获取该文件,因此,要禁止对文件系统的缺省访问。,2Linux下Web服务器的安全配置,6)CGI脚本的安全CGI脚本是一系列可以通过Web服务器来运行的程序。为了保证系统的安全性,首先应确保CGI的作者是可信的,此外:对CGI而言,最好将其限制在一个特定的目录下,如cgi-bin之下,便于管理;应该保证CGI目录下的文件是不可写的,避免一些欺骗性的程序驻留或混迹其中;如果能够给用户提供一个安全性良好的CGI程序的模块作为参考,也许会减少许多不必要的麻烦和安全隐患;除去CGI目录下的所有非业务应用的脚本,以防异常的信息泄漏。,7.3Web客户端的安全,7.3.1浏览器本身的漏洞1传播病毒类漏洞:有的漏洞可以被利用来传播病毒,很多病毒是通过IE的漏洞入侵的,如通过浏览网页可以感染新欢乐时光等脚本病毒。2木马类漏洞:有的漏洞还可能被木马利用,如利用IE Object Data漏洞可以实现网页木马。该漏洞是由于HTML中的Object的Data标签引起的。3DoS类漏洞:如递归Frames漏洞就属于这一类漏洞,它通过编写一段错误的HTML代码而产生递归效果,直到耗尽内存资源,从而导致IP崩溃。,7.3.1浏览器本身的漏洞,4“跳板”类漏洞:如IE3及之前的快捷方式漏洞。如果一个快捷方式被复制到一个Web服务器上,并通过Internet来访问,将会打开存放在用户本地的该文件的拷贝。5欺骗类漏洞:如IE7处理URL中字符串时的漏洞,远程攻击者可能利用此漏洞引导用户执行恶意操作。6用户信息泄露类漏洞:IE浏览器中的安全漏洞,黑客利用这个漏洞能够使用Google桌面软件远程访问用户的口令和信用卡账号等个人信息。,1什么是ActiveXActiveX是Microsoft对于一系列策略性面向对象程序技术和工具的称呼,其中主要的技术是组件对象模型(COM)。在有目录和其它支持的网络中,COM变成了分布式COM(DCOM)。ActiveX与具体的编程语言无关,作为针对Internet应用开发的技术,ActiveX被广泛应用于Web服务器以及客户端的各个方面。同时,ActiveX技术也被用于方便地创建普通的桌面应用程序。由于ActiveX是可以将其插入到Web页面或其他应用程序中的一些软件组件或对象,因而也叫ActiveX插件或ActiveX控件。,7.3.2ActiveX的安全性,IE浏览器通常应用安全级别和认证两种策略来保证ActiveX插件的安全。(1)IE的安全级别可分为“默认级别”和“自定义级别”两种。IE的“自定义级别”为用户提供自主选择与实际需求相匹配安全策略的机会。而“默认级别”又分为高、中、中低、低四级。ActiveX控件实际的默认级别为“中”,即软件安装之前,用户可以根据自己对软件发行商和软件本身的信任程度,选择决定是否继续安装和运行此软件。(2)ActiveX控件通过数字签名来进行认证,浏览器可以拒绝未被正确签名的ActiveX控件。Microsoft采用鉴别码认证技术对ActiveX控件进行签名,可以让用户验证ActiveX控件作者的身份,并核实是否有人篡改过这个控件。,2 ActiveX控件的安全问题,(1)启动IE浏览器,点选菜单工具Internet选项,选择“安全”选项卡,如下图所示:,3IE浏览器中Activex控件的设置,(2)在选择区内请选择“Internet”图标;然后点击下面的“自定义级别”按钮,如图所示。,3IE浏览器中Activex控件的设置,1什么是cookie Cookie是由Netscape开发并将其作为持续保存状态信息和其他信息的一种方式。Cookie是当用户通过浏览器访问Web服务器时,由Web服务器发送的、保存在Web客户端的简单的文本文件,约由255个字符组成,占4KB空间。当用户正在浏览站点时,它存储于客户机的RAM中;退出浏览器后,它存储于客户机的硬盘上。这个文件与特定的Web文档关联在一起,保存了该客户机访问这个Web文档时的信息。浏览器通过这些特定的信息,为以后访问Web服务器,为进一步交互提供方便。,7.3.3Cookie的安全性,1什么是cookie,如何查看Cookie查看 Cookie 的一个简便方法是在 Internet Explorer 中查找。在 Internet Explorer 中,从“工具”菜单中选择“Internet 选项”,在“常规”选项卡中单击“浏览历史记录”下面的“设置”,然后单击“查看文件”。Internet Explorer 将打开一个窗口,显示所有的临时文件,包括 Cookie。在窗口中查找以“Cookie:”开头的文件或查找文本文件。双击一个 Cookie,在默认的文本文件中打开它。,1什么是cookie,也可以在硬盘上查找 Cookie 的文本文件,从而打开 Cookie。Internet Explorer 将站点的 Cookie 保存在文件名格式为.txt 的文件中,其中 是帐户名。例如,如果名称为 cathy,访问的站点为,那么该站点的 Cookie 将保存在名为 cathybaidu.txt 的文件中。(该文件名可能包含一个顺序的编号,如 cathybaidu 1.txt。),1什么是cookie,如何删除cookie文件:在 Internet Explorer 中,从“工具”菜单中选择“Internet 选项”;在“常规”选项卡上,单击“浏览历史记录”下面的“删除”。在“删除浏览的历史记录”对话框中,单击“删除Cookie”。,(1)定制个性化空间 用户访问一个站点,可能由于费用、带宽限制等原因,并不希望浏览网页所有的内容。Cookie可根据个人喜好进行栏目设定,即时、动态地产生用户所要的内容,这就迎合了不同层次用户的访问兴趣,减少用户项目选择的次数,更合理利用网页服务器的传输带宽。(2)记录站点轨迹 由于Cookie可以保存在客户机上,并在用户再次访问该Web服务器时读回,这一特性可以帮助我们实现很多设计功能,如显示用户访问该网页的次数、上一次的访问时间、记录用户以前在本页中所做的选择等等。,2Cookie的功能,Cookie是以纯文本的形式存在的,在浏览器和服务器之间传送时,任何可以截取Web通信的人,都可以读取Cookie。在使用Cookie时,不要在其中保存用户名、密码等敏感信息,也不要保存可能被其他截取Cookie的人控制的内容。要对从Cookie中得到的信息持怀疑态度,不要以为得到的数据就一定是当初设想的信息。,3Cookie的安全性,4Cookie的安全设置,(1)IE5.0的设置方法单击浏览器“工具”菜单,选择“internet选项”进入。选择“安全”选项卡中的“自定义级别”。在“安全设置”对话框中的“允许使用存储在您的计算机上的Cookie”项目中,选择“禁用”选项。,4Cookie的安全设置,(2)IE6.0的设置方法 1)单击浏览器“工具”菜单,选择“internet选项”进入。2)单击“隐私”标签。3)拖动设置滑块,将隐私设置调整到“中”的等级,设置好后单击“高级”,选中“覆盖自动Cookie处理”和“总是允许会话cookie”复选框。,7.4脚本语言的安全性,7.4.1CGI的安全性 1什么是CGI 在物理上,CGI(CommonGatewayInterface)是一段程序,它运行在Server上,提供同客户端Html页面的接口。CGI是一种通用网关接口,称之为一种机制更为合适。用户可以使用不同脚本语言来编写适合的CGI程序。将已经写好的CGI程序放在Web服务器的计算机上运行,再将其运行结果通过Web服务器传输到客户端的浏览器上。没有CGI就不可能实现动态的Web页面。,在计算机领域,尤其在Internet上,尽管大部分Web服务器所编的程序都尽可能保护自己的内容不受侵害,但只要CGI脚本中有一点安全方面的失误口令文件、私有数据、以及任何东西,就能使入侵者能访问计算机。遵循一些简单的规则并保持警惕能使自己的CGI脚本免受侵害,从而可以保护自己的权益。这里所说的CGI安全,主要包括两个方面,一是Web服务器的安全,一是CGI语言的安全。一般来说,CGI问题主要有以下几类:(1)暴露敏感或不敏感信息。(2)缺省提供的某些正常服务未关闭。(3)利用某些服务漏洞执行命令。(4)应用程序存在远程溢出。(5)非通用CGI程序的编程漏洞,2CGI安全问题,(1)配置错误:主要是指CGI程序和数据文件的权限设置不当,这可能导致CGI源代码或敏感信息泄露。(2)边界条件错误:对于C语言编写的CGI程序,这个错误使攻击者可以发起缓冲区溢出攻击。(3)访问验证错误:如果用于验证的条件不足以确定用户的身份,会导致未经授权的访问。(4)来源验证错误:如果CGI程序没有对信息的来源进行验证或验证错误,可能被利用进行拒绝服务攻击。,3CGI的漏洞,3CGI的漏洞,(5)输入验证错误:如果CGI程序没有没有对输入进行验证,如过滤特殊字符,会导致意想不到的安全问题,包括泄露系统文件、泄露敏感信息、系统指令的任意执行等。(6)意外情况处理失败:CGI程序中对意外情况的处理也非常重要,如没有检查文件是否存在就直接打开,有可能导致拒绝服务。(7)策略错误:如果编制CGI程序的程序员采用错误的策略,也会导致严重的安全问题。如采用脆弱的密码机制,导致穷举攻击;在Cookie中存放账号、密码,导致敏感信息泄露等。(8)习惯问题:程序员的不良习惯,也可能导致安全问题。如用文本编辑器编辑CGI程序后,会生成“.bak”的后备文件,如果没有及时删除,有可能导致代码泄露等。,7.4.2ASP.NET的安全性,1ASP.NET的常见漏洞ASP.NET是一种建立在通用语言上的程序构架,能被用于一台Web服务器来建立强大的Web应用程序。由于ASP.NET是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上。,1ASP.NET的常见漏洞,(1)不良配置控制带来的信息泄漏 ASP.NET通常在应用程序出错时向用户显示出自定义的出错信息,如果这个特性被关闭,自定义的错误信息未被使用,服务器会向客户返回调试信息,文件名、路经、源代码等都会泄露给用户。(2)ASP.NET虚拟主机安全漏洞 ASP中常用的标准组件FileSystemObject提供了强大的文件系统访问能力,可以对服务器硬盘上的任何有权限的目录和文件进行读写、删除、改名等操作。这一功能为开发带来了方便,但也使安全防范问题变得复杂。,1ASP.NET的常见漏洞,(3)SQL语句漏洞 Select语句在判断查询条件时,遇到或(or)操作就会忽略下面的与(and)操作。这个漏洞可能被用来绕过密码验证。(4)ASP.NET请求确认NULL字节漏洞 ASP.NET为了安全,增加了请求确认的功能,对跨站脚本攻击、脚本插入攻击进行一定的防护。但ASP.NET请求确认的实现对用户提交的参数缺乏充分的处理,如在标记中插入NULL字符,远程攻击者可以利用这个漏洞绕过内容限制,对应用程序进行跨站脚本攻击、脚本插入攻击。(5)跨站脚本漏洞 跨站脚本的JavaScript可以在某个站点或电子邮件中放置一个恶意的URL,如用户点击了该URL,则用户的机器会受到各种方式的入侵,如获取数据文件等。,2ASP.NET安全性的工作原理,(1)ASP.NET 安全结构,(2)ASP.NET 安全数据流,有两种ASP.NET 安全数据流方案:1)模拟 模拟方案依赖于IIS身份验证和 Microsoft Windows 文件访问安全性,以最大限度地减少 ASP.NET 应用程序本身在安全性方面的编程量。数据流如下图所示:,(2)ASP.NET 安全数据流,2)验证 在 Forms 身份验证方案中,应用程序直接从用户那里收集名字和密码等凭据,并自己判断这些信息的真实性。应用程序不使用 IIS 身份验证,但 IIS 身份验证设置可以影响 Forms 身份验证。作为一项原则,当使用 Forms 身份验证时,需要在 IIS 中启用匿名访问。否则,如果用户未通过 IIS 身份验证,他们甚至无法访问应用程序,以便向 Forms 身份验证提供用户名和密码。,(2)ASP.NET 安全数据流,(2)ASP.NET 安全数据流,(3)ASP.NET 身份验证,1)Windows 身份验证提供程序 在 ASP.NET 应用程序中,Windows 身份验证将IIS所提供的用户标识视为已经过身份验证的用户。IIS 提供了大量用于验证用户标识的身份验证机制,其中包括匿名身份验证、Windows 集成的NTLM身份验证、Windows 集成的Kerberos身份验证、基本Base64 编码身份验证、摘要式身份验证以及基于客户端证书的身份验证。,1)Windows 身份验证提供程序,在ASP.NET中,使用 WindowsAuthentication Module 模块来实现 Windows 身份验证。该模块根据 IIS 所提供的凭据构造一个 WindowsIdentity,并将该标识设置为该应用程序的当前 User 属性值。Windows 身份验证是 ASP.NET 应用程序的默认身份验证机制,并指定作为使用 authentication 配置元素的应用程序的身份验证模式。,通过 Forms 身份验证,可以使用所创建的登录窗体验证用户的用户名和密码。未经过身份验证的请求被重定向到登录页,用户在该页上提供凭据和提交窗体。如果应用程序对请求进行了验证,系统会颁发一个票证,该票证包含用于重建后续请求的标识的密钥。,2)Forms 身份验证提供程序,3)Passport 身份验证提供程序,Passport 身份验证是由 Microsoft 提供的集中身份验证服务,该服务为成员站点提供单一登录和核心配置文件服务。Passport之所以让用户受益匪浅,原因在于用户不必登录访问受到限制的新资源或站点。如果希望站点与 Passport身份验证及授权兼容,则应该使用该提供程序。Passport 是基于 Cookie 的身份验证服务,使用“三重 DES”加密方案。当成员站点注册到 Passport 服务时,将被授予站点特定的密钥。Passport 登录服务器使用该密钥对站点间传递的查询字符串进行加密和解密。,授权决定了是否应授予某个标识对特定资源的访问权限。在 ASP.NET 中,有两种方式来授予对给定资源的访问权限:1)文件授权。文件授权由 FileAuthorizationModule 执行。它检查.aspx 或.asmx 处理程序文件的访问控制列表(ACL),以确定用户是否应该具有对文件的访问权限。ACL 权限用于验证用户的 Windows 标识(如果已启用 Windows 身份验证)或 ASP.NET 进程的 Windows 标识。2)URL 授权。URL 授权由 UrlAuthorizationModule 执行,它将用户和角色映射到 ASP.NET 应用程序中的 URL。这个模块可用于有选择地允许或拒绝特定用户或角色对应用程序的任意部分(通常为目录)的访问权限。,(4)ASP.NET 授权,使用模拟时,ASP.NET 应用程序可以用发出请求的用户的 Windows 标识(用户帐户)执行。模拟通常用于依赖 Internet 信息服务(IIS)来对用户进行身份验证的应用程序。默认情况下禁用 ASP.NET 模拟。如果对某 ASP.NET 应用程序启用了模拟,该应用程序将运行在标识上下文中,其访问标记被 IIS 传递给 ASP.NET。该标记既可以是已通过身份验证的用户标记(如已登录的 Windows 用户的标记),也可以是 IIS 为匿名用户提供的标记(通常为 IUSR_MACHINENAME 标识)。,(5)ASP.NET 模拟,(5)ASP.NET 模拟,当启用模拟时,只有应用程序代码运行在被模拟的用户的上下文中。将使用 ASP.NET 进程的标识编译应用程序和加载配置信息。编译的应用程序将放在 Temporary ASP.NET files 目录中。所模拟的应用程序标识需要对该目录的读/写访问权限。所模拟的应用程序标识还需要至少对应用程序目录和子目录中的文件的读访问权限。,

    注意事项

    本文([互联网]网络安全 第7章 Web的安全.ppt)为本站会员(sccc)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开