信息安全手册之软件开发指南

应用程序开发

应用程序开发的类型

这些准则既适用于传统的应用程序开发活动,也适用于移动应用程序开发活动。

开发环境

隔离开发、测试和生产环境可以限制恶意代码的传播,并最大限度地减少生产环境中出现错误代码的可能性。

开发、测试和生产环境是分开的。

软件的开发和修改仅在开发环境中进行。

生产环境中的数据不会在测试或开发环境中使用,除非测试或开发环境的安全级别与生产环境相同。

安全软件设计

威胁建模是安全软件设计的重要组成部分,因为它有助于识别有风险的软件组件,从而能够识别缓解安全控制以降低安全风险。

威胁建模和其他安全设计技术用于确保识别和解释对软件的威胁以及对这些威胁的缓解措施。

软件物料清单

软件物料清单是用于软件开发的开源和商业软件组件的列表。这可以通过更容易地识别和管理与软件使用的单个软件组件相关的安全风险,从而为软件消费者提供更大的 络供应链透明度。

生成软件物料清单并提供给软件使用者。

安全编程实践

一旦确定了安全的软件设计,在软件开发活动中就应遵循安全的编程实践。

在开发软件时,将使用特定于平台的安全编程实践,包括使用完成任务所需的最低权限、检查所有系统调用的返回值、验证所有输入以及加密所有通信。

软件测试

软件测试可以降低软件中安全漏洞被引入生产环境的风险。可以使用静态测试(如代码分析)和动态测试(如输入验证和模糊测试)来执行软件测试。漏洞扫描工具还有助于检测已知的安全漏洞,例如过期或易受攻击的依赖项。使用独立方进行软件测试将消除软件开发人员测试自己的软件时可能发生的任何偏见。

在生产环境中使用软件之前,软件开发人员以及独立方会对其进行安全漏洞测试。

漏洞泄露计划

1.漏洞披露计划的目的

2.允许的安全研究类型

3.不允许的安全研究类型

4.如何 告潜在的安全漏洞

5.在收到潜在安全漏洞通知时将采取的行动以及这些行动的指示性时间范围

1.对公开披露经过验证的安全漏洞的任何期望

2.任何经过验证的安全漏洞的识别发现者都将收到。

实施漏洞披露计划以协助产品和服务的安全开发和维护。

所有面向互联 的组织域都托管了”安全.txt”文件,以协助负责任地披露组织产品和服务中的安全漏洞。

络应用程序开发

保护 Web 应用程序

即使 Web 应用程序仅包含公共数据,仍然需要保护 Web 应用程序及其托管系统所处理数据的完整性和可用性。

Web 应用程序框架

软件开发人员可以利用 Web 应用程序框架来增强 Web 应用程序的安全性,同时缩短开发时间。这些资源可以帮助软件开发人员安全地实现复杂的组件,如会话管理、输入处理和加密操作。

健壮的 Web 应用程序框架用于帮助开发安全的 Web 应用程序。

Web 应用程序交互

安全超文本传输协议 (HTTPS) 是使用传输层安全性 (TLS) 加密的超文本传输协议。将HTTPS用于Web应用程序不仅可以确保个人与Web应用程序的交互保密,还可以保持其交互的完整性。

所有 Web 应用程序内容都仅使用 HTTPS 提供。

Web 应用程序输入处理

大多数 Web 应用程序安全漏洞都是由缺乏安全输入处理引起的。至关重要的是,Web应用程序不信任任何输入,例如 站地址及其参数,超文本标记语言(HTML)表单数据,Cookie值和请求标头,而无需对其进行验证或清理。验证和消毒的示例包括:

1.确保电话表单字段仅包含数字

2.确保对结构化查询语言查询中使用的数据进行正确清理

3.确保正确处理 Unicode 输入。

验证和/或清理对 Web 应用程序处理的所有输入执行。

Web 应用程序输出编码

通过使用上下文输出编码,可以降低跨站点脚本和其他内容注入攻击的可能性。输出编码最常见的示例是使用 HTML 实体。执行 HTML 实体编码会导致具有潜在危险的 HTML 字符(如”<“、”>”和”&”)转换为其编码的等效字符”<“、”>”和”&”。

当外部数据源(可能不受相同级别的输入筛选)输出给用户时,输出编码特别有用。

输出编码对 Web 应用程序生成的所有输出执行。

基于 Web 浏览器的安全控制

Web 应用程序可以利用基于 Web 浏览器的安全控制措施(如内容安全策略、超文本传输协议严格传输安全 (HSTS) 和 X 帧选项)来帮助保护自己及其用户。这是通过在响应标头中使用安全策略来实现的,用户的 Web 浏览器根据定义的安全策略应用这些策略。由于安全控制是通过响应标头应用的,因此可以将安全控制应用于对源代码进行更改不切实际的旧版或专有 Web 应用程序。

Web 应用程序实现内容安全策略、HSTS 和 X 帧选项响应标头。

打开 Web 应用程序安全项目

开放式 Web 应用程序安全项目 (OWASP) 提供了在开发 Web 应用程序时可供参考的综合资源。

开发 Web 应用程序时,遵循 OWASP 应用程序安全验证标准。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年5月4日
下一篇 2022年5月4日

相关推荐