软件安全开发-流程规范

“ 写一篇软件安全开发流程分享给大家,帮助从事软件开发,测试,管理的人员,规范操作,重视软件工程安全。”

现今社会存在各种网络安全事件,比如勒索病毒导致许多网络系统瘫痪,大量注册用户个人数据泄露导致企业面临破产,银行职员留后门为自己牟利。网络安全形势严峻,各个国家、政府、企业、医院、学校都积极投入到捍卫网络安全,保护公司资产,维护用户合法权益的保卫战当中,网络安全工程师成为新兴和稀缺岗位。

一、优秀软件安全开发流程

微软为了提升公司研发的操作系统和各类办公软件的安全,提出了SDL security development lifecycle(安全开发生命周期),即从安全角度指导软件开发过程的管理模式。SDL是一个安全保证的过程,重点是软件开发,它在开发的所有阶段都引入了安全和隐私的原则。

以下是微软SDL流程框架图:

其主要由以下7部分组成:

1、安全培训(training):提升团队安全意识,对齐安全要求

2、需求分析(requirements): 建立安全需求管理、安全质量标准、安全与隐私风险评估

3、系统设计(design): 制定设计规范、攻击面分析、威胁建模

4、实现(implementation):使用优选工具、消减危险函数、对代码进行静态安全检查

5、验证(verification): 动态安全测试、Fuzz测试、攻击面评审

6、发布(release): 制定安全应急响应计划、最终安全审计、发布归档

7、响应(response):执行安全应急响应计划

根据微软的SDL流程框架,我们看出软件安全开发是软件开发的必然趋势,即必须要将安全纳入到传统软件开发流程的每个环节。

二、总结软件安全开发流程新增的安全活动

传统软件开发流程

软件安全开发流程新增项

客户需求收集

客户安全需求收集

需求分析与澄清

分析客户安全需求,制定安全标准和要求,建立安全需求管理、安全与隐私风险评估

软件设计

在特性设计中结合安全设计规范进行安全设计,对模块进行威胁建模和攻击面分析

软件编码

1、安全编码:新代码使用安全函数,老代码替换危险函数,对代码进行安全检视;

2、使用第三方开源工具或者库,需要使用最好的最新的

版本构建

1、满足安全编译选项的要求

2、选择安全的构建工具

软件测试

1、对安全设计进行分析与评审,输出安全测试用例

2、对软件暴露的接口进行Fuzz测试

3、对软件暴露的攻击面进行攻防渗透测试

4、对软件进行安全扫描与漏洞挖掘

客户质量验收

1、提供验收的安全交付件,如安全设计说明书、安全测试报告

2、提供测试环境给客户,让客户进行安全评估

发布与运维

1、制定安全应急响应计划,并在实际运维中落地

2、日常运维中做好安全巡检,遇到黑客攻击,及时告警,并快速修复安全漏洞


点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

热门产品

历史上的今天:03月28日

热门专题

昆明综合高中|昆明综合高中
昆明综合高中
昆明网站建设|昆明网站建设,昆明网站开发,昆明网站建设公司,昆明网站建设价格,昆明网站设计,昆明网站制作,网页设计,高端网站建设,高端网站设计
昆明网站建设
易捷尔单招|易捷尔单招,易捷尔单招培训,易捷尔单招报名,易捷尔单招考试,易捷尔单招培训学校,易捷尔单招分数
易捷尔单招
一年制中专|中专学历,中专是什么学历,中专是什么,中专有什么专业,中专升大专,一年制中专
一年制中专
云南巨榕教育投资集团有限公司|云南巨榕教育投资集团有限公司,巨榕教育集团,巨榕教育
云南巨榕教育投资集团有限公司
云南高职单招|云南单招,云南单招网,云南高职单招网,云南高职单招,云南单招学校,云南单招培训
云南高职单招
小程序开发|微信小程序,小程序开发,小程序,小程序制作,微信小程序开发,小程序公司,小程序开发公司,分销,三级分销系统,分销系统
小程序开发
APP开发|app开发_app开发公司_app软件开发_专业app开发_云南app开发公司_app定制_原生app开发定制
APP开发

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部