ArchSummit全球架构师峰会全新主题——「智能进阶·架构重塑」>>> 了解详情
写点什么

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

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

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

关注

评论

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

智捷云——元宇宙综合解决方案服务商

智捷云

区块链 元宇宙 智捷云 区块链技术开发

你可能不知道,我是如何将一个老系统的kafka消费者服务的性能提升近百倍的

Java全栈架构师

Java kafka 程序员 面试 架构设计

如何实现一个延时队列 ?

领创集团Advance Intelligence Group

延时队列 Redis 数据结构 redis 底层原理

2022年国内云管平台厂商哪家好?为什么?

行云管家

云计算 云管平台 云管平台厂商

什么是低代码开发?

AIRIOT

低代码 物联网 低代码,项目开发

华为云ModelArts的使用教程(附详细图解)

逝缘~

华为 华为云 7月月更

uni-app与uviewUI实现仿小米商城app(附源码)

优秀的李

小程序 uniapp 7月月更 uviewui

被忽视的问题:测试环境配置管理

老张

软件测试 测试环境治理

一加10 Pro和iPhone 13怎么选?

Geek_8a195c

DataKit——真正的统一可观测性 Agent

观测云

同事悄悄告诉我,飞书通知还能这样玩

Jianmu

自动化 建木CI 飞书通知 定时

LeaRun.Java快速开发平台 高效代码自动化生成

力软低代码开发平台

字节跳动Dev Better技术沙龙成功举办,携手华泰分享Web研发效能提升经验

字节跳动终端技术

字节跳动 前端

容器环境minor gc异常频繁分析

wgy

Java minor gc

图像检索(image retrieval)

Geek_e369a5

图像搜索 图像检索

太方便了,钉钉上就可完成代码发布审批啦!

阿里云云效

云计算 阿里云 钉钉 jenkins 代码

Numpy 的仿制 2

祖维

c slice Numpy

激进技术派 vs 项目保守派的微服务架构之争

BoCloud博云

微服务 微服务架构 云原生 istio 服务网格

输入的查询SQL语句,是如何执行的?

华为云开发者联盟

MySQL sql 开发 语句

能源行业的数字化“新”运维

博睿数据

AIOPS 智能运维 博睿数据 能源行业

PingCode 性能测试之负载测试实践

PingCode研发中心

软件测试 PingCode

OPPO 小布预训练大模型揭秘:可大规模工业化应用的十亿级模型

OPPO小布助手

AI 智能助手 预训练模型 预训练

【Unity UGUI】ScrollRect 动态缩放格子大小,自动定位到中间的格子

萧然🐳

游戏开发 Unity ScrollView 7月月更 UGUI

五千字讲清楚团队自组织建设 | Liga 妙谈

LigaAI

团队管理 个人提升 敏捷开发管理 LigaAI 自组织协作

Python 入门指南之使用 Python 解释器

海拥(haiyong.site)

7月月更

TCP两次挥手,你见过吗?那四次握手呢?

C++后台开发

网络编程 网络协议 TCP/IP 后端开发 C++开发

DeFi生态NFT流动性挖矿系统开发搭建

薇電13242772558

NFT DeFi流动性挖矿

Nebula Importer 数据导入实践

NebulaGraph

图数据库 数据导入 Nebula Graph

第十八届IET交直流输电国际会议(ACDC2022)于线上成功举办

E科讯

LeetCode-168. Excel表列名称(java)

bug菌

LeetCode 7月月更

NBA赛事直播超清画质背后:阿里云视频云「窄带高清2.0」技术深度解读

阿里云视频云

音视频 直播 视频编码

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