所谓软件安全债务,通常指修复时间延误超过一年的漏洞,根据Veracode最新发布的软件安全报告,42%的应用程序和71%的组织中普遍存在软件安全债务,而AI生成代码的激增将导致安全债务问题恶化并对软件供应链构成重大风险。
更令人担忧的是,46%的组织持续存在高危漏洞,这些漏洞构成“关键”安全债务,使企业在机密性、完整性和可用性方面面临严重风险。
报告称,63%的应用程序存在第一方代码漏洞,而70%包含通过第三方库引入的第三方代码漏洞。这凸显了在整个软件开发生命周期中测试这两种类型的代码的重要性。修复率也因漏洞类型而异-修复第三方漏洞的时间要长50%,已知漏洞中只有一半在11个月后修复,而第一方漏洞则为7个月。
留神AI“屎山”
然而,也有好消息:应用程序中的高危漏洞数量自2016年以来减少了一半,这表明软件安全实践取得了进步,并且修复速度对关键安全债务产生了重大影响。
报告显示,修复漏洞最快的开发团队将关键安全债务减少了75%——应用程序高危漏洞从22.4%降低到略高于5%。此外,这些快速行动的团队让关键安全债务出现在其应用程序中的可能性要低四倍。
Veracode首席研究官Chris Eng说:“虽然安全状况有所改善,但这些发现提醒组织必须正面解决其安全债务问题。通过优先考虑漏洞修复、关注第三方代码安全以及采用高效的开发实践,组织可以显著降低其安全债务并全面提升软件整体安全状态。”
在人工智能迅速改变软件开发的时代,该报告强调了一个令人不安的趋势。Eng表示:“尽管人工智能为软件开发带来了速度和效率,但它并不一定会产生安全的代码,GitHubCopilot生成的代码中有36%存在安全漏洞。”
这种AI生成的不安全代码激增对组织和软件供应链构成了重大风险,导致随着时间的推移安全债务不断累积。
AI有望打破“安全债”困局
该研究还发现,企业安全债务高企的主要原因是开发团队的修复能力有限,只有64%的应用程序团队具有消除关键安全债务的修复能力。
事实上,只有20%的应用程序平均每月修复率超过10%的安全漏洞。这表明,即使团队的修复能力足够,他们也不会优先考虑关键漏洞。
尽管如此,应用安全取得的进步还是令人欣慰的。所有漏洞中只有3%属于高风险漏洞。开发团队只需优先考虑这3%的漏洞,就可以事半功倍地大幅降低风险。
Eng指出:“人工智能有望帮助企业摆脱沉重的软件安全债务问题,使组织能够提高漏洞修复效率,更轻松地解决长期积累的安全债务以及新出现的漏洞。”