ニュース

GitHub、脆弱性の検出と修正提案を行う「GitHub Copilot Autofix」を発表

 米GitHubは現地時間14日、ソフトウェア開発者やセキュリティチームが新たな脆弱性をソースコードに持ち込むことなく、既存のセキュリティリスクを迅速かつ確実に修正できる新機能「GitHub Copilot Autofix」を発表した。

 GitHubでは、開発者は高速にソフトウェアをリリースし、新機能を早期かつ頻繁に提供しているが、セキュアなソースコードを書くことに最善を尽くしても、ソフトウェアの脆弱性が意図せず開発中に入り込んでしまうことが、セキュリティ侵害の主な原因となっていると説明。さらに、多くの開発者にとって、セキュリティの必須要件は理解しづらく、実装することが難しいため、セキュリティの観点から望ましい形になることが困難となっており、その結果、より多くの脆弱性が解決されないままリリースされてしまう状況に陥っていると指摘する。

 また、静的解析のツールは脆弱性を検出できるが、根本的な問題には対処できず、脆弱性の修復にはセキュリティの専門知識と時間が必要となるが、この貴重な2つの要素は決定的に不足しており、脆弱性を見つけることが問題ではなく、脆弱性を修正する行為が問題であるとしている。

 こうした状況を解決するための新たなアプローチとして、セキュリティ機能を拡張させるGitHub Advanced Security(GHAS)ライセンスに、AIがコード修正を支援する機能となるGitHub Copilot Autofixを追加し、一般提供(GA)を開始した。

 Copilot Autofixは、コードに含まれる脆弱性を分析し、その重要性を説明する。加えて、脆弱性を発見するとすぐに開発者が修正できるよう、コードの提案を行う。

 開発者は、Pull RequestでCopilot Autofixを使用し、コードから新たな脆弱性を排除し、既存の脆弱性を修正することで、既存のセキュリティ負債を削減できる。SQLインジェクションやクロスサイトスクリプティングなど、数十種類のコード脆弱性に対して修正が生成できるため、開発者はこれらの修正提案をPull Request内で却下、編集、またはコミットできる。

Pull RequestでのCopilot Autofix

 パブリックベータ版のテストでは、開発者がコードの脆弱性を修正する際に、手作業で修正するよりも3倍以上速く修正できたという。

 GitHubでは、GitHub Copilot WorkspaceからGHASに至るまで、GitHubは単にAIで支援するだけではなく、生産性やイノベーションからセキュリティ、リスク軽減に至るまで、ビジネスを変革する未来を目指していると説明。Copilot Autofixにより、“Found means fixed”(脆弱性が見つかることが修正されたことと同じ意味を持つ)というビジョンに一歩近づいたとしている。