设计安全规范.doc

  1. 1、本文档共32页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE 292 第9章 设计安全规范 PAGE 291 第9章 设计安全规范 设计安全规范 在本章中,将学习如何设计应用程序的安全性。设计安全特性和策略是应用程序开发中最重要的方面之一。随着企业网络安全性部分投入的增加,由于知识产权被盗取、系统停机、生产效率低下、声誉受损、消费者信心流失等方面带来的损失也在增加。然而,也许可以通过增加适当的用户验证和授权方案,加密以保证数据完整性,以及执行数据验证等措施,为业务应用程序在恶劣的环境中提供有效的保护。 学习完本章后,将能够: 确定应用程序的一些安全性挑战和弱点 为应用程序计划安全策略 解释由 Microsoft? .NET 提供的安全特性 为应用程序层设计授权、身份验和审核策略 应用程序开发的安全性概述 可以通过采用诸如防火墙、代理、安全通道和用户验证等几种安全机制来保护应用程序。然而,攻击者只要发现系统中的一个弱点就能破坏系统的安全保护。在本课中,将了解一些常见的应用程序安全弱点,以及恶意用户利用这些弱点的方式。还会学习传统安全模型的一些不足。最后,将学习一些重要的安全编码原则。 学习完本课后,将能够: 确定应用程序的一些常见安全漏洞 确定传统安全模型的一些不足 解释设计安全应用程序的一些安全性原则 定义一些安全性术语 常见的安全漏洞类型 恶意攻击者使用各种方法利用系统漏洞,来达到他们的目的。漏洞是安全性方面的弱点,攻击者可以使用它们获得对一个组织的网络或者网络资源的访问权。下面这些漏洞,比如弱口令,并不是应用程序或者软件开发设计决策的结果。然而,让一个组织了解这些安全弱点,以更好地保护他们的系统是非常重要的。 弱口令 用户通常选择易记的口令,例如,他们用生日、爱人名字等任何东西作为口令。然而,这些弱口令创造了漏洞,因为它们给了攻击者猜出正确口令的机会。 口令是进入计算机的钥匙,它是攻击者非常想寻找的东西。弱口令不仅能够使攻击者访问到一台计算机,还能够让他们访问计算机所连接的整个网络。 软件配置错误 通常,软件的配置方式会造成系统易受攻击。如果一个服务被配置为使用本地系统账户,或者得到了越出其需要的权限,那么攻击者就可以利用这个服务来进入系统,并对系统执行恶意操作。 软件配置错误可以分为以下三类。 REF _Re\h 表 91 展示了这三类配置错误以及每一类的一些例子。 表 STYLEREF 1 \s 9 SEQ 表 \* ARABIC \s 1 1 类别 例 子 网络 Internet 连接、防火墙 应用程序 应用程序配置文件 主机 服务、端口、协议 社会工程陷阱 社会工程陷阱陷阱是口令泄漏的一种常见方式。其发生原因一般是用户不了解安全问题,因此可能被欺骗而透露他们的口令。例如,一个攻击者可能假装为一位技术支持管理员,并以保护系统或者执行一些管理任务为由,劝说用户透露他们的口令。 未加密的数据传输 大多数 Web 应用程序都接受用户输入,然后基于输入处理用户请求,最后返回响应给用户。如果在服务器和用户之间的数据以明文的形式传输,那么数据在传输过程中就可能被攻击者截获、查看和篡改。如果数据包含身份验证信息或者任何其他敏感信息,比如机密销售号码等,并且在没有经过加密的情况下传输的话,那么攻击者就可以轻易地访问那些信息,并以此对 Web 应用程序或者组织执行恶意操作。 缓冲区溢出 缓冲区溢出是一种错误,当一个缓冲区被写入的数据超过它在编程时设计的所能包含的数据时,就会发生这类错误。例如,假设一个用户以一个260个字符长的字符串调用一个函数。如果字符串被拷贝到一个只分配了256个字符的缓冲区,那么就会出现缓冲区溢出错误。 恶意用户探测应用程序以寻找引起缓冲区溢出的方法,因为他们可以使用缓冲区溢出: 引起应用程序或者操作系统崩溃 通过读取错误消息发现更多安全弱点 对于开发人员来说,在调试应用程序时写入错误消息是很常见的。帮助调试应用程序的信息同时也可以帮助恶意用户。例如,一个错误消息可能泄露口令文件的位置或者可能提供堆栈跟踪。 获得对运行任意代码所需的系统内存的访问权 由缓冲区溢出带来的最严重的安全威胁是应用程序只是简单地继续运行,并允许恶意用户运行任意代码。恶意用户实现这一点的方法是,替换当前正在执行的函数在堆栈上的返回地址,从而在函数执行完成之后,引导控制流程跳到他们的代码中。 代码注射 代码注射导致恶意代码的注射,依赖于攻击的本质,恶意代码可以运行在 Web 服务器、数据库服务器或者客户端。大多数常见的代码注射攻击类型有: 跨站点脚本运行。在一个跨站点脚本运行攻击中,恶意用户不攻击 Web 服务器;他们攻击 Web 服务器的其他用户。这种攻击依赖于根据用户数据创建动态页面的 Web 应用程序。跨站点脚本运行允许恶意用户在另一个用户的计算机

文档评论(0)

keithtao + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档