WEB应用系统安全规范.docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《WEB应用系统安全规范.docx》由会员分享,可在线阅读,更多相关《WEB应用系统安全规范.docx(12页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、WEB应用系统安全规范WEB 应用系统安全规范 Document number : BGCG-0857- BTDO-0089-2022WEB应用系统安全规范目录1概述1.1 目的为规范我司Java Web应用编码和部署的安全控制和管理,特制定 本规范,并作为安全检查及考核的参考依据。1.2 适用范围本规范适用于我司所有在线Java业务系统、测试系统的WEB应 用。本规范可作为其他非WEB应用的编码和部署安全办法参考。2范围本规范中列出的是常见安全措施和高风险的漏洞,在系统开发与 系统部署的过程中,对本规范未能尽述的必要安全措施,仍应予以采 用。本规范每年复审一次,其它时候也可以根据需要进行修订
2、并发布。 本规范的解释权和修改权归属信息技术部。3名词解释验证:通讯实体(例如,客户端和服务器)彼此验证,以经过访问授 权的特定标识为依据。资源的访问控制:资源的交互仅限于某些用户或程序的集合,其 目的是对完整性,保密性或可用性实施强制约束。数据完整性:检验信息是否被第三方(非信息源的其它实体)修改。 例如,处于开放网络环境中的数据接收方必须能够检测并丢弃那些在 传递过程中被修改过的消息。机密性或数据隐私:确保信息仅对经过访问授权的用户可用。不可否认:对用户进行检验,让他无法否认自己进行过的活动。交流并记录所有有关网络和应用层安全的设想,以及哪些组件将 处理哪些问题。这样,当开发人员和网络管理
3、人员都认为对方会解决 安全问题时,可以防止安全控制失败。注意网络为应用程序提供的安 全防范措施。设想如果更改网络设置,可能会带来哪些安全隐患。如 果实现特定的网络结构更改,将会出现多少安全漏洞1.3 .2部署拓扑结构应用程序的部署拓扑结构和是否具有远程应用层是设计阶段必须 考虑的关键问题。如果具有远程应用层,需要考虑怎样保护服务器之 间的网络以减少网络窃听威胁,以及怎样保护敏感数据的保密性和完 整性。止匕外,还要考虑标识符流,并确定在应用程序连接到远程服务器 时将用于网络身份验证的帐户。一种常见方法是使用最小特权进程帐 户,并在远程服务器上创建一个具有相同密码的帐户副本(镜像)。 另一种方法是
4、使用域进程帐户,此类帐户管理方便,但会带来更大的 安全问题,因为很难限制该帐户在网络上的使用。未建立信任关系的 介入防火墙和单独域使应用本地帐户成为唯一的选择。5.2部署操作安全规范5.2.1 确保管理界面的安全配置管理功能只能由经过授权的操作员和管理员访问,这一点是 非常重要的。关键一点是要在管理界面上实施强身份验证,如使用证 书。如果有可能,限制或避免使用远程管理,并要求管理员在本地登 录。如果需要支持远程管理,应使用加密通道,如SSL或VPN技术, 因为通过管理界面传递的数据是敏感数据。止匕外,还要考虑使用 IPSec策略限制对内部网络计算机的远程管理,以进一步降低风险。5.2.2 确保
5、配置存储的安全基于文本的配置文件、注册表和数据库是存储应用程序配置数据 的常用方法。如有可能,应避免在应用程序的Web空间使用配置文件, 以防止可能出现的服务器配置漏洞导致配置文件被下载。无论使用哪 种方法,都应确保配置存储访问的安全,如使用Windows ACL或数 据库权限。还应避免以纯文本形式存储机密,如数据库连接字符串或 帐户凭据。通过加密确保这些项目的安全,然后限制对包含加密数据 的注册表项、文件或表的访问权限。5.2.3 单独分配管理特权如果应用程序的配置管理功能所支持的功能性基于管理员角色而 变化,则应考虑使用基于角色的授权策略分别为每个角色授权。例如, 负责更新站点静态内容的人
6、员不必具有更改客户信贷限额的权限。5.2.4 使用最少特权进程和服务帐户应用程序配置的一个重要方面是用于运行Web服务器进程的进程 帐户,以及用于访问下游资源和系统的服务帐户。应确保为这些帐户 设置最少特权。如果攻击者设法控制一个进程,则该进程标识对文件 系统和其他系统资源应该具有极有限的访问权限,以减少可能造成的 危害。5.2.5 尽量避免存储机密在软件中以完全安全的方式存储机密是不可能的。可以接触到服 务器的系统管理员可以访问这些数据。例如,当您所要做的仅仅是验 证用户是否知道某个机密时,则没有必要存储该机密。在这种情况下, 可以存储代表机密的哈希值,然后使用用户提供的值计算哈希值,以 验
7、证该用户是否知道该机密。5.2.6 不要在代码中存储机密不要在代码中对机密进行硬编码。即使不将源代码暴露在Web服 务器上,但从编译过的可执行文件中仍然可以提取字符串常量。配置 漏洞可能会允许攻击者检索可执行文件。5.2.7 不要以纯文本形式存储数据库连接、密码或密钥避免以纯文本形式存储诸如数据库连接字符串、密码和密钥之类 的机密。使用加密,并存储经过加密的字符串。5.2.8 限制主机上WEB系统启动用户的权限(一)应将WEB系统的启动用户的权限限制在最小范围内,禁止 该用户访问其它不必要的路径(如:/etc/、/root)。5.2.9 隐藏后台调试信息(-)WEB系统、数据库等报告的异常信息
8、、调试信息不应该出现在页面上。5.2.10 密码加密存储(-)WEB系统中存储的密码应采用一定的加密算法,以密文形 式存放。此处所指的密码包括但不限于:1 .配置文件中的主机、网络、数据库、邮箱的密码;2 .数据库中的用户资料密码;(二)加密算法的选择应根据实际需要,首选不对称加密算法, 次选破解难度高的对称加密算法。审核:捕获一个安全相关事件的防篡改记录,目的是评估安全策略和机制的有效性。4Web开发安全规范4.1Web应用程序体系结构和安全HTTP是无国界的,这意味着跟踪每位用户的会话状态将成为应 用程序的责任。应用程序必须能够通过某种形式的身份验证来识别用 户。由于所有后续授权决策都要基
9、于用户的标识,因此,身份验证过 程必须是安全的,同样必须很好地保护用于跟踪已验证用户的会话处 理机制。设计安全的身份验证和会话管理机制仅仅是Web应用程序设 计人员和开发人员所面临的众多问题中的两个方面。由于输入和输出 数据要在公共网络上进行传输,因此还会存在其他挑战。防止参数操 作和敏感数据泄漏也是另外一些重要问题。Web应用程序安全设计是根据应用程序漏洞类别进行组织的。实 际经验表明,如果这些领域的设计存在薄弱环节,将会导致安全漏洞。 下表列出了漏洞的类别,每个类别都突出显示了由于设计不当可能会 导致的潜在问题。针对上述漏洞的应用程序设计指南如下表:4.2Web安全编码规范4.2.1 区分
10、公共区域和受限区域站点的公共区域允许任何用户进行匿名访问。受限区域只能接受 特定用户的访问,而且用户必须通过站点的身份验证。考虑一个典型 的零售网站。您可以匿名浏览产品分类。当您向购物车中添加物品时, 应用程序将使用会话标识符验证您的身份。最后,当您下订单时,即 可执行安全的交易。这需要您进行登录,以便通过SSL验证交易。将站点分割为公共访问区域和受限访问区域,可以在该站点的不 同区域使用不同的身份验证和授权规则,从而限制对SSL的使用。使 用SSL会导致性能下降,为了避免不必要的系统开销,在设计站点时, 应该在要求验证访问的区域限制使用SSLe4.2.2 对身份验证cookie的内容进行加密
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- WEB 应用 系统安全 规范
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内