写点什么

安全代码开发:敏捷的牺牲者?

  • 2012-03-20
  • 本文字数:965 字

    阅读完需:约 3 分钟

敏捷团队以快速产生可靠和高质量的代码而著称。然而,快速交付的压力可能会导致走捷径的评审,缩减测试并缺乏对安全代码的重视。安全开发与敏捷共存是否只是一厢情愿的想法呢?

根据一项中小型企业的研究表明,敏捷团队并没有把安全当回事,即使是开发通过 Web 访问的系统。该研究引用说,

采访表明,小型和中型的敏捷软件开发组织不使用任何特定的方法来实现安全目标,即使当他们的软件是面向 Web 的,是潜在的攻击目标。这种情况下,研究证实即使在某些案例中安全是被明确要求的,安全设计作为实施团队的输入要求之一,最终的结果是否满足安全目标也没有保证。

Adrian Lane,也关注 敏捷方法开发软件风险的安全方面。 Adrian

关注功能的高效交付、以牺牲软件开发的安全为代价基于书本式的敏捷实施问题,并推动软件之外的安全确认与服务。

Rocky Heckman 认为,像 TDD 和结对编程这样的技术, 主要还是聚焦在功能上

测试的重点放在高质量代码与可靠的可重复性操作。很少或根本没有提及渗透式测试或威胁模型。

敏捷开发是否意味着完全无视安全?看起来也许有一些解决方法。

Jim Bird 提出,通过一点点地提醒可能是一种渐进地解决这些风险的方法.

据 Jim 的观点,就像其他的质量提升实践那样,安全实践是要融入团队的意识中。 团队可以使用增量受攻击面分析来监控系统的安全风险状况的变化,这可能是由于接口架构的改变导致的。

对于逐步构建软件并对代码非常熟悉的团队来说,威胁模型并没有想象的那么严重。大部分可在 1 周或 2 周的 Sprint 做完的变更并不大,而且可以增量的修改,不用花太多时间来评审,即使受攻击面被改变了。

Jim 还提到了利用安全 Sprint,微软称之为安全突击或“迷你安全推进”,在该 sprint 中,团队寻找现有代码的安全漏洞,然后再作出进一步的重大变更。Jim 引用 Adrian Lane 的话,他提到,开发团队比客户更关注安全性。开发团队在其开发过程中应给予足够的重视并担负起责任。

即使一个强大的和善意的客户也不能被指望了解应用程序的安全问题,或如何构建安全的软件。他们自己的事情已经很多了

因此,正确的措施和心态有可能把安全作为开发过程的一部分。

Jim 说,

没有理由认为敏捷开发 = 安全故障。技术工作,对于质量和细节与构建安全软件的承诺是相同的,而不论团队采用什么样的开发方式。

查看英文原文: Secure Code Development: A Casualty With Agile?

2012-03-20 10:192336
用户头像

发布了 42 篇内容, 共 19.8 次阅读, 收获喜欢 6 次。

关注

评论

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

云图说 | 3分钟创建一个游戏类工作负载

华为云开发者联盟

Docker 容器 华为云 工作负载 2048游戏

程序员陪娃系列——育儿路上二三事续

孙苏勇

程序员 陪伴 随笔杂谈

BIGO技术:实时计算平台建设

InfoQ_3597a20b53cc

互联网 BIGO

低代码平台会让程序员失业?测评了5个工具,谁能让效率提高N倍?

代码制造者

编程 编程语言 低代码 零代码 测评

【API进阶之路】帮公司省下20万调研费!如何巧用情感分析API实现用户偏好调研

华为云开发者联盟

反馈 API 华为云 API Explorer平台 用户调研

MySQL“被动”性能优化汇总!

王磊

MySQL

趣文:那天我被拉入 C++ 亲友群

程序员生活志

c c++ 程序员

《Java并发编程的艺术》读书笔记1:说说并发编程

Jason

多线程 并发

入职两周,怀疑自己进了假百度!跟传说中完全不一样!难道真有两家百度公司?

程序员生活志

百度 程序员

多角度分析,通讯时序数据的预测与异常检测挑战

华为云开发者联盟

时序数据库 即时通讯 异常检测 网络智能体 时序预测

学了那么多技术,为何依然成不了架构师

菜根老谭

架构设计原则

学生党学编程,有这个开源项目就够了!

JackTian

GitHub 学习 编程 程序员 学生党

程序员陪娃系列——小娃的到来

孙苏勇

程序员 陪伴 随笔杂谈

LeetCode题解:21. 合并两个有序链表,递归,JavaScript,详细注释

Lee Chen

大前端 LeetCode

太赞了!程序员应该访问的最佳网站都在这里了!

JackTian

GitHub 学习 编程 程序员 网站平台

“云”上教与学,让教育不止步于课堂

Geek_116789

内存总是不够?HBase&GeoMesa配置优化了解一下

华为云开发者联盟

内存模型 内存 HBase 大集群 GeoMesa

程序员陪娃系列——小小免费按摩师

孙苏勇

程序员 陪伴 随笔杂谈

程序员陪娃系列——育儿路上二三事

孙苏勇

程序员 陪伴 随笔杂谈

数据库外键

will

数据库 性能 外键

一次好的聊天可以超过自己努力啃几周的书籍

良知犹存

程序人生

构造、析构期间被调虚函数发生的惨案,长教训!

华为云开发者联盟

代码 组合模式 封装、继承、多态 bug 回调函数

Android 原生 SQLite 数据库的一次封装实践

vivo互联网技术

sqlite android 数据库

Linkerd 2.8 - 實現超級簡單又安全的多叢集(multicluster) Kubernetes 架構

Rammus

Kubernetes DevOps 运维 云原生 Service Mesh

程序员陪娃系列——和孩子聊生死

孙苏勇

程序员 陪伴 随笔杂谈

程序员陪娃系列——见你的第一面

孙苏勇

程序员 陪伴 随笔杂谈

使用 supervisor 配置 ngrok 内网穿透为守护进程

jerry.mei

Linux 操作系统 ngrok 守护进程 内网穿透

移卡荣登2020「AI 最佳成长榜」,AI+金融科技赋能商业服务

DT极客

品质网络的迭变之路,以及运营商的未来之匙

脑极体

一款基于 Python 语言的 Linux 资源监视器!

JackTian

Python GitHub Linux bashtop bpytop

边云协同!EM-BOX视频分析盒加速安全生产场景落地AI应用

百度大脑

人工智能 人脸识别 图像识别 百度大脑 人体识别

安全代码开发:敏捷的牺牲者?_研发效能_Vikas Hazrati_InfoQ精选文章