• 0
  • 0
分享
  • 软件安全需求分析——软件测试圈
  • 恬恬圈 2021-05-18 14:12:21 字数 1927 阅读 3365 收藏 0

一、软件与软件安全的需求分析

为了开发出满足用户需求的软件产品,首先需要知道的是用户的需求。这是对软件开发工作能否取得成功的基础条件。

1、软件需求分析的主要工作

为了开发出满足用户需求的软件产品,首先需要知道的是用户的需求。这是对软件开发工作能否取得成功的基础条件。

1)确定系统的综合要求

  • 功能需求:划分系统需要的功能;

  • 性能需求:指定系统的约束,包括速度、信息量、存储量等;

  • 可靠性和可用性需求:顶俩个的指定系统的可靠性,它量化了系统被用户的实用程度;

  • 出错处理需求:该如何人响应错误环境;

  • 接口需求:描述系统与特的通信格式;

  • 约束:应该遵循的限制条件;

  • 逆向需求:说明软件不应该做什么;

  • 将来可能提出的需求:明确哪些需可能扩充到软件之中。

2)分析系统的数据要求

准确全面的定义数据,正确的描述数据之间的逻辑关系。

3)导出系统的逻辑模型

使用数据流图、实体-联系图、状态转换图、数据字典等逻辑模型。

4)修正系统开发计划

在分析过程中,对系统的深入理解,可以具体的、准确的估计系统的成本和进度,修正以前制定的计划。

2、软件安全需求分析的主要工作

1)软件安全需求分析的目的与作用

目的: 描述为了实现信息安全目标,软件系统应该做什么,才能高效的提高软件的安全质量,减少软件漏洞。

重要作用:一个没有惊进行安全需求分析的软件开发项目,将威胁到信息的保密性、完整性和可用性,以及其他的一些安全问题。这个软件被攻破就只是时间的问题,早晚会被攻破。所以对于一个软件来说,软件的安全需求分析是必不可少的。

2)安全需求分析与软件需求分析的联系

软件安全需求分析是软件需求分析的一个必要组成部分。安全需求应该与业务需求具有同样的需求水平,并能对功能需求具有约束力。

3)安全需求分析与软件需求分析的区别

软件安全需求的客观性:

软件安全需求分析是由系统的客观属性决定的。与一般需求分析的不同在于:安全需求并不是从使用者的要求和兴趣出发,而是由系统的客观属性决定的。

软件安全需求的系统性:

软件安全需求分析不能只从系统本身出发,必须从系统角度进行分析。因为软件本身可能会由于逻辑、数据、时序等设计缺陷导致安全问题。从系统角度分析,不可避免涉及到各个领域的专业知识与经验积累。因此分析时应以人为主,分析工具只能起到辅助作用。并且分析时需要有专业的分析人员,熟悉系统架构的总体设计人员,软件设计人员和各领域专家共同参与。

4)安全需求分析的主要工作

首先需要确定明白你软件的业务运行环境、规则环境及技术环境。然后在了解各类软件安全需求的基础上,通过一定的安全需求获取过程,对软件应该包含的安全需求进行分析,然后对如何实际部署和开发进行讨论。

二、软件安全需求来源

1、来源的分类

内部安全需求:

内部安全需求一是指内部需要遵守的政策、标准、指南和实践模式,二是软件功能需要的相关安全需求。

外部安全需求:

主要是法律法规等遵从性需求,包括国家和地区的关于技术与管理的法律法规、标准与要求等。

2、软件安全遵从性需求

主要由信息系统安全的测评国际保准、信息安全管理的国际标准、信息系统安全工程国际标准以及我国的信息安全标准等组成。

三、需求的获取

1、获取的相关方

软件安全需求获取的相关方包括 业务负责人、最终用户、客户、安全需求分析人员和安全技术支持人员等。

业务负责人、最终用户和客户咋安全需求确定是发挥着重要作用,应当积极的参与安全需求的采集和分析过程。

此外,运维小组与信息安全小组等技术支持人员页式相关方,应与分析人员、业务负责人、客户等做好积极沟通,寻求支持与帮助。

2、获取方法

1)头脑风暴

又称之为智力激励法、自由思考法,是指无限制的思考和自由联想、讨论等,其目的在于产生新观念或者激发新创想。值得注意的是,这种情况只适用于需要快速实现的情况下使用。并且这种方式提出的安全需求可能不全面或不一致,以来于个人对问题的理解以及自身的经验等,比较主观。

2)问卷调查和访谈

通过问卷调查,可以直接的生成安全需求。其有效性取决于如何向被调查对象提出和是的问题。调查时应该覆盖当前软件的安全设计原则和安全配置文件的内容,应当考虑业务风险、过程风险和技术风险。

