“AI 技术+人才”如何成为企业增长新引擎?戳此了解>>> 了解详情
写点什么

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

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

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

关注

评论

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

阿里P8大牛亲自教你!一个三非渣本的Android校招秋招之路,满满干货指导

欢喜学安卓

android 程序员 面试 移动开发

多端框架开发 | 拼团商城项目开发说明

YonBuilder低代码开发平台

小程序云开发 大前端 移动终端 APP开发 多端开发

JVM笔记 -- 来,教你类加载子系统

秦怀杂货店

Java JVM 类加载 虚拟机

朋友,你听说过跨域吗

河磨

spring CORS 跨域

架构师训练营第十一周作业 - 命题作业

阿德儿

拍乐云创始人&CEO赵加雨:深耕18载,打造全景式音视频服务

拍乐云Pano

音视频 WebRTC 在线教育 RTC 实时通信

带你走进与千万数据通信者共成长的“家园”

华为云开发者联盟

华为 开发者 网络 华为数据通信 社区

阿里P8大牛亲自讲解!2021年Android网络编程总结篇,醍醐灌顶!

欢喜学安卓

android 程序员 面试 移动开发

电影AI修复,让重温经典有了新的可能

华为云开发者联盟

AI 电影 华为云视频 视频增强 经典

EGG公链生态项目——EFTalk上的巴莱特定律

币圈那点事

区块链

有道技术沙龙 | AI 语音交互技术在语言学习场景的实践

有道技术团队

人工智能

看故事学Redis:再不懂,我怀疑你是假个开发

华为云开发者联盟

MySQL 数据库 redis 缓存 数据

区块链数字版权管理,区块链赋能知识产权保护

13530558032

【LeetCode】不同的子序列Java题解

Albert

算法 LeetCode 28天写作 3月日更

SDK 是如何存储事件数据的?

神策技术社区

ios 大数据 存储 数据采集 神策数据

LeetCode题解:647. 回文子串,动态规划,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

C语言中“野指针”、“悬空指针”是什么?

不脱发的程序猿

c 指针 编程之路 bug 3月日更

你遇到过哪些质量很高的 Java 面试?

张小方

Java 面试 阿里 薪资

图解堆排序

Silently9527

Java 排序算法 堆排序

数据驱动业务:一张大屏掌控城市运行,效率提高95%

一只数据鲸鱼

物联网 数据可视化 智慧城市 智慧园区 智慧交通

跟公司新招的这个“同事”搭档,工作搬砖太“自动化”了

华为云开发者联盟

华为 AI RPA 自动化 员工

第8周大作业

八达鸟

一招让Kafka达到最佳吞吐量

万俊峰Kevin

kafka go-zero Go 语言

智慧公安二维码定位报警系统开发,微警务平台解决方案

源中瑞-龙先生

二维码定位报警系统开发 智慧公安 智慧公安扫码

JDK8新特性 Fork/Join 的优化

Java小咖秀

Java java8 jdk8 forkjoin fork

电商千万级交易的金手指:分布式事务管理

华为云开发者联盟

微服务 事务 华为云 分布式事务管理 DTM

怎么找属于自己最优的2B增长模型?

boshi

销售管理 SaaS 七日更

Oracle Sql性能优化

大数据技术指南

oracle 大数据 28天写作 3月日更

寻找被遗忘的勇气(十七)

Changing Lin

3月日更

沙龙报名 | 云计算进入多元架构,云原生时代的挑战与机遇

京东科技开发者

云计算 云原生

OpenKruise v0.8.0 核心能力解读:管理 Sidecar 容器的利器

阿里巴巴云原生

容器 微服务 云原生 k8s 应用服务中间件

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