AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


基于AI智能助理的软件开源组件安全检查
发布日期:2024-12-21 14:58:58 浏览次数: 1658 来源:信息化与数字化

前言  

 近年来随着开源软件的蓬勃发展,已经成为现代软件研发过程中不可或缺的一部分,同时也伴随着巨大的安全风险。

 研究表明 ,在开源组件仓库中70.5%的代码库存在安全漏洞,而这些安全漏洞风险46.6%是由其他开源项目直接、间接引进所导致的。超过96%的产业机构在其开发实现的软件应用代码库中使用开源组件。

开源软件除了引入漏洞,在使用过程中还包含人为的攻击风险。攻击者的主要手段是数据泄露、获取主机权限、拒绝服务攻击以及其它经济利益,因此,直接和间接使用开源组件的用户基数越大,开源项目对攻击者的吸引力就越大。

 软件开源组件安全包括两部分,一是引入的开源组件包中存在漏洞,二是引入的开源组件包中存在攻击者精心制作的恶意代码。

 因此,我们可以通过以下几种方式来缓解安全风险:

  • 自动化的组件漏洞检查能力:使用安全左移工具,实时分析开源组件物料清单并检测可能引入的安全风险;

  • 组件漏洞修复:弃用过老的开源组件版本,及时进行安全更新;

  • 开源组件管理:通过构建完善开源组件准入机制,以及开源威胁情报体系。

当某个组件曝出新的漏洞时,我们为了评估其影响,需要快速梳理出哪些系统使用了该组件,通过AI智能助理查询该组件使用的版本号,及所属项目和项目所有人。本文将介绍借助智能助理进行查询。    

AI智能助理  

 我们根据当前场景自定义技能,使用Dify制作工作流,Dify是一个强大的工作流编排平台,它允许用户通过图形化界面来设计和执行自动化工作流程,它的核心优势在于其灵活性和易用性,使得即使是没有编程背景的用户也能轻松创建负责的自动化任务。使用Dify编排工作量,然后将其与智能助理关联,就能通过聊天触发复杂的工作流程。

AI工作流工作流,如下图:

 通过代码执行部分,我们将公司所有项目对应的代码仓库工程,将每个工程的组件物料清单梳理出来并存库,定期更新项目和代码仓库信息,然后供智能助理查询使用。    

工作流使用  

 当前仅支持Java语言,也是目前仓库占比最大的编程语言。由于Java中groupid和artifactid才能唯一确定一个组件,因此需要查询用户同时确认这2个id。查询结果包含了组件名及版本号,仓库工程名及工程所有者。根据这部分信息可以判断是否受影响,并通知工程所有者。    

 企业微信工作台->智能助理->选择技能

   

总结  

 通过与企微智能助理交流,并定期更新参与构建的项目和代码仓库信息,每当我们收到开源组件的威胁情报时,可以快速查找我们的软件项目是否存在安全风险及影响范围,同时提升了安全自查能力。

 以前类似的长尾应用总需要去做一个系统,至少需要一个页面,对于团队的协同工作就会增加,工作的推进过程中可能会出现卡点。现在,通过IM聊天工具里打造的快捷工具,任何团队都可以方便的将自己的知识和能力共享出来。

         

 

   


53AI,企业落地大模型首选服务商

产品:场景落地咨询+大模型应用平台+行业解决方案

承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询