软件公司是否应对安全漏洞负责?——《华尔街日报》
wsj
拜登政府呼吁软件公司承担更多责任,确保其产品不会被黑客入侵。插图:乔恩·克劳斯软件行业是否需要采取更多措施来保护其产品免受黑客攻击?
拜登政府认为是这样。作为3月份发布的国家网络安全战略的一部分,它呼吁软件公司承担更多责任,确保其产品不会被黑客入侵,并表示将支持立法,如果它们没有采取合理措施保护其产品,将追究其责任。
该战略的支持者表示,软件公司在经济上有动力快速将产品推向市场,而不是优先考虑安全性,因此仅靠市场力量并不总是足以保护关键系统的安全。他们说,大多数软件漏洞在产品上市后才会被发现,这使得消费者为糟糕的网络安全买单。
反对者反驳说,对软件制造商因产品不安全而追究责任对防止网络攻击几乎没有作用,而且可能弊大于利。他们说,行业只会将这些成本转嫁给客户,并放慢创新速度以保护自己。
2021年6月至2023年2月担任美国国家网络总监的克里斯·英格利斯提出了将更多网络安全责任转移到软件公司身上的理由。信息技术与创新基金会副总裁兼ITIF数据创新中心主任丹尼尔·卡斯特罗则对此提出反对意见。
是的:遵循交通运输业模式
作者:克里斯·英格利斯
克里斯·英格利斯插图:华尔街日报试想一下,如果购买和操作汽车遵循我们目前购买日常生活必需的计算机和软件的模式。车辆安全气囊、安全带和防抱死制动系统等故障的责任将落在消费者而非汽车制造商身上,更不用说设计和运营安全可靠的高速公路运输系统的责任了。
这当然是一个荒谬的想法,但它突显了当今网络环境中默认的荒谬做法,即终端用户比开发和制造产品的行业承担更多的网络安全负担。随着技术在我们的日常生活中变得越来越重要,网络攻击成为一个持续且不断增长的威胁,我们不能再允许那些构建我们数字基础的人将安全和可靠性视为可有可无的优先事项。
遵循在交通运输系统中成功实现物理安全的模式,美国于三月份发布的《国家网络安全战略》旨在通过激励和责任分配相结合的方式,在网络空间中“重新平衡责任”,将其转移给最有能力和条件大规模承担责任的开发者和制造商。
尽管事故频发,美国软件行业并未受到任何专门指导消费技术安全的法律约束。虽然一些消费者保护法适用,但它们并未针对软件带来的独特挑战进行调整,其执行机构也不专注于安全和保障。这导致科技公司在应对安全漏洞时反应迟缓,发布存在重大缺陷的产品,或未能就与其产品相关的风险提供充分警告。
事实上,一种将创新和上市速度置于安全和保障之上的商业模式,催生了一个打地鼠式的系统——大部分发现和修复安全漏洞的努力都发生在软件发布后,此时客户已暴露在风险中。试想如果汽车制造商几乎不进行安全工程设计,却承诺修复用户发现的所有危险缺陷会怎样。
就基础安全机制而言,市场力量仍是实现有效敏捷创新的首要途径,但当市场失灵时,政府需要介入。一种方法是施加正式的"注意义务"责任——类似于汽车行业的规定——强制软件开发商在开发和更新产品时采用某些基本的安全意识实践。
任何软件责任解决方案都必须考虑技术行业的独特性,在这个领域,创新仍是提升性能的关键资产。因此,责任制度应侧重于编纂和实施安全代码开发的最佳实践,同时避免一刀切的要求,以免对不同产品产生差异化影响。
重要的是,监管和责任制度必须充分听取承担主体的私营部门意见,并在各潜在监管机构间协调统一,以确保在施加最轻负担的同时实现预期效益。此类制度还需通过确保履行注意义务可作为人为错误或产品误用导致漏洞的有效抗辩,来保护开发者和制造商。
有人认为,引入任何安全要求都会延长开发时间并增加新软件上市的相关成本,从而导致所有人的零售价格上涨。这种看法是短视的。更安全的汽车确实成本更高——但若考虑到避免了事故和故障带来的损失,实际反而节省了开支。更安全的软件同样如此——最终,它带来的安全负担减轻所节省的成本远超其投入。
关于软件责任会抑制创新、对企业开发新产品或功能的意愿产生寒蝉效应的担忧也被夸大了。该行业已反复证明,它完全能在遵守监管要求的同时实现震撼社会的创新。此外,政府可以对以创新和实验为关键增长动力的新兴技术或小型企业给予豁免。
随着软件更深地融入我们的生活,并扩散到太空和偏远乡村等更遥远的地方,网络攻击的潜在影响也将同等扩大。确立基本注意义务虽不能杜绝所有缺陷,但将构建一个更可靠、更负责任的技术市场。
克里斯·英格利斯于2021年6月至2023年2月担任美国首任参议院确认的国家网络总监。 联系方式:[email protected]。
反对观点:软件公司只是替罪羊
丹尼尔·卡斯特罗
丹尼尔·卡斯特罗插图:华尔街日报每当发生数据泄露、勒索软件攻击或其他网络安全事件时,人们总想找人担责。最明显的罪魁祸首是攻击者——通常是网络罪犯或国家支持的黑客。但由于他们往往能逍遥法外,人们更容易将矛头指向身边。
软件公司就是替罪羊之一。让它们为网络安全漏洞担责具有某种直观吸引力。将安全漏洞造成的损失强加给它们,理论上能增强其主动修复问题的动力。但这默认了资金投入不足是软件存在安全隐患的原因。
事实上,软件公司已在网络安全领域投入巨资。例如微软表示,2015至2020年间其每年网络安全支出达10亿美元每年网络安全支出达10亿美元,2021年更承诺五年内将投入提升四倍至200亿美元。此外,大型软件公司已花费数千万美元运营漏洞赏金计划,奖励安全研究人员指出可能被黑客利用的软件缺陷。
尽管投入巨大,企业仍要定期发现和修补安全漏洞,因为现代软件复杂得超乎想象。开发者不仅要编写成千上万行代码,其应用程序还需与涉及数百万行代码的外部软件库及操作系统交互。随着开发者不断更新,这些代码库持续变化,旧漏洞刚修复,新漏洞又会出现。
然而批评者认为,软件公司应像汽车制造商那样为缺陷产品担责。但这种类比并不完全恰当。汽车需要配备有效的门锁,但如果窃贼找到方法破门盗窃贵重物品,汽车厂商并不担责。此外,尽管有产品责任法约束,汽车制造商仍会因车辆软件缺陷频繁发起召回——因为编写零错误代码本就不易。事实上,软件安全之所以困难,在于攻击者只需找到一个漏洞即可,而产品防护方却必须堵住所有漏洞。
人为错误导致了多数数据泄露事件。人非圣贤,加重责任并不能杜绝失误。若真能如此,让每个点击钓鱼邮件或使用弱密码的人承担刑责,早该解决诸多网络安全问题了。同理,要求程序员编写完美代码既不现实,也会打击人们从事网络安全的积极性。
这并非要为企业的安全疏漏开脱。但当前存在一种误解,认为企业不会因安全防护不力被追责。事实恰恰相反。软件公司的安全漏洞会招致巨额经济损失。SolarWinds就是例证:攻击者利用其网络监控软件漏洞入侵后,该公司不仅声誉受损,销售额与股价也双双暴跌。
监管机构还可以针对企业的安全漏洞提起诉讼。美国联邦贸易委员会已对D-Link、TRENDnet和华硕的物联网设备软件安全问题提起了诉讼。近期,司法部启动了民事网络欺诈倡议,旨在向政府出售不安全技术的企业追讨数百万美元的和解金。
将责任强加于软件公司可能弊大于利。企业会将这些成本转嫁给客户,导致所有人承担更高费用却无法确保安全性提升。面对更高的责任风险,企业将倾向于减少创新,例如通过削减功能来缩小代码库规模、延长软件开发周期。这种创新放缓也会波及多因素认证和抗量子加密等涉及复杂代码的高级安全功能。企业保护客户的动机会减弱,而自我保护意识会增强。
虽然没有万全之策,但政府与行业可以通过多种有效途径携手提升网络安全。加强对软件开发人员、系统管理员及其他技术人员的网络安全培训,是构建安全软件、正确配置系统及修复漏洞的必要条件。提升软件供应链安全性——例如包含列出应用程序中所有数字组件的软件物料清单——将帮助安全专家快速追踪漏洞。政府与行业应共同审核和完善广泛使用的开源软件安全性,同时开发并测试人工智能工具以识别代码中的安全漏洞。
虽然让企业对不安全软件承担责任在理论上听起来不错,但在实践中难以奏效。
丹尼尔·卡斯特罗(Daniel Castro)是信息技术与创新基金会副总裁兼数据创新中心主任。联系方式:[email protected]。
刊载于2023年6月7日印刷版,标题为《软件公司是否该为安全漏洞担责?》。