HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

软件开发生命周期中的安全性

  • 2011-03-04
  • 本文字数:873 字

    阅读完需:约 3 分钟

我们必须把应用程序的安全性整合到软件开发的过程中。之后在测试中才关注安全性是不够的,因为对于修改错误来说,那太迟了,而且非常昂贵。微软的 Steve Lipner 在上周举行的 RSA 大会 2011 上发表了关于应用程序安全性的演讲,其中谈到在软件开发生命周期中的安全性。他向大家介绍了微软创建的安全性开发生命周期过程,其中包括以下阶段:

  • 安全性培训
  • 需求分析
  • 设计
  • 实现
  • 验证
  • 发布
  • 反馈

另外,SDL 框架还有一个敏捷的版本,它支持把安全性因素整合到敏捷开发过程中。敏捷过程中的安全性需求可以归为三类:

  • 每次 Sprint(Every-Sprint):这些是高优先级和重要的安全性需求,我们可以使用像威胁建模之类的技术来识别它们。
  • 一次(One-time):这类需求包括架构和策略上的需求,像决定编译器的版本或者设置缺陷跟踪数据库等等。
  • 大量(Bucket):这类需求包括长期运行或者可以暂缓的需求。比方说文件或者 ActiveX fuzzing

其他演讲者也在会上谈到了提高应用程序安全性的技术。Alberto Revelli(Cigital)讨论了安全设计原则,像黑名单和白名单、内存级别和主机级别上的保护、安全的互操作性、最小权限原则以及区域分割(compartmentalization)等等。

Brian Chess 和 Jacob West(都来自于 Fortify)谈到了关于安全编码技术。现在已经有多种安全缺陷的分类列表,像 OWASP Top 10 、七种致命错误(Seven Pernicious Kingdoms)、常见弱点列表( CWE )、 Sans Top 25 以及常见易受攻击点评分系统( CVSS )等等,各个组织可以使用它们来管理应用程序中的安全弱点。Jacob 对其中的一些弱点给出了示例,像跨站点脚本攻击(XSS)、跨站点伪造请求(CSRF)、HTTP 响应分割、会话固定攻击以及 SQL 注入攻击等等。Brian 推荐了一些安全编码原则,像默认做出良好的验证、在应用程序的不同层之间发布信任边界、间接选择以及白名单等等。

Chris Eng(Veracode)说明了各种不同的安全测试方法,像静态、动态、手动的测试以及其中的细节,另外还谈到了各种方式的强度和局限性。Reeny Sondhi(EMC 公司)也对她的公司中所使用的缺陷响应程序做了概述。

查看英文原文: Security in the Software Development Lifecycle

2011-03-04 18:362221
用户头像

发布了 340 篇内容, 共 129.5 次阅读, 收获喜欢 13 次。

关注

评论

发布
暂无评论
发现更多内容

2013年,我有点喜欢编程了

勇哥java实战分享

大数据培训MySQL 索引B+Tree

@零度

大数据

看 Amazon 如何通过 Nitro System 构建技术优势

亚马逊云科技 (Amazon Web Services)

Builder 专栏

解析Java-throw抛出异常详细过程

华为云开发者联盟

Java 开发语言 throw throws 系统自动抛异常

构建面向特征工程的数据生态 ——拥抱开源生态,OpenMLDB全面打通MLOps生态工具链

第四范式开发者社区

人工智能 机器学习 数据库 特征平台 特征工程

全面解析企评家网站功能

企评家

企业评价 企评家 企业成长性评价 企业查询

Kubernetes 1.24 - 走向成熟的 Kubernetes

Daocloud 道客

Kubernetes 云原生 容器编排

边缘工业协议网关软件Neuron正式开源,连接海量异构工业设备

EMQ映云科技

开源 物联网 IoT mqtt emq

python进阶-装饰器

AIWeker

Python 人工智能 5月月更

石油储运生产 2D 可视化,组态应用赋能工业智慧发展

一只数据鲸鱼

数据可视化 数字孪生 组态 石油开采

web前端培训interface和type的区别分析

@零度

typescript 前端开发

百亿级数据同步,如何基于 SeaTunnel 的 ClickHouse 实现?

Apache SeaTunnel

Apache 大数据 开源 DolphinScheduler workflow

前端 “一键换色“ 的几种方案

CRMEB

2022年医疗+AI,将会如何蓄力发展?

易观分析

医疗AI

java培训定时任务的理解与实战教学

@零度

定时任务 JAVA开发

PingCode Flow技术架构揭秘

PingCode研发中心

网站开发进阶(三十二)HTML5之FileReader的使用

No Silver Bullet

html5 5月月更 FileReader

比心云平台基于阿里云容器服务 ACK 的弹性架构实践

阿里巴巴云原生

阿里云 容器 云原生 客户案例 阿里云容器服务ACK

“操作系统的「冷板凳」要坐多久?”万字长文解读16年开源人的坚持

OpenAnolis小助手

Linux 开源 操作系统 坚持 龙蜥社区

到底什么是企业应用现代化?

Daocloud 道客

云原生 应用现代化

云天励飞与华为签署合作协议,共同推进昇腾AI产业持续发展

科技热闻

Git 常用命令

平凡人生

Open Harmony移植:build lite配置目录全梳理

华为云开发者联盟

HarmonyOS Open Harmony移植 Open Harmony build lite配置

【Python】此集合非彼集合

謓泽

5月月更

北明软件加入昇腾万里伙伴计划,与华为共建昇腾AI生态,共同推动人工智能产业繁荣发展

科技热闻

WordPress 如何重置密码

海拥(haiyong.site)

5月月更

Alluxio 2.8版本重磅发布!3大提升抢先打开数据新世界

Alluxio

分布式缓存 数据管理 Alluxio 大数据 开源

社交电商如何规避传销风险

源字节1号

软件开发

SpringBoot集成开源IM框架MobileIMSDK,实现即时通讯IM聊天功能

JackJiang

网络编程 即时通讯 IM TCP协议

Apache ShardingSphere 企业行|走进携程

SphereEx

Apache 数据库 ShardingSphere SphereEx 企业行

如何基于盘古开发框架开发Dubbo微服务网关

码农大熊

微服务架构 网关

软件开发生命周期中的安全性_安全_Srini Penchikala_InfoQ精选文章