3 月 21 日,GitHub 推出的全新“代码扫描”功能,面向所有享有Advanced Security(GHAS)许可的用户,旨在查找并识别代码中的安全漏洞及编码错误。
此项新功能依靠Copilot及CodeQL(GitHub自主研发的代码分析引擎,专司自动化安全检测),能够找出潜藏于代码之中的漏洞或错误,并对其进行归类和排序,以便按照优先级进行修复。值得注意的是,“代码扫描”功能需要占用GitHub Actions的时间资源。
“代码扫描”功能还能预防新手引入新的问题,并支持在设定的日期和时间进行扫描,或者让特定事件(如推送到仓库中)触发扫描。若AI判定代码内可能存在隐患,GitHub将在仓库中发出预警,待用户修正引发求救信号的部分后,再撤销警告。
为了查看自己仓库或是组织的“代码扫描”结果,用户可以通过web挂钩和code scannning API进行监控。此外,“代码扫描”亦可与支持输出静态分析结果交换格式 (SARIF)数据的第三方代码扫描工具实现互通。
当前,通过CodeQL进行“代码扫描”的三种主要方式如下:
使用默认设置,迅速在仓库上配置相关的CodeQL分析。这一步骤会自动挑选所需分析的语言、查询套件,以及触发扫描的条件。若需更改,也可手动调整。启动CodeQL后,GitHubActions将执行一系列任务以检测代码。
利用高级设置,向仓库中添加CodeQL工作流。该流程将生成自定义的工作流文件,并运用github/codeql-action运行CodeQL CLI。
直接在外部CI系统中运行CodeQL CLI,然后将得到的结果上传至GitHub。
GitHub表示,这一AI系统具备修复其所发现漏洞的能力,三分之二以上的漏洞无需人工干预即可自行修复。他们还承诺,代码扫描自动修复将覆盖其所支持语言中超过90%的问题类型,涵盖JavaScript、Typescript、Java和Python等。
-
AI
+关注
关注
87文章
30072浏览量
268331 -
漏洞
+关注
关注
0文章
204浏览量
15357 -
GitHub
+关注
关注
3文章
466浏览量
16380
发布评论请先 登录
相关推荐
评论