3 月 21 日,GitHub 推出的全新“代碼掃描”功能,面向所有享有Advanced Security(GHAS)許可的用戶,旨在查找并識別代碼中的安全漏洞及編碼錯誤。
此項新功能依靠Copilot及CodeQL(GitHub自主研發(fā)的代碼分析引擎,專司自動化安全檢測),能夠找出潛藏于代碼之中的漏洞或錯誤,并對其進行歸類和排序,以便按照優(yōu)先級進行修復。值得注意的是,“代碼掃描”功能需要占用GitHub Actions的時間資源。
“代碼掃描”功能還能預防新手引入新的問題,并支持在設(shè)定的日期和時間進行掃描,或者讓特定事件(如推送到倉庫中)觸發(fā)掃描。若AI判定代碼內(nèi)可能存在隱患,GitHub將在倉庫中發(fā)出預警,待用戶修正引發(fā)求救信號的部分后,再撤銷警告。
為了查看自己倉庫或是組織的“代碼掃描”結(jié)果,用戶可以通過web掛鉤和code scannning API進行監(jiān)控。此外,“代碼掃描”亦可與支持輸出靜態(tài)分析結(jié)果交換格式 (SARIF)數(shù)據(jù)的第三方代碼掃描工具實現(xiàn)互通。
當前,通過CodeQL進行“代碼掃描”的三種主要方式如下:
使用默認設(shè)置,迅速在倉庫上配置相關(guān)的CodeQL分析。這一步驟會自動挑選所需分析的語言、查詢套件,以及觸發(fā)掃描的條件。若需更改,也可手動調(diào)整。啟動CodeQL后,GitHubActions將執(zhí)行一系列任務(wù)以檢測代碼。
利用高級設(shè)置,向倉庫中添加CodeQL工作流。該流程將生成自定義的工作流文件,并運用github/codeql-action運行CodeQL CLI。
直接在外部CI系統(tǒng)中運行CodeQL CLI,然后將得到的結(jié)果上傳至GitHub。
GitHub表示,這一AI系統(tǒng)具備修復其所發(fā)現(xiàn)漏洞的能力,三分之二以上的漏洞無需人工干預即可自行修復。他們還承諾,代碼掃描自動修復將覆蓋其所支持語言中超過90%的問題類型,涵蓋JavaScript、Typescript、Java和Python等。
-
AI
+關(guān)注
關(guān)注
87文章
30896瀏覽量
269107 -
漏洞
+關(guān)注
關(guān)注
0文章
204瀏覽量
15377 -
GitHub
+關(guān)注
關(guān)注
3文章
471瀏覽量
16448
發(fā)布評論請先 登錄
相關(guān)推薦
評論