写点什么

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

  • 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:362390
用户头像

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

关注

评论

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

微服务架构:网关概念与zuul

程序员架构进阶

服务化 API网关 七日更 28天写作 2月春节不断更

翻译:《实用的Python编程》02_01_Datatypes

codists

Python 人工智能 数据结构与算法 字典 元组

滴普技术荟-云原生基座OpenKube开放容器实践(九):K8S的ServiceIP实现原理

腾讯发布区块链产业加速器,生态共创助力新基建建设

CECBC

腾讯

在区块链的新浪潮中,为更多人争取“公平”

CECBC

区块链 新浪潮

Hive底层原理:explain执行计划详解

五分钟学大数据

大数据 hive 二月春节不断更

MySQL 批量修改所有表字段字符集及排序规则

运维研习社

MySQ

吉利汽车宣布进军区块链 多个龙头股企业早已低调精准布局区块链

CECBC

区块链

Go1.16 发布

Rayjun

Go 语言

Let's Encrypt签发工具CertBot-auto不再维护

运维研习社

2021 Flutter从零开始之全栈开发,后台到在线教育APP上线。

人生如梦

flutter dart

mathtype的几个操作技巧

克比

一起重新全面认识JWT-Json Web Token

谙忆

最常见的10种Java异常问题!

Java架构师迁哥

Nginx零成本、易操作实现网站视频加速

运维研习社

nginx 流媒体 网站优化

关于智商测试的一点闲话 Day1

道伟

科普 28天写作

Dart 后台开发 Aqueduct ORM初始化数据库

人生如梦

(28DW-S8-Day1) 定个魔幻的范围:在线教育+区块链

mtfelix

比特币 区块链 在线教育 28天写作 教育+区块链

干货 | Redis 实现发布订阅原理与实践

架构精进之路

redis 28天写作 发布订阅

这才是打开“金三银四”Java面试的正确方式,2021“金三银四”看这个就对了

Java 架构 面试

程序员成长第十篇:从阅读代码开始

石云升

28天写作 2月春节不断更 阅读代码

作业-用例文档

让我思考一会儿

deepin20 安装英伟达闭源驱动的步骤详解

夜猫西街

计算机中的层次化存储是个什么鬼?

冰河

程序员 数据结构 算法 计算机 层次化存储

28天瞎写的第二百三十九天:什么是正念冥想?

树上

冥想 28天写作 正念

心理学与游戏之现学现卖系列

Justin

心理学 28天写作 游戏设计

Linux如何使用libudev获取USB设备VID及PID

夜猫西街

互联网小拼,这一生的故事,你要看看吗《打工人的那些事》

谙忆

让代码说话:如何把版本信息注入到代码中

zhujun

c++ Python git rust Go 语言

2020 年行摄回忆录(下)

穿过生命散发芬芳

生活 摄影

为什么ElasticSearch比MySQL更适合全文索引

程序员历小冰

数据库 lucene elasticsearch BitMap 跳表

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