如果软件公司要对漏洞负责,具体会如何运作?——《华尔街日报》
Scott Shackelford
软件公司可能很快将被要求采取"合理"预防措施来保障产品安全。然而,这一要求的实际含义仍悬而未决。图片来源:Getty Images/iStockphoto斯科特·沙克尔福德是印第安纳大学凯莱商学院商法与伦理学教授,同时担任奥斯特罗姆研讨会和应用网络安全研究中心的执行主任。
美国正在就软件开发商是否应对导致数据泄露的缺陷代码承担更多责任展开辩论。今年早些时候,拜登政府发布了国家网络安全战略,呼吁国会对因产品漏洞造成数据损失和危害的软件公司追究责任。
即便你认同市场对将存在漏洞的产品或服务引入数字生态系统的公司惩罚不足,这仍留下一个难题:责任应以何种形式体现?
根据拜登政府概述的方案,软件公司应采取"合理预防措施确保软件安全",若"未能履行对消费者、企业或关键基础设施提供商应尽的注意义务",则需承担责任。
首先,如何定义“合理”?
政府建议美国制定一个不断发展的安全港框架,如果软件公司投资于“当前安全的软件开发最佳实践”,如NIST安全软件开发框架,其责任将受到限制。
这种方法可以借鉴越来越多州的努力。例如,在俄亥俄州、康涅狄格州和犹他州,受保护的公司如果能够证明他们投资于公认的网络安全标准和框架之一,那么在数据泄露后,他们的责任将最小化。这些实验的经验可以用来帮助制定一个专注于软件公司的联邦安全港制度。
在最近的一篇文章中,我和我的合著者反对在所有行业和部门采用单一的、普遍的合理注意标准,因为这种方法会将本地面包店与美国银行的标准相提并论,尽管这些企业面临的威胁环境和应对资源大不相同。相反,我们支持一种滑动比例的方法,对在高风险场景中运营的软件公司和某些关键基础设施提供商提出更严格的要求。
另一个选择是效仿欧洲的做法,将产品责任法扩展到涵盖软件漏洞。不过这种方法也有缺点:科技公司会出于自身利益,只发布最安全的代码。但没有代码是100%安全的。这种做法可能会减缓创新速度,并可能成为自由和开源软件的丧钟。
那么,软件补丁可用但最终用户未部署的情况又该如何处理?重要的是要记住,许多数据泄露是数据处理者的过错,而非开发者的责任。在许多情况下,问题并不一定是产品设计,而是使用产品的组织缺乏有效的治理和监督。很多时候,组织仍然忽视了基本措施,比如指定网络安全负责人和更新事件响应计划。
这就是为什么拜登政府呼吁与国会合作,为关键基础设施提供商“定义最低预期的网络安全实践或成果”,可能比定义软件公司的责任更为重要。应对这一挑战的一种方法可能是创建美国版的澳大利亚“Essential 8”,这是一份旨在保护企业免受网络攻击的缓解策略清单。清单包括限制关键系统的管理权限和启用多因素认证等策略。
没有任何单一的清单或框架能够保护高风险组织免受其面临的各种网络威胁。但是,将责任强加于开发者以修复漏洞代码,并明确所有关键基础设施运营商的网络安全操作要求,将大有帮助。
请致信斯科特·沙克尔福德,邮箱:[email protected]。