首页 > 其他分享 >软件安全从源头开始

软件安全从源头开始

时间:2024-05-06 10:47:09浏览次数:21  
标签:源头 软件开发 安全 ISO SDL 软件 安全性

软件安全 从源头开始

第一章 引论

软件安全的重要性和相关性

软件在现实世界中扮演着关键的角色,几乎无所不在,尤其是在最关键的系统中。正因为如此,设计安全的软件就显得至关重要。尽管大多数信息技术领域的安全解决方案已经有效降低了不安全软件带来的风险,但我们必须认识到构建安全软件所带来的经济成本和其他风险的重要性和相关性。因此,软件安全不仅仅是技术问题,更是商业决策的一部分,因为它关乎着安全风险的最小化。

软件安全与软件开发生命周期

在软件开发过程中,我们需要区分两个重要概念:软件安全(software security)和应用程序安全(application security)。尽管这两个术语经常被互换使用,但它们在管理和实施过程中有明显的不同。软件安全指的是在软件开发生命周期(SDLC)中通过应用SDL构建安全的软件,而应用程序安全关注于发布后运行时软件和系统的保护。

高质量和安全代码

虽然安全代码未必就是高质量代码,反之亦然,但软件开发过程应当遵循高质量和安全代码的原则。没有安全的高质量代码,也没有低质量的安全代码,它们是相辅相成的。至少,质量和软件安全应该在开发过程中密切结合;最理想情况下,它们应该是同一组织的一部分,成为软件开发工程部门的一部分。这种整合将在后续章节中从组织和操作的角度进一步讨论。

三个最重要的SDL安全目标

所有软件安全分析和构建的核心是三个最重要的安全特性:保密性、完整性和可用性,也被称为C.I.A.模型。为了确保软件开发的安全性,这三个特性必须贯穿整个SDL过程的始终。

威胁建模和攻击界面验证

威胁建模和攻击界面验证被认为是SDL中最耗时和难以理解的部分。在当前敏捷软件开发的环境中,正确处理这一问题至关重要,否则无法确保软件的安全性。通过威胁建模和攻击界面验证,可以最大程度地减少软件产品发布后发现的安全漏洞。鉴于这一功能的重要性,本书将专门用一节和一章来关注这一主题。

第二章 安全开发生命周期

2.1 克服软件安全中的挑战

在软件开发生命周期(SDL)中,克服安全挑战是至关重要的。SDL涵盖了开发行业、政府标准以及最佳实践,这些都是确保软件安全所需的基本组件。为了有效地防止、识别和减轻系统中的漏洞,需要经验丰富的人员、安全软件的策略以及严格的管控要求。

不符合SDL中的最低活动要求将给内部和外部威胁提供利用系统资产的机会。安全不再仅仅是网络要求,而是信息技术(IT)的要求,涵盖了所有软件开发的意图,包括信息的分发、存储和处理。为了保护客户的隐私和重要信息,组织必须实施最高标准的开发,以确保发布最高质量的产品。

实施SDL程序可以确保企业软件在设计和开发阶段就具备了良好的安全性,而不是在产品发布后才开始考虑安全性问题。采用SDL方法可以带来实实在在的好处,比如确保所有软件版本都符合最低安全标准,以及确保所有利益相关者都支持和强制执行安全准则。在开发周期的早期发现漏洞并进行修复不仅更容易,而且成本更低,这也为信息安全团队提供了一个系统化的方法,可以在开发过程中共同消除软件风险。

2.2 软件安全成熟度模型

软件安全成熟度模型(SSMM)涵盖了一系列关键领域,包括:

    1. 策略和度量标准
    2. 符合性和政策
    3. 培训
    4. 攻击模型
    5. 安全特征和设计
    6. 标准和要求
    7. 架构分析
    8. 代码审查
    9. 安全测试
    10. 渗透测试
    11. 软件环境
    12. 配置和漏洞管理

BSSIM的第4个版本发布于2012年9月18日,新增了两个活动:模拟软件危机和自动化恶意代码检测。BSIMM4涵盖了来自12个垂直行业的51家公司,相较于BSIMM3增长了20%,是一个在软件安全领域持续成长的标志。该模型的数据集包含了95个不同的测量,表明领先的公司在每100个开发人员中平均雇佣了两名全职的软件安全专家。

OWASP的软件保证成熟度模型(SAMM)是一个灵活的框架,用于将安全性融入软件开发组织。SAMM通过覆盖更多于典型SDLC基础模型的安全性,使得组织能够自行评估其安全保障程序,并在特定风险面临挑战时进行改进。此外,SAMM还能够创建记分卡,记录组织在管理、开发和部署业务功能过程中在安全开发方面的有效性,从而量化改进。

2.3 ISO/IEC 27034:应用安全的国际标准

ISO/IEC 27034标准是信息技术、安全技术和应用安全领域的国际标准。它提供了一套管理应用程序安全的指南,涵盖了基于风险的方法,通过流程整合和改进来管理应用程序的安全性。ISO/IEC 27034标准的出现标志着软件安全标准和框架开始整合,类似于ISO/IEC 27001标准对信息安全的影响。

