哥伦比亚大学的一项近期研究发现,我们每天要为70多个决定劳神。这还只是重要决定的数量,因为康奈尔大学此前的研究表明,我们每天仅在食物方面就要做出200多个决定。
我们每天做出的许多决定,从长远来看都无关紧要。它们影响甚微,而且大多无法归为“好”或“坏”,只不过是我们当时做出的选择。但有些选择会带来重大后果。有些是经过深思熟虑后有意做出的,有些则并非出于本意,只有事后回想时才会显现。
有些与应用安全相关的意外后果,只有事后回顾时才显得显而易见。
选择:平台、框架和组件
从开发第一天起,就需要不断做出选择。其中许多选择涉及平台和框架、库及第三方组件。整个开发过程中需要做出大量此类选择。目前,据估计,应用中80%至90%的组成部分来自开源或第三方组件。每次选择引入开源或第三方组件,都可能带来潜在影响,尤其是在应用安全方面。Black Duck Software的分析称,每款商业软件产品平均包含105个开源组件。
表面看来,这些后果并没有那么可怕。毕竟,Contrast Security的研究发现,软件库仅占漏洞的7%。Black Duck发现,每个应用平均存在22.5个开源软件漏洞,其中40%被评为“严重”漏洞。不过,考虑到应用中其余10%至20%的自定义代码才是大多数应用漏洞的根源,这一数字仍然很低。
遗憾的是,大多数漏洞并不会通过CVE披露,也没有可供攻击者轻易获取的示例利用代码。然而,在成千上万个Web应用经常使用相同组件和库的环境中,恶意行为者无需费太大力气就能找到目标。目前,builtwith.com(用于跟踪应用和网站构建技术的使用情况)统计显示,近40,000个活跃网站依赖Apache Struts。Apache Struts 2中已披露的漏洞曾被成功利用,并在互联网上引发了一阵恐慌,相信大多数人对此都有所了解。其他广泛使用的开源库和第三方库(如OpenSSL)披露严重漏洞时,也曾引发类似的恐慌。
但潜在问题并不只在于是否引入库或第三方组件,或是否基于开源框架构建应用。开发过程中的其他选择也可能造成严重后果,尤其是当这些选择导致不安全的开发实践时。
选择:以安全换速度
听说有人为了速度而牺牲安全性,从来都不足为奇。情况一直如此。一项针对504名安全专业人员的2014年McAfee调查发现:“在受访组织中,约有三分之一的运营人员承认,他们会经常禁用防火墙安全功能,试图提高网络性能。”
事实证明,开发领域也不例外。开发人员关注的不是执行速度,而是流水线速度。为了满足更及时地向市场发布应用和更新的需求,许多人承认会在开发过程中完全跳过安全环节。一项2017 年Arxan与IBM联合调查针对移动应用和物联网开发人员的调查发现,26%的受访者完全不对移动应用进行安全问题测试,近一半(48%)的受访者不测试物联网应用。69%的受访者表示,交付压力是经常跳过安全环节的原因。
今年夏天,我们在客户活动Agility上对参会者进行的调查进一步证实了这一现实。超过半数(62%)的受访者承认,其所在组织曾为追求速度而牺牲安全性。
此外,组织在如何处理已发现的漏洞方面也面临选择。Black Duck的分析显示,2018年扫描的应用中有10%仍然容易受到2014年Heartbleed漏洞的影响。由Ponemon开展的ServiceNow研究发现,令人担忧的是,57%的数据泄露受害者表示,如果安装了已有的补丁,本可以避免数据泄露。
选择会带来后果
从开发第一天到部署后阶段,围绕整个应用堆栈安全所做的每一项选择都至关重要。这些选择绝非午餐吃汉堡还是沙拉那么简单,其影响不仅会波及IT和业务,还会影响那些依赖应用提供商认真对待安全问题的客户。

我们当中很少有人敢说,自己从未收到过以“尊敬的应用用户”开头、告知个人数据已泄露的通知。但这并不意味着可以放松安全防护;恰恰相反,我们都应更加努力地保护客户的个人隐私信息。
要做到这一点,应认识到,从开发第一天起,每一次选择都是提升所开发应用安全性的机会。improve 请有意识地做出明智选择。
关于作者

Lori MacVittie是F5首席技术官办公室的杰出工程师兼首席技术布道师,在应用交付、自动化战略和基础设施领域拥有深厚的专业知识。无论是为AI智能体定义防护机制、剖析脆弱的多云架构,还是探索可扩展系统的极限,她都善于化繁为简。她在应用开发、IT架构以及网络和系统运维领域拥有30多年的行业经验。加入F5之前,她曾担任技术编辑,并因出色表现获得奖项。 MacVittie拥有计算机科学硕士学位,著述颇丰,出版作品涵盖安全、云和企业架构领域。她还热衷于桌面游戏和电子游戏,并且对奶酪有着毫不掩饰的鲜明见解。
Lori Mac Vittie 的更多博客文章相关博客文章
2023年应用策略现状:成本与复杂性是推动多云网络发展的首要因素
多云网络解决方案可在核心、云和边缘环境之间实现无缝、安全的互联,为解决当今混合IT面临的挑战提供支持,因而备受业界关注。
