《安全软件开发框架(SSDF) 1.1:降低软件漏洞风险的建议》解读(二)

news2024/10/7 8:27:41

安全软件开发框架SSDF是由美国国家标准与技术研究院发布的关于安全软件开发的一组实践,帮助开发组织减少发布的软件中的漏洞数量,减少利用未检测到或未解决的漏洞的潜在影响,从根本上解决漏洞防止再次发生。本文根据《Secure Software Development Framework (SSDF) Version 1.1:Recommendations for Mitigating the Risk of Software Vulnerabilities》文档翻译整理,本文是第二部分,主要是该框架的安全实践列表以及相应的参考。 

本文档对1.1版安全软件开发框架(SSDF)进行了说明,并基于已建立的安全软件开发实践文档,提供了基本、可靠和安全的推荐实践。实践分为四类:

1、组织准备(PO):组织应确保人员、流程和技术都能在组织级别执行安全软件开发。

2、保护软件(PS):组织应保护其软件的所有组件免受篡改和未经授权的访问。

3、生产安全可靠的软件(PW):组织应生产安全可靠组织应该生产安全可靠的软件,尽量减少安全漏洞。

4、应对漏洞(RV):组织应识别其软件版本中的残余漏洞,并做出适当的响应,解决这些漏洞,防止将来发生类似的漏洞。

每个实践定义都包括以下要素:

实践:实践的名称和唯一标识符,然后简要解释实践是什么以及价值

任务:执行练习可能需要的一个或多个动作

概念实现示例:可用于帮助实现任务的工具、流程或其他方法类型的一个或多个概念示例。不需要将示例进行组合,所述实例不是唯一可行的选项,某些示例可能不适用于某些组织和情况。

引用:指向一个或多个已建立的安全开发实践文档以及到特定的任务。

表1定义了实践。它们只是一个组织可能需要做的事情的子集;关于每种做法的更多信息可以在参考文献中找到。表中的实践、任务和概念实施示例的顺序与实施顺序以及实践、任务或示例的重要性无关。

该表使用了“敏感数据”、“合格人员”和“安全可靠”等术语,这些术语在本出版物中没有定义。采用SSDF的组织需要根据自己的环境和用例来定义这些术语。环境的名称也是如此,比如“开发”、“构建”、“试运行”、“集成”、“测试”、“生产”和“发布”,这些名称在不同的组织和项目中也有很大的不同。为了正确保护环境,特别是为了防止攻击者在环境间横向移动,枚举环境是非常重要的。

表1:安全软件开发框架(SSDF)版本1.1

实践1任务概念实现参考示例参考
定义软件开发的安全要求(PO.1):


确保随时了解软件开发的安全要求,以便在整个SDLC中考虑到这些要求,并且由于需求信息可以统一收集并共享,因此可以最大限度地减少重复工作。包括来自内部来源(如组织的政策、业务目标和风险管理战略)和外部来源(如适用的法律法规)的要求。
PO.1.1:确定并记录软件开发基础设施和过程的所有安全要求,并长期维护这些要求。示例1:保护整个SDLC中的软件开发基础架构及其组件(包括开发端点)的安全并维护该安全。 示例2:保护整个SDLC中的软件开发过程的安全,包括正在开发的软件所使用的开源和其他第三方软件组件的安全性。 示例3:至少每年审查和更新一次安全要求,如果内部或外部来源有新的要求,或者发生了针对软件开发基础设施的重大安全事件,应尽快审查和更新安全要求。 示例4:就即将发生的需求变更对相关角色进行培训。不一一展示,需要源文件可私信我获取
PO.1.2:确定并记录所开发软件要满足的所有安全要求,并长期维护这些要求。示例1:定义并指定基于风险的软件体系结构和设计需求的策略,例如使代码模块化以促进代码重用和更新;在执行期间将安全组件与其他组件隔离;避免未记录的命令和设置;提供相关功能帮助软件收购者安全部署、操作和维护软件。 示例2:定义并规定组织软件安全要求的策略,并在SDLC中的关键点验证合规性(例如,由gates验证的软件缺陷类别、对已发布软件中漏洞的实时响应)。 示例3:分析适用技术堆栈(例如,语言、环境、部署模型)的风险,并建议或要求使用风险较低的堆栈。 示例4:根据SDLC模型、软件寿命及其他因素,指定每个软件版本需要归档的内容(例如,代码、包文件、第三方库、文档、数据清单)以及需要保留多长时间。 示例5:确保策略覆盖整个软件生命周期,包括通知用户软件支持即将结束和软件寿命终止的日期。 示例6:至少每年审查一次所有安全要求,如果内部或外部来源有新的要求,发布的软件中发现了重大漏洞,或者发生了针对组织开发的软件的重大安全事件,应尽早审查。 示例7:建立并遵循处理需求异常请求的流程,包括对所有已批准的异常请求进行定期审查。
PO.1.3:将要求传达给向组织提供商业软件组件的所有第三方。[原PW.3.1]示例1:定义软件组件的核心安全需求集,并将其包含在采购文档、软件合同和与第三方签订的其他协议中。 示例2:定义选择软件的安全相关标准;标准可以包括第三方的漏洞披露计划和产品安全事件响应能力,或者第三方对相关方面的履约情况。 示例3:要求第三方证明其软件符合组织的安全要求。 示例4:要求第三方为其软件的所有组件提供来源数据和完整性验证机制。 示例5:当需要购买的第三方软件组件不符合安全要求时,要建立并遵循流程以解决风险;对所有已批准的例外需求情况的定期审查也应该这样。

未完,持续整理中...

(谢绝转载,更多内容可查看我的主页)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/716321.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

想学会如何翻译pdf中的英文?让我教你三招

曾经有一个名叫小明的年轻人,他是一名热爱阅读的书虫。每天,他都会沉浸在大量的pdf文档中,探索着各种知识的海洋。然而,有时候他遇到了一些困扰,因为有些pdf文档并不是他熟悉的语言书写的。小明很苦恼,他希…

python接口自动化(十四)--session关联接口(详解)

简介 上一篇cookie绕过验证码模拟登录博客园,但这只是第一步,一般登录后,还会有其它的操作,如发帖,评论等等,这时候如何保持会话呢?这里我以jenkins平台为例,给小伙伴们在沙场演练一…

vue3在浏览器段展示海康监控视频

一、需求 需要在浏览器点击查看海康的监控视频 二、最后成果展示 插件下载地址&#xff1a;https://download.csdn.net/download/xm_w_xm/87995593 三、思路和方法 3.1 首先安装插件&#xff0c;可以在上面的地址中下载安装&#xff0c;建立一个dom <div id"playW…

利用Dockerfile构建带sshd、jdk服务的自定义镜像

什么是Dockerfile? Dockerfile 是一个文本格式的配置文件&#xff0c; 用户可以使用 Dockerfile 来快速创建自定义的镜像 dockerfile 的基本结构 Dockerfile 由一行行命令语句组成&#xff0c;并且支持以 # 开头的注释行。 一般的&#xff0c;Dockerfile 分为四部分&#…

SpringCloud入门实战(十一)-Spring Cloud Stream消息驱动概述

&#x1f4dd; 学技术、更要掌握学习的方法&#xff0c;一起学习&#xff0c;让进步发生 &#x1f469;&#x1f3fb; 作者&#xff1a;一只IT攻城狮 &#xff0c;关注我&#xff0c;不迷路 。 &#x1f490;学习建议&#xff1a;1、养成习惯&#xff0c;学习java的任何一个技术…

聚焦云原生安全攻防|构建纵深防御的运行时威胁检测体系

7月2日&#xff0c;诸子云北京分会研讨会活动—网络安全攻防对抗在北京成功举办。 作为国内云原生安全领导厂商&#xff0c;安全狗也参与此次活动。 厦门服云信息科技有限公司&#xff08;品牌名&#xff1a;安全狗&#xff09;成立于2013年&#xff0c;致力于提供云安全、&…

Scenario Runner (CARLA)

1. How to run scenarios —Type 2. How to run scenarios —Functionalities

系统提权与数据窃取

系统提权与数据窃取 一、后渗透二、后渗透的技术2.1、提权2.2、横向移动2.3、持久化2.4、数据窃取2.5、漏洞利用 三、meterpreter后渗透3.1、靶机权限提升3.1.1、windows内核/服务漏洞3.1.2、bypassUAC3.1.2.1、bypassuac 进程注入3.1.2.2、bypassuac_injection 内存注入3.1.2.…

Android Studio实现内容丰富的安卓医院医生招聘平台

如需源码可以添加q-------3290510686&#xff0c;也有演示视频演示具体功能&#xff0c;源码不免费&#xff0c;尊重创作&#xff0c;尊重劳动。 项目编号120 1.开发环境 android stuido jdk1.8 eclipse mysql tomcat 2.功能介绍 安卓端&#xff1a; 1.注册登录 2.查看公告 3.查…

软件设计师(九)数据库技术基础

数据库技术是研究数据库的结构、存储、设计、管理和应用的一门软件学科 一、基本概念 1、数据库和数据库系统 数据库系统&#xff08;DataBase System&#xff0c;DBS&#xff09;是一个采用了数据库技术&#xff0c;有组织地、动态地存储大量数据&#xff0c;方便多用户访问…

公众号授权登录h5

公众号授权登录h5 . 前几天一个月薪35k的兄弟&#xff0c;给我推了一个人工智能学习网站&#xff0c;看了一段时间挺有意思的。包括语音识别、机器翻译等从基础到实战都有&#xff0c;很详细&#xff0c;分享给大家。大家及时保存&#xff0c;说不定啥时候就没了。 . 步骤 …

认识JavaScript

大家好,今天我们来认识一下JavaScript相关内容 目录 &#x1f437;1.JavaScript是什么&#x1f437;2.JavaScript发展史&#x1f437;3.JavaScript 和 HTML 和 CSS 之间的关系&#x1f437;4.JavaScript 运行过程&#x1f437;5.JavaScript 的组成&#x1f437;6.用JavaScript写…

JavaScript 实现一键复制(id,账号)

文章目录 HTML准备JavaScript 逻辑css 在前端有很多的时候需要一键复制账号&#xff0c;密码等&#xff0c;比如QQ的复制QQ账号&#xff0c;一些程序应用的个人信息页&#xff0c;都会有一键复制这个功能&#xff0c;下面给大家分享一下一键复制的实现方法 HTML准备 先提前准备…

【Linux修炼】开发工具使用

&#x1f307;个人主页&#xff1a;平凡的小苏 &#x1f4da;学习格言&#xff1a;命运给你一个低的起点&#xff0c;是想看你精彩的翻盘&#xff0c;而不是让你自甘堕落&#xff0c;脚下的路虽然难走&#xff0c;但我还能走&#xff0c;比起向阳而生&#xff0c;我更想尝试逆风…

计算机丢失msvcr110.dll是什么意思?那个修复方法更简单

Windows系统的电脑运行一段时间&#xff0c;总是不可避免出现一些系统报错&#xff0c;比如在运行游戏或游戏的时候&#xff0c;报错提示“计算机丢失msvcr110.dll”&#xff0c;“找不到msvcr110.dll”是什么意思呢&#xff1f;我是运行photoshop的时候报错的&#xff0c;场景…

Paddle:SSLD 知识蒸馏实战

SSLD 知识蒸馏实战 论文&#xff1a;https://arxiv.org/abs/2103.05959 1. 算法介绍 1.1 简介 PaddleClas 融合已有的知识蒸馏方法 [2,3]&#xff0c;提供了一种简单的半监督标签知识蒸馏方案(SSLD&#xff0c;Simple Semi-supervised Label Distillation)&#xff0c;基于 I…

如何解释商业智能BI?商业智能BI未来的发展趋势?

商业智能BI能够成为当前商业世界中备受企业欢迎的数据类技术解决方案其实是有原因的&#xff0c;早在1958年&#xff0c;IBM研究员就将商业智能BI的早期形态定义为&#xff1a;“对事物相互关系的一种理解能力&#xff0c;并依靠这种能力去指导决策&#xff0c;以达到预期的目标…

【Python】正则表达式匹配大部分Url

正则表达式&#xff1a; r’(\w://)?(\w)(.\w).(\w)(/\w)(.\w)?(?(\w\w)(&\w\w))?’ 解释&#xff1a;

World macheine和Houdini这两个软件在游戏地形制作中如何选择?

本文仅针对“World macheine和Houdini这两个软件在游戏地形制作中如何选择&#xff1f;”做出回答。 简单介绍 World Machine&#xff1a; World Machine是一款专业的地形生成软件。它提供了一套强大的工具和节点系统&#xff0c;用于创建高度图和地形。World Machine可以帮助…