ISO/IEC 27034标准的实施有助于组织内嵌过程安全方面的指导,帮助环境中运行安全的应用程序。它不仅仅是一种框架,更是一种基于风险的方法,通过设计流程来持续提高应用程序的安全性。

 

三、安全评估(Al): SDL活动与最佳实践

四、架构(A2):SDL活动与最佳实践

五、设计和开发(A3 ): SDL活动与最佳实践

六、设计和开发(A4):SDL活动与最佳实践

七、发布(A5):SDL活动与最佳实践

八、发布后支持(PRSA1~5 )

九、将SDL框架应用到现实世界中

十、集成:应用 SDL防止现实的威胁

标签:源头,软件开发,安全,ISO,SDL,软件,安全性
From: https://www.cnblogs.com/laijiayi/p/18174474

相关文章

  • 安全数据交换系统哪个好?该如何选型?
    安全数据交换系统是用于在不同网络或组织之间安全、高效地传输和共享数据的解决方案。安全数据交换系统对于任何需要处理敏感数据、确保数据安全、并满足合规要求的组织来说都是至关重要的。 这种系统通常用于以下目的:1)数据传输:允许用户在不同的地理位置或网络环境之间传输数......
  • WEB安全~X-Frame-Options
    X-Frame-Options是一个HTTP响应头,用于控制网页是否可以嵌套在<frame>,<iframe>,<embed>或者<applet>中。通过设置X-Frame-Options头部,网站管理员可以防止网页被嵌套到其他网站的框架中,从而有效防范点击劫持等安全风险。下面是关于X-Frame-Options的介绍:1.作用:X-Fra......
  • 2024 年12个好用的开源 Wiki 软件工具盘点
    在任何成功的公司中,部门间的知识共享是至关重要的。如果没有一个简单的信息交流方法,团队怎样才能有效合作呢?Wiki软件提供了一种创建、组织及在全公司范围内分享知识的直接方法。但是,哪一种Wiki软件是最佳的选择呢?本文将深入讨论这个问题。什么是Wiki软件Wiki是一个集中式的、基......
  • 讯飞听见软件介绍
    讯飞听见是一款智能语音转文字软件,具有以下功能:•实时语音转文字:支持录音实时转文字,准确率较高,且能自动区分角色和分段。•实时翻译:提供8国语种随时互译。•边录边拍:可以在录音的同时拍照记录,方便重点标记。•悬浮字幕:支持在观看视频时实时显示悬浮字幕,提供无障碍观影体......
  • 软件分享:win10和win11系统修复工具
    软件分享:win10和win11系统修复工具FixWin11点赞关注一下吧在使用电脑时可能会遇到一些问题,通过上网查找解决方法费时费力,而有了这个小工具可以很方便的解决问题。1、使用方法:解压文件,双击文件夹内的exe文件,打开FixWin11.1_zh-CHS.exe这个程序(这个是中文版)。2、软件功能1......
  • Cleanmgr,也称为磁盘清理器(Disk Cleanup),是Windows操作系统中的实用工具,用于删除计算机
    cleanmgr|MicrosoftLearnCleanmgr,也称为磁盘清理器(DiskCleanup),是Windows操作系统中的实用工具,用于删除计算机上不需要的临时文件、回收站文件、下载文件以及其他可以安全删除的文件,以释放磁盘空间。功能特点:释放磁盘空间:Cleanmgr可以帮助用户识别并删除不再需要的......
  • 为什么我要使得GOLang重写SAAS(软件即服务)服务端
    引言“道”在中国哲学中,是一个重要的概念,表示“终极真理”。“道”这一概念,不单为哲学流派诸子百家所重视,也被宗教流派道教等所使用。大道至简的意思就是大道理是极其简单的,简单到一两句话就能说明白。所谓“真传一句话,假传万卷书”。正文在开启独立创作之路之前,我主要用不用......
  • Adobe Photoshop 2024 v25.7 (macOS, Windows) - 照片和设计软件
    AdobePhotoshop2024v25.7(macOS,Windows)-照片和设计软件Acrobat、AfterEffects、Animate、Audition、Bridge、CharacterAnimator、Dimension、Dreamweaver、Illustrator、InCopy、InDesign、LightroomClassic、MediaEncoder、Photoshop、PremierePro、AdobeXD请......
  • Adobe InDesign 2024 v19.4 (macOS, Windows) - 版面设计和桌面出版软件
    AdobeInDesign2024v19.4(macOS,Windows)-版面设计和桌面出版软件Acrobat、AfterEffects、Animate、Audition、Bridge、CharacterAnimator、Dimension、Dreamweaver、Illustrator、InCopy、InDesign、LightroomClassic、MediaEncoder、Photoshop、PremierePro、Adob......
  • Adobe InCopy 2024 v19.4 (macOS, Windows) - 编写和副本编辑软件
    AdobeInCopy2024v19.4(macOS,Windows)-编写和副本编辑软件Acrobat、AfterEffects、Animate、Audition、Bridge、CharacterAnimator、Dimension、Dreamweaver、Illustrator、InCopy、InDesign、LightroomClassic、MediaEncoder、Photoshop、PremierePro、AdobeXD......