海云安谢朝海:开发安全的智能化时代已经到来
数字化发展的策略下,AI技术已成为全世界新一轮科技革命和产业变革的关键驱动力,有效地帮助了众多企业组织”降本增效“发展。而在网络安全领域,以生成式大模型为代表的新一代AI技术,也已在网络安全运营、数据安全治理、威胁情报分析和开发安全等众多方向进行了创新尝试,并展现出巨大的应用价值。
日前,安全牛采访了海云安公司CEO谢朝海博士,就新一代AI技术在开发安全领域中的应用机会和价值进行了探讨。谢朝海表示:借助AI技术的快速发展和大范围的应用,为赋能开发人员的安全意识培养和安全能力构建,提供了新的思路和手段,开发安全的智能化时代已经到来。
北京理工大学信息安全与对抗博士研究生。曾任职公安部第三研究所,中国网通、中国赛宝实验室信息安全专家,主要研究方向为信息安全等级保护理论与技术、密码分析技术、信息安全与对抗技术、信息系统安全保障技术。在国内外核心/EI期刊发表论文10多篇,有着非常丰富的信息系统安全规划设计、测试评估、咨询监理等的项目工作经验,是“”等多项国家级重大工程验收测试评估组成员。
“安全左移”这一理念已经受到行业普遍认同,但是一些企业组织在实际落地开发安全计划的过程中任旧存在了很多困难和挑战,原因是什么?
在我看来,开发安全需要将软件开发流程和安全保障要求紧密结合,因此要么赋予研发人员安全能力,要么赋予安全运营人员开发能力,这是一个跨技术领域的应用挑战。目前,企业组织在实现开发安全时,所面临的主要困难和挑战体现在以下几个方面:
首先,很多企业组织的专业方面技术实力相对较弱,缺乏专业的安全研发人员和安全团队,导致基础性安全保障措施不完善;
其次,缺乏安全开发的意识。一些企业用户对于开发安全的重要性和风险仍然认知不足,缺乏安全意识,从而容易在软件开发过程中忽视安全问题;
此外,第三方软件供应链安全风险慢慢的升高。目前的企业用户要使用大量第三方供应商的软件、硬件和服务,但这些供应商的安全性无法完全掌控,有几率存在较大的安全风险隐患。
安全左移意味着将安全防护能力前置到应用系统的开发阶段,甚至是设计和需求阶段,因为系统开发不单单是代码编辑,还包括系统模块设计和需求设计,这些也都是开发环节的重要阶段。为了更好地实现安全左移,我们提议企业组织可以从以下三个方面入手:
1、要慢慢地增加开发团队的安全制度建设和技术培养和训练,提升整个开发团队的安全开发意识;
2、应该加强对软件供应链的安全管控,以供应商的源代码和开发流程为抓手,覆盖整个软件供应链生命周期,兼容快道(Devops)和慢道(传统瀑布式开发),形成完整的供应链安全管控闭环;
3、借助新一代的开发安全工具,提升安全团队的技术水平。特别是AI技术的蓬勃发展,正在为赋能研发人员成为安全开发人员,提供了新的技术方法和思路。
在开发安全领域,AI大模型技术有哪些创新的应用机会?是否会引发现有的开发安全技术和防护模式的变革?
我认为,在AI技术的驱动下,开发安全领域一定会涌现出很多新的产品尝试和技术变革。比如,AI大语言模型的引入将会为静态代码检测技术的发展带来了全新的可能,又或者会成为源代码检测分析等开发安全工具未来发展的重要趋势。
目前国内开发安全领域对大语言模型的应用正在起步,已然浮现了一些能够将安全、合规、质量、效能融为一体的开发者安全助手产品。未来,AI大模型技术应用于开发安全的机会将会非常多,主要包括:
1、现有开发安全工具的检测准确率普遍不高,存在着高误报率的现象。而通过AI进行代码自学习和漏洞验证,有望大幅度的降低检测结果误报率;
2、AI大型模型能解决现有开发工具的很多不足之处,实现更智能化的静态程序分析、行为分析、代码审计等功能。此外,通过AI技术对全局代码做多元化的分析,自动化生成漏洞成因解释,将会大幅度的降低安全测试人员的理解门槛;
3、利用AI自动生成漏洞修复代码,降低漏洞修复难度,实现一键式修复。研发人员只需确认修复代码,就能快速修复漏洞,提高开发效率,提升代码的安全性和质量。
我相信,未来使用AI大型模型进行安全式编程和互动一定会成为现实。这将对现有的开发模式带来革命性的冲击和颠覆,甚至有可能引发一次根本性的技术迭代。
我认为,AI大模型在开发安全领域可能带来的最大价值就是“降本增效”,大多数表现在以下方面:
1、代码自学习和漏洞验证。传统源代码检测分析工具会存在较高的误报率,而通过大语言模型对源代码检测引擎的检测结果进行自动化的误报判断,可以大大降低误报率;
2、智能化全局代码分析。AI大模型可以依据当前代码的上下文做多元化的分析,生成针对性的漏洞的形成原因和解释,以及该漏洞可能被利用方法和途径,可帮助开发者更好的理解漏洞原理以及修复方法。
3、自动生成修复代码,降低漏洞修复难度。AI大模型可结合当前漏洞代码的上下文做多元化的分析,并提供相关建议的修复方案代码,帮助开发者更快速高效的解决实际问题,整体提升安全能力和代码质量。
4、实现软件开发自治。在AI大模型的能力加持下,组织可以将源代码检测、安全合规检测、代码质量检验能力内置到开发环境中,帮助研发人员在IDE中实现即写即测即修即验证,从而真正的完成安全能力左移。
AI大模型是一种新兴技术,其在开发安全领域应用的挑战还需要行业不断探索和观察。从目前的实践尝试看,我们大家都认为主要挑战会来自以下方面:
首先,出于安全、合规考虑,企业开发环境一般不支持访问外网。代码被视为特殊的数据,需要仔细考虑基础环境的限制。AI大模型的本地化部署在大多数情况下要解决网络连接等问题。然而,许多团队可能在本地化部署大型模型的能力和计算资源方面存在限制。
其次,企业的代码具有独特性,通常与业务紧密相关,并需要遵循明确的编码规范。不同企业的代码风格、API调用逻辑等也会有所不同。将通用模型应用于特定企业或行业时,有必要进行定制化和优化,根据特定框架和业务需求来做微调和适应。
此外,AI大模型需要大量高质量的训练数据来学习和建模。在开发安全领域,获取大规模且准确标注的安全数据有几率存在困难。同时,数据隐私保护也是一个重要的考虑因素。
最后,AI大模型需要及时来更新和迁移,以适应新的安全知识和漏洞。因此,本地化部署要建立知识库,适应特定行业环境,并考虑现有开发模式的迁移。这可能涉及到重新标注和重新训练数据,以及模型的部署和集成。
作为一家专业型开发安全厂商,海云安在AI大模型应用方面做了哪些尝试?应用效果如何?
我们很关注AI大模型在开发安全领域的创新应用。目前,海云安正在将过往积累下的开发安全实践经验、SAST(源代码检测分析)和SCA(软件成分分析)技术与AI大语言模型技术进行深层次地融合,尝试实现将代码安全、合规、代码质量、自动补全代码、AI降低误报、AI一键修复代码、AI智能交互式问答对话等场景融于一体,帮助开发者和企业在安全、合规、质量、效能四个方面实现全面提升。
我们看到,行业中已经陆续出现了一些结合AI大语言模型技术的智能助手产品,但主要聚焦在代码解释、代码自动补齐等研发效能方面的辅助。对于海云安而言,我们大家都希望能够将软件开发过程中的安全、合规、质量、效能融为一体,为开发者提供智能化的安全助手。目前,我们已在广东、四川、北京等多地进行了一些推广和应用尝试。
目前,国内开发安全领域对大语言模型的应用仍然相对较少。垂直领域大模型或者专业小模型,将是我们持续关注和研究突破的新方向。具体而言,我认为未来新一代的开发安全技术有几个发展趋势需要关注:
第一,继续左移,从测试到编码、设计和需求,将安全考虑融入开发的所有的环节。从测试察觉缺陷到处理问题,包括软件信创和可信开源组件库的安全性等方面,确保软件制品中没有已知的漏洞或后门;
第二,自动化的安全需求分析,利用AI技术来分析和识别安全需求。同时,开发设计中的威胁建模,也将可使用安全编程技术进行自助式互动;
第三,构建可信的开发组件技术库,以应对开源软件断供的风险和增强系统的安全性;
第四,建立安全编程的培训机制,提升研发人员的安全编程能力,将关注点从仅关注软件开发结果转变为赋能开发人员。目前专门干网络安全的人员数量大约在30万到50万之间,而软件研发人员的数量大约在800万到1,000万之间。我们该积极地将软件研发人员同时转变为安全人员,增强他们在安全方面的专业相关知识和技能,从而迅速提升我国企业组织的网络安全技术能力水平。