3)策略分解

将组织需要遵守的内部和外部政策,包括法律法规、隐私和遵从性命令分解成详细的安全需求。这是一个连续化的结构化的过程。

4)数据分类

更具数据的生命周期管理对数据分阶段划分来决定安全需求。也可以根据数据的重要性等级的划分来确定。

5)主客体关系矩阵

采用主/课题无关系矩阵来刻划一个基于使用用例的主/客体之间的操作关系,在此基础之上确立安全需求。


作者:育菌头顶凉

原文链接:https://blog.csdn.net/qq_45590334/article/details/111990740

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   据BusinessKorea报道,苹果芯片供应商台积电明年有望交付 2 纳米芯片技术。预计苹果公司将于明年把其定制芯片转移到 2 纳米工艺,以充分利用台积电的先进技术。据悉,台积电正满怀信心地推进 2 纳米节点。这家芯片制造商此前宣布"2 纳米工艺的开发进展顺利",量产有望在 2025 年实现。  有传言称,由于首次应用全栅极(GAA)技术面临技术挑战,台积电可能被迫将其 2 纳米工艺的全面量产推迟到 2026 年。但公司方面辟谣称,"应用 GAA 时的良率已达到目标的 90%",表明技术研发已取得了实质性进展。苹果公司首席运营官杰夫-威廉姆斯(Je...
            0 0 951
            分享
          •   据《纽约时报》报道,沙特阿拉伯正计划设立 400 亿美元(IT之家备注:当前约 2880 亿元人民币)的 AI 初创企业风投基金。  根据多位消息人士的说法,这一坐拥巨大石油财富的海湾国家正寻求支持一系列的 AI 科技初创企业,涵盖从芯片设计到数据中心领域。该国代表甚至表示沙特正考虑创办自己的 AI 公司。  具体而言,沙特方面与硅谷顶级风险投资公司安德森 霍洛维茨(Andreessen Horowitz)等方就潜在的合作关系进行了讨论,不过计划仍存有变化的可能。该基金有望于今年下半年正式推出。  如果 400 亿美元的规模成真,则这支风险投资基金将在规模上远超典型的美国对手,仅次于世界范...
            0 0 835
            分享
          •   本文以笔者当前使用的自动化测试项目为例,浅谈分层设计的思路,不涉及到具体的代码细节和某个框架的实现原理,重点关注在分层前后的使用对比,可能会以一些伪代码为例来说明举例。  接口测试三要素:  ·参数构造  · 发起请求,获取响应  · 校验结果  一、原始状态  当我们的用例没有进行分层设计的时候,只能算是一个“苗条式”的脚本。以一个后台创建商品活动的场景为例,大概流程是这样的(默认已经是登录状态下):  创建商品-创建分类-创建优惠券-创建活动  要进行接口测试的话,按照接口测试的三要素来进行,具体的效果如下:  参数构造:     &n...
            0 0 1137
            分享
          •   埃隆-马斯克(Elon Musk)旗下的社交网络 X 今天对其 API 的定价和限制进行了调整,同时还宣布了具有折扣价的年度计划。该公司将基本 API 层级的价格从 100 美元提高到 200 美元,并表示将为该订阅计划引入更高的限制和新的端点。  在 X 的开发人员社区门户网站上发布的一篇文章中,该公司指出,通过此 API 的读取次数将从 10000 次增加到 15000 次,开发人员还将获得新的端点,如 reposts_of_me 和社区搜索。  但是,在API比较页面和计划购买页面上,API 限制与以前相同。 这可能是一个错误,该公司可能将对该页面进行编辑。  X Developer...
            0 0 113
            分享
          •   新浪科技讯据报道,谷歌(105.22,-3.58,-3.29%)母公司Alphabet今日要求法庭驳回多家广告商最新提交的修改后的集体诉讼。  2021年,多家广告商对谷歌提起集体诉讼,指控谷歌滥用其在数字广告上的主导地位。后来,加州圣荷地方法院法官贝斯·拉布森·弗里曼(BethLabsonFreeman)驳回了该诉讼。  但同时,弗里曼也保留了原告再次提起诉讼的机会。弗里曼称,原告需要厘清他们认为谷歌独占了哪个市场;还需要进一步解释,为什么说谷歌拒绝支持竞争对手的广告系统是反竞争行为,因反垄断法并未规定垄断方协助竞争对手生存。  对于广告商提交的修改后的集体诉讼,Alphabet称,提起...
            0 0 959
            分享
      • 51testing软件测试圈